Проблемка с циклом.Смысл в том,что при задействовании триггера,появляются не 2 юнита,а около десятка.Как исправить?

Принятый ответ

TAHK90:
убери действие for integer B
заведи себе переменную типа integer с именем count
далее выбираешь всех юнитов в группе
с каждым действием count увеличивай на 1
делаешь нужные действия если count меньше 2
если равен или больше - устаналивай на 0 и очищай группу
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
28
8 лет назад
Отредактирован nvc123
0
TAHK90, для начала ты должен определится с тем что конкретно должен делать твой триггер
поверь как только ты нормально поставишь задачу то с лёгкостью сможешь пофиксить триггер
0
24
8 лет назад
0
TAHK90, "выбрать все юниты" - это такой же цикл как и "for each integer a 1 to 2 ..."
опиши способность, тогда поможем.
0
20
8 лет назад
0
а на кой черт тебе тут цикл вообще? выноси эти действия в полоску действий с отрядом и живи счастливо
и да, у тебя утекают точки
0
8
8 лет назад
0
Melissa:
TAHK90, "выбрать все юниты" - это такой же цикл как и "for each integer a 1 to 2 ..."
опиши способность, тогда поможем.
Юнит использует способность(АоЕ,тот же буран) и 2 юнита,попавших в область действия,меняют владельца на того,чей юнит использовал способность.
nvc123:
TAHK90, для начала ты должен определится с тем что конкретно должен делать твой триггер
поверь как только ты нормально поставишь задачу то с лёгкостью сможешь пофиксить триггер
Я уже это сделал,и триггер работал хорошо,я выделял всех юнитов и менял ихнего владельца через триггеры,с определёнными условиями,но нашёл недочёт и поэтому нужно сделать так,что-бы изменение юнита было через способность,а не триггерной командой.
ssbbssc:
а на кой черт тебе тут цикл вообще? выноси эти действия в полоску действий с отрядом и живи счастливо
и да, у тебя утекают точки
Про утечки знаю,я щас пытаюсь добиться того,что бы сам триггер работал.
0
28
8 лет назад
0
TAHK90, давай подумаем над тем что ты написал
тебе нужно перебрать всех юнитов в области и выбрать из них 2 юнита
после чего надо делать действия с этими 2
тут тебе поможет функция "первый юнит из группы"
берём группу с живыми врагами(нам ведь враги нужны) в области бурана
далее идёт цикл от 1 до 2
в цикле {
заносим в переменную first первого юнита в этой группе
проверяем что он существует (не равен null)
если он не существует значит наша группу пуста и триггер завершает выполнение
иначе делаем для юнита first нужные действия (создаём дамми и прочее)
удаляем юнита first из группы
} конец цикла
0
8
8 лет назад
0
nvc123:
TAHK90, давай подумаем над тем что ты написал
тебе нужно перебрать всех юнитов в области и выбрать из них 2 юнита
после чего надо делать действия с этими 2
тут тебе поможет функция "первый юнит из группы"
берём группу с живыми врагами(нам ведь враги нужны) в области бурана
далее идёт цикл от 1 до 2
в цикле {
заносим в переменную first первого юнита в этой группе
проверяем что он существует (не равен null)
если он не существует значит наша группу пуста и триггер завершает выполнение
иначе делаем для юнита first нужные действия (создаём дамми и прочее)
удаляем юнита first из группы
} конец цикла
Всё равно создаётся по 10 чтук.
0
20
8 лет назад
Отредактирован ssbbssc
0
TAHK90:
убери действие for integer B
заведи себе переменную типа integer с именем count
далее выбираешь всех юнитов в группе
с каждым действием count увеличивай на 1
делаешь нужные действия если count меньше 2
если равен или больше - устаналивай на 0 и очищай группу
Принятый ответ
0
28
8 лет назад
0
TAHK90, значит ты криво сделал
сделай всё точно по описанному мной алгоритму и всё будет нормально работать
0
8
8 лет назад
0
Ребят, я видимо отупел,но я не могу это сделать...
Всё спасибо,разобрался.
0
20
8 лет назад
0
Модераторы, измените лучший ответ...
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.