Добавлен NulliFLie
Может ли кто-нибудь неравнодушный пояснить, как его применять?
Я хотел бы создать таймер, привязанный к Custom value юнита.
С Jass не знаком совсем, делаю всё на триггерах.
Я хотел бы создать таймер, привязанный к Custom value юнита.
С Jass не знаком совсем, делаю всё на триггерах.
Вопрос по применению сводится к двум более простым:
- Как мне задать подобный таймер по мне известному числу?
- Как мне обратиться к такому таймеру по этому же числу?
Сам Timer Exploit:
Принятый ответ
8gabriel8:
Событие: Юнит Приводит способность в действие
Условие: (Ability being cast) = Кормление
Действие: Боевая единица - Change owner (Target of ability being cast) to (Owner of (Casting unit))
Обратный отсчёт - Start timer[(Playernumber (Target of ability being cast))] Однократный на 60 секунд.
зачем все эти заморочки через cusom value просто пишешьНаверное, про массивы надо пояснить. Ставя галку массив при создании переменной и указывая его размерность, ты словно говоришь игре: «Создай переменных этого типа столько-то штук.» Только переменных будет на одну больше, чем указано в размерности, так как у компьютера счёт идёт от 0. Например, массив назван timer, размерность его указана 3, это четыре переменных: timer[0]; timer[1]; timer[2] и timer[3]. Можно указывать в триггере custom value юнита, чтобы обращение сразу шло к нужному таймеру.
Есть пара важных замечаний по размерности, во-первых, размер массива не может быть больше 8191 на старых патчах вроде 1.26 и 32767 на новых, начиная с 1.29 вроде, во-вторых, размерность массива критически важна для таймеров, а для типов логическая, целочисленная, реальная, боевая единица, отряд и прочих можно задать размерность 1 и указывать любое число в массиве, не превышая предел, такая переменная нормально будет работать. Все типы переменных на размерность не проверял, просто заметил, что массив таймеров выше размерности не работает, потому упомянул.
Не знаю, как у тебя сделано, потому предположу, что есть способность кормления многострадального, которая переводит его под контроль на минуту. Триггер будет выглядеть так:
Событие: Юнит Приводит способность в действие
Условие: (Ability being cast) = Кормление
Действие: Боевая единица - Change owner (Target of ability being cast) to (Owner of (Casting unit))
Обратный отсчёт - Start timer[(Custom value of (Target of ability being cast))] Однократный на 60 секунд.
Событие: Юнит Приводит способность в действие
Условие: (Ability being cast) = Кормление
Действие: Боевая единица - Change owner (Target of ability being cast) to (Owner of (Casting unit))
Обратный отсчёт - Start timer[(Playernumber (Target of ability being cast))] Однократный на 60 секунд.
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Записываете на охотников время когда вернуть контроль ""SECOND = SECOND + 120" например.
Проходите циклом и сверяете. Делается одним таймером/триггером на гуй-мй.
Идея крутая, но она не подходит именно по этой причине - по факту "120" может меняться в процессе игры. Соответственно в этом случае придётся сделать 12 переменных. Что, конечно, менее затратно, но всё равно совсем не эстетично)
Было бы очень здорово будучи новичком получить такой опыт.
Есть пара важных замечаний по размерности, во-первых, размер массива не может быть больше 8191 на старых патчах вроде 1.26 и 32767 на новых, начиная с 1.29 вроде, во-вторых, размерность массива критически важна для таймеров, а для типов логическая, целочисленная, реальная, боевая единица, отряд и прочих можно задать размерность 1 и указывать любое число в массиве, не превышая предел, такая переменная нормально будет работать. Все типы переменных на размерность не проверял, просто заметил, что массив таймеров выше размерности не работает, потому упомянул.
Событие: Юнит Приводит способность в действие
Условие: (Ability being cast) = Кормление
Действие: Боевая единица - Change owner (Target of ability being cast) to (Owner of (Casting unit))
Обратный отсчёт - Start timer[(Custom value of (Target of ability being cast))] Однократный на 60 секунд.
Событие: Юнит Приводит способность в действие
Условие: (Ability being cast) = Кормление
Действие: Боевая единица - Change owner (Target of ability being cast) to (Owner of (Casting unit))
Обратный отсчёт - Start timer[(Playernumber (Target of ability being cast))] Однократный на 60 секунд.