Что тут не так, подскажите?
Я уже как только не пытался сделать телепортауию через чат. Пишешь команду "-tp" и герой должен телепортироваться в центр арены, это сократит время перехода до точки. У меня почему-то не работает. Я и так пытался, и так. Может где ошибка, но я ещё не вижу

Делай мвссив с индексом равным номеру игрока (чтоб не запутаться) При событии ставь условие на триггеринг игрока. Если триггенинг игрок = красный то перекидывай соотв. юнита по индексу. напр MyHero[1]. Используй if then else. Все вместится в 1 триггер с кол-вом событий равным кол-ву игроков.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
17
SomeFire, выбрать юнита не могу, так как они нейтрально-пассивные, только при выборе меняют цвет игрока(то есть - этот юнит удаляется и создаётся другой точно такой же).
Да и даже если делать через переменные, то героев 12 штук. Поэтому мне нужно через юнитов игрока, ибо героя брать можно одного. Но так тоже не телепортирует. И это то же самое что и просто выбрать героя из выбора

Получилось через переменные, но как я и говорил, это то же самое что и выбор юнита. Юнит может быть любой, а не только именно выбранный
Тогда придётся для каждого игрока делать огромный триггер, и не факт что будет нормально работать, может телепортировать и героя союзника, если что-то пойдет не так.
18
Создавая юнита присваивай ему переменную Напр.Set MyHero = last created unit
где MyHero созданная тобой переменная типа "боевая единица". Далее обращаешься к своему герою через эту переменную. И что мешает использовать массив?
17
dave_wwid, так телепортирует последнего созданного юнита. Я сейчас проверил, и телепортировался юнит синего, а не красного
Сделал вот как. Где gg это переменная - игрок
Всё таки придется делать несколько триггеров
Загруженные файлы
18
Делай мвссив с индексом равным номеру игрока (чтоб не запутаться) При событии ставь условие на триггеринг игрока. Если триггенинг игрок = красный то перекидывай соотв. юнита по индексу. напр MyHero[1]. Используй if then else. Все вместится в 1 триггер с кол-вом событий равным кол-ву игроков.
Принятый ответ
17
dave_wwid, вроде работает, но нужно проверять с игроками. Пока закрою вопрос. Спасибо за помощь
23
Spector_Mark, тебе не нужен в этом триггере "последний созданный юнит" - это ссылка на последнего созданного юнита вообще во всей карте, а не в конкретном триггере. Занеси героев в переменные, когда эти герои только появляются в игре, и тогда сможешь их использовать в любой момент в любом месте.
17
SomeFire,
мда... Последний созданный юнит не подходит... Согласен
Тогда тупик
22
Если у вас только 1 героя для 1 игрока то лучше при выбора героя или load сохранить unit героя в переменю по индекса игрока а после чего ловите события что игрок печатал комманду и проверять есть ли герой у игрока в массиве если да то переместить иначе игнорировать
22
если неохота ковырятся с массивами
Загруженные файлы
22
biridius, зачем циклом присвоить локации его лучше самый начало и удаление 1 раз вполне чем постояно толкать переменую в цикле и удалять
18
1- Цикл выполнится 1 раз ( тк герой один)
2- центр локации "арена"(область 000<gen>) фиксированная точка
3- использование перемещения героя будет с небольшой частотой
Вывод: Никаких утечек не будет, нужно только переместить героя в центр локации арена, никаких custom script с установкой и удалением точек не нужно.
PS Вариант с пиком проще чем с массивом
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.