Не думаю что из названия всё понятно так что ближе в сути
Ну дк вот, я создаю карту в варкрафте, на ней надо героми убивать крипов по волнам.
Предположим что идёт первая волна. И только если всех крипов на этой волне убили начинается следующая волна. Как это сделать? (Чтобы только после убийства всех на 1 волне начиналась 2 волна.)

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

Самый простой вариант.
Событие: Количество потребляемой пищи игрока крипов становится 0.
Действие: Начать новую волну.

Посмотри карту Лазурные Башни, там так сделано.
`
ОЖИДАНИЕ РЕКЛАМЫ...
1
28
5 лет назад
Отредактирован PT153
1
Самый простой вариант.
Событие: Количество потребляемой пищи игрока крипов становится 0.
Действие: Начать новую волну.

Посмотри карту Лазурные Башни, там так сделано.
Принятый ответ
0
1
5 лет назад
0
PT153:
Самый простой вариант.
Событие: Количество потребляемой пищи игрока крипов становится 0.
Действие: Начать новую волну.

Посмотри карту Лазурные Башни, там так сделано.
Спасибо, помог.
0
22
5 лет назад
0
Очень просто
Мой вариант такой
Есть определённый набор игроков (или один игрок), войска которых и входят в волну (допустим, юниты красного игрока). Ничьи другие юниты этим игрокам принадлежать не должны, чтобы багов не было.
Делаешь триггер, который периодически проверяет, остались ли ещё на карте войска атакующего игрока. Если их не осталось - создаётся следующая волна и идёт в атаку.
Условно, у тебя 50 волн
1 триггер - создание 1-й волны
2 триггер - проверяет, жива ли 1 волна. Если не жива, запускает вторую волну и включает первый триггер, выключает этот
3 триггер - проверяет, жива ли 2 волна. Если не жива, запускает третью волну и включает четвёртый триггер, выключает этот
...
51-й триггер - проверяет, жива ли 50-я волна. Если не жива, завершает игру
Заметь, из всего этого добра изначально включены лишь 1 и 2 триггеры. Затем, постепенно, текущая проверка выключается, а следующая включается. Это важно, чтобы не тормозить игру и не перегружать её бесполезными процессами, которые в данную секунду ни на что не влияют (ну и баги это отбрасывает).
П.С. Может это можно сделать короче, может можно сделать на JASS (в нём не разбираюсь совсем, извини). Но ты про методы и оптимизацию ничего не говорил, так что мой способ вполне подохдит (во всяком случае, его бы я и использовал в своей карте, если бы подобное что-то делал).
0
28
5 лет назад
0
Условно, у тебя 50 волн
1 триггер - создание 1-й волны
2 триггер - проверяет, жива ли 1 волна. Если не жива, запускает вторую волну и включает первый триггер, выключает этот
3 триггер - проверяет, жива ли 2 волна. Если не жива, запускает третью волну и включает четвёртый триггер, выключает этот
...
51-й триггер - проверяет, жива ли 50-я волна. Если не жива, завершает игру
Это всё можно сделать 1-3 триггерами, опять-таки, смотрите Лазурные Башни.
2
17
5 лет назад
2
Можно через группы юнитов
Wave = 20 мобов, 15 убил игрок - они удалились оттуда, 5 прошли и тоже удалились.
Как юнитов в группе станет 0 - пускать следующую. Можно добавить таймер дебага в 40 сек например, чтобы автоматом запускать следующую волну, ибо очень редко, но и группы багаются, и юниты не удаляются из неё.
Забагалось - разрушить старую группу, создать новую и дальше работать с ней.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.