XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > StarCraft (только чтение)> Галактическая академия
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
AlexDiz

offline
Опыт: 378
Активность:
Вопрос про циклы
Всем привет!
Есть периодический цикл от 1 до 10 с шагом 1.
Каждый шаг создается юнит в случайной точке карты.
Но если расстояние между созданным юнитом и текущей позицией героя меньше 25 ярдов/метров, то юнит НЕ появляется. (удаляется из игры)
Вопрос: Как заставить цикл вновь повторить свой шаг на создание, если юнит НЕ появился?? Другими словами я хочу чтобы данный цикл всегда создавал именно 10 юнитов, каждый из которых будет более чем на 25 ед. отдалён от героя.
Спасибо
Старый 19.02.2014, 19:07
Харгард
Epic
offline
Опыт: 7,829
Активность:
Ну так каждый цикл работает с некой переменной, изменяющейся при каждой итерации.
Вот и уменьшай эту переменную в теле цикла, если юнит слишком близко.
Старый 19.02.2014, 22:10
Spasmolytic

offline
Опыт: 385
Активность:
А еще можно использовать цикл "Пока". Пока расстояние между созданным юнитом и заданным меньше необходимого, удалять юнита и создавать сызнова.
General - Pick each integer from 0 to 9, and do (Actions)
Actions
Unit - Create 1 Marine for player 1 at (Random point in (Playable map area)) using default facing (No Options)
General - While (Conditions) are true, do (Actions)
Conditions
(Distance between (Position of (Last created unit)) and (Position of Gabriel Tosh (Unit) [32.05, 26.09])) < 25.0
Actions
Unit - Remove (Last created unit) from the game
Unit - Create 1 Marine for player 1 at (Random point in (Playable map area)) using default facing (No Options)
Старый 19.02.2014, 22:19

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 15:30.