Всем привет, Я хочу спросить у вас как сделать Респавн Мобов на их изначальных позициях ?
Обычный респавн сделать легко, но как именно такой.
Заранее спасибо за помощь.

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

Создаёшь массив юнитов и запихиваешь в него крипов. Создаёшь массив точек и запихиваешь в него позиции соответствующих крипов. Делаешь триггер, который сверяет убитого с массивом юнитов и создаёт нового в соответствующей точке из второго массива.
Если тебе нужно, чтобы юниты воскрешались через какое-то время, то тебе придется изучить основы jass, а именно - узнать, как работают локальные переменные. Создаёшь локальный номер убитого, ждешь нужное время и воскрешаешь юнита с локальным номером.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
25
10 лет назад
0
Закрепить юнитов за переменными и если их убивают, то возраждать\создавать новых в нужной области и занесения их снова в переменную.
0
23
10 лет назад
Отредактирован SomeFire
0
Создаёшь массив юнитов и запихиваешь в него крипов. Создаёшь массив точек и запихиваешь в него позиции соответствующих крипов. Делаешь триггер, который сверяет убитого с массивом юнитов и создаёт нового в соответствующей точке из второго массива.
Если тебе нужно, чтобы юниты воскрешались через какое-то время, то тебе придется изучить основы jass, а именно - узнать, как работают локальные переменные. Создаёшь локальный номер убитого, ждешь нужное время и воскрешаешь юнита с локальным номером.
Принятый ответ
2
25
10 лет назад
Отредактирован Ancient
2
SomeFire, а если на карте будет больше 8к юнитов? То в массив все не влезет. Да и 2 глобалки ради респавна крипа создавать - маразм.
И не приучайте новичков к гуи, черт подери.
В момент смерти пихаем равдок юнита в шех таблу, пихаем туда же координаты, запускаем таймер, на нужный период, а потом создаем/ресаем моба по координатам.
0
22
10 лет назад
0
Ancient, в вопросе речь шла об изначальной позиции, а не о том месте, в котором моб умер. А он мог покинуть изначальную позицию.
0
25
10 лет назад
0
Ledon, запихнуть при ините координаты моба в хеш-таблу и потом воскрешать его при смерти, еще проще...
0
22
10 лет назад
0
Ancient, это с условием, что хэш-таблица потом ещё где то будет использоваться. Если же нет, то слишком жирно создавать хэш-таблицу для одного только реса - проще обойтись глобальной переменной...
А вообще у меня чувство, что автор просто решил срубить 100 ед. опыта :D
0
25
10 лет назад
Отредактирован Ancient
0
Ledon, мне кажется проще хранить почти все в одной хеш табле а не в тонне глобалок...
на v/c jass я не могу работать, там вообще все на одних локалках.
А насчет хитрожопости тс - все может быть, как знать.
0
26
10 лет назад
0
массив лучше хештаблицы будет, только нужно не точки хранить, а координаты
0
23
10 лет назад
0
а если на карте будет больше 8к юнитов?
Это уже само по себе будет лагать. И не надо никаких утечек.
Hate:
не точки хранить, а координаты
А в чем разница?
0
26
10 лет назад
Отредактирован Hate
0
точки объекты, причем не лучшей скорости, их можно забыть удалить, обнулить, с координатами все намного проще удобнее и безопаснее
0
22
10 лет назад
0
SomeFire, когда ставишь монстра в указанное место при помощи функции, использующую локацию, возникает утечка точки, а при координатном задании положения - нет.
0
23
10 лет назад
0
Hate, ок.
0
25
10 лет назад
Отредактирован Ancient
0
SomeFire, что-то типа того что сказал Ledon, но создать моба в гуи через координаты - не реально, а в жассе - все адекватные люди используют координаты, ибо полоскать мозг с точками никто не хочет.
0
23
10 лет назад
Отредактирован SomeFire
0
Ledon, у точки можно взять отдельно координаты и использовать их. Но координат 3, а точка 1 и массив для точек нужен всего 1.
Ancient, реально - конверт координат в точку ещё никто не отменял.
0
22
10 лет назад
Отредактирован Ledon
0
SomeFire, речь идёт о плоскости (Т.е. чтока, в которой 2 координаты, а не 3). И ничто не мешает тебе записать все координаты в массив и извлекать попарно: чётная - Х, нечётная - У или наоборот - по желанию ;)
0
26
10 лет назад
0
на жассе все бы делалось через двойные массивы (vJass), и на координаты уходила бы одна переменная, но и 2 тоже ничего
0
25
10 лет назад
0
SomeFire, зачем извращатся так? o_O Не проще сразу все делать на координатах.
0
28
10 лет назад
0
Ancient, Hate, Ledon, точка в массиве не перезаписывается
так что утечек нету
но в бж узнаются координаты точки и юнит создаётся на координатах
в результате мы теряем то время что требуется на извлечение координат из точки(но если вам пофиг на эту 0,0001 секунды и вы гуишник то можно юзать точки)
Ancient, 8к юнитов вар не потянет
и обращение к массиву/структуре быстрее чем хэш в 1,5 раза
SomeFire, точка 1 но жрёт в 4 раза больше памяти чем координата
так что у координат двукратная экономия
0
23
10 лет назад
0
зачем извращатся так?
Я просто сказал, что так можно делать.
0
22
10 лет назад
0
Этот вопрос уже тысячу раз на сайте задавался.Почему так сложно пролистать ниже и поискать его?
2 комментария удалено
0
28
10 лет назад
0
модераторы
клоз вопрос
0
3
10 лет назад
0
Кто-нибудь наработку на триггерах может выложить ?
0
23
10 лет назад
Отредактирован SomeFire
0
Drik:
Кто-нибудь наработку на триггерах может выложить ?
EPIC FAIL. В правом верхнем углу есть поиск - юзай наздоровье.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.