Всем привет хочу еще раз сказать спасибо Bergi_Bear за то что помог настроить wasd код, хочу узнать как обращаться к индексу анимации из триггера в код.
if GetUnitTypeId(hero) == HeroID then
            -- Наш герой
            IndexAnimationWalk = 1
Допустим берет герой предмет ружье, нужно изменить индекс анимации только не понятно как это провернуть.

выдернутый код из контекста, ну IndexAnimationWalk это глобалка объявленная ранее
Чтобы её менять пиши в момент времени где тебе надо
IndexAnimationWalk =число
а отсюда вообще можешь убрать
`
ОЖИДАНИЕ РЕКЛАМЫ...
33
Чтобы узнать индексы есть простейшая команда и она кстати в том примере, что я скинул
PlayAnimationFromChat можно сделать подобную. Суть чтобы юнит воспроизводил индекс анимации, которую игрок ввёл в чат
возьми да введи цифры от 1 до 15 и увидишь, что юнит воспроизводит анимацию по номеру
Кстати, есть продолжение

Ну и карта
Загруженные файлы
1
Bergi_Bear, я кстати смог убрать приказы с панели чтоб они не юзались, хз мб случайно получилось можно код использовать в шутанах.

Bergi_Bear, Я походу понял щас попробую.
33
ты до сих пор не понял откуда этот код и боёвка? где сделано уже во много раз больше чем в любом шутане, и есть вообще оружие дальнего боя
1
Bergi_Bear, пока не все понятно....

Bergi_Bear, блин всё-таки не понял как изменить индекс анимации во время игры.
33
После блуд омена от меня ещё пару карт вышло, вот одна из них
1
Bergi_Bear, она крашится когда в игре еше запускаю версия мб не та хотя написано последняя.

Вот моя жалкая попытка убрал то что мне не нужно.
Загруженные файлы
33
Ну ладно, разобрался как индексы проверять и молодец, это уже офтоп пошел. Ещё можно в ретере смотреть, там порядок анимаций соответствует индексам. Может даже будет проще
1
Bergi_Bear, индексы нашел а как менять их во время игры непонятно.
33
Что ты конкретно не поймёшь в этом вопросе?
Есть функция SetUnitAnimationByIndex(unit, index)
индекс это числовая переменная, можешь менять её на лету, допустим вот 4 это walk, а 5 stand
Можешь хоть методом тыка.
Я тебе сделал уже и атаку и движение, открыл твою карту, а там у тебя ну на wasd ходить а анимацию ты сломал
1
Bergi_Bear, сделать индекс анимации динамическим чтоб во время игры его можно было изменить.
1
if GetUnitTypeId(hero) == HeroID then
            -- Наш герой
            IndexAnimationWalk = 12 - как сделать динамическим чтоб можно было через кастом скрипт из триггера поменять. 
            --print(IndexAnimationWalk)
            if data.CurrentWeaponType == "shield" and data.PressSpin then
                IndexAnimationWalk = 24
            end
            local r = { 4, 5 }
            IndexAnimationAttack = r[GetRandomInt(1, 2)] -- 2 для долгой атаки 8 для сплеша 3  атака рубки дерева
        end
33
выдернутый код из контекста, ну IndexAnimationWalk это глобалка объявленная ранее
Чтобы её менять пиши в момент времени где тебе надо
IndexAnimationWalk =число
а отсюда вообще можешь убрать
Принятый ответ
1
Bergi_Bear, я число убирал в vscode ошибку пишет или это ничего страшного

Bergi_Bear, я кустом скриптом пробовал не работает, пока вариантов у меня нет или отдельный код писать.

Bergi_Bear, все получилось нужно было просто вырезать из кода емае

Bergi_Bear, осталось еще animation tag.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.