Восстановление крипов после смерти на исходной точке

Добавлен , не публикуется
Многие, когда делают свои карты, задаются таким вопросом: А как же сделать воскрешение крипов на позиции, в которой я их поставил в редакторе? Одни пытаются найти ответы на форуме, другие - сами решить эту проблему, но ни те, ни другие не находят в большинстве своём ответа, а если и находят, то не делятся с другими! :D. А ведь решение достаточно простое и понятное.
Так как я не нашёл похожих статей на XGM, пишу её для вас.
Вся система состоит из двух коротеньких триггеров: один записывает крипов, другой их воскрешает, всё очень просто.
Первым триггером мы записываем каждого крипа в переменные, создадим их:
creeps - типа боевая единица, массив
creeps_pos - типа точка, массив
creeps_deg - типа реальная, массив
При желании можно добавить другие параметры, типа наличия предмета или количество маны.
Создаём действие, выбирающее всех нейтрально-враждебных на карте и подставляем все эти переменные туда.
Потом добавляем наши переменные
Сейчас умные люди назовут меня не хорошими словами и скажут: "Для этих дел есть кэш, хэш, джасс и т. п.", а также: "Ну и как же ты их вытащишь потом?"
Ну а пока другие возмущаются, мы продолжим. Теперь нужно, чтобы каждый крип куда-то записывался.
Добавляем переменную, которая задаёт порядковый номер крипу, называем её: res_creeps_integer - типа целочисленная
И присваеваем действие, называемое на корявых русских триггерах (просто привык к ним) как "Обычное значение юнита", а в джассе "SetUnitUserData". Это действие присваивает крипу строку, которую мы используем как число.
Итак, как не странно, все крипы записаны, осталось их воскресить после смерти. Обносим триггер условиями, чтобы не воскрешались все подряд:
Вот казалось бы и всё, но сколько же мы утечек после этого получаем? Ответ навязывается сам собой: достаточно. Например, выяснилось, что исчезнувший труп не воскрешается, поэтому 2-ой триггер лучше написать на джассе.
Вот и всё, мы сделали воскрешение крипов на гуи, ну почти.
Прикрепляю карту с обоими вариантами исполнения. Всем спасибо!
`
ОЖИДАНИЕ РЕКЛАМЫ...
21
TO DO: Подправить орфографию, перестать заниматься такой примитивщиной, удалить этот бред для пятилетних к щям, прочитать, пойти в школу, но сначала прочитать!
А теперь насчет "системы"... К примеру у нас система сферок которя крепиться через структуры, а структура крепиться через хендл айди, так что нужно со смертью юнита индекс крепленных на него структур заносить в переменную, а с созданием нового юнита возобновлять индекс. И ещё много нюансов...
1
Поправил пару ошибок, извини другие не вижу, на счёт примитивщины для пятилетних, всегда ведь лучше, когда всё просто, зачем эти структуры? Некоторым не хочется замарачиваться на изучении джасса, им проще так. Насчёт меня - я достаточно знаю из джасса, все статьи на XGM я знаю, ни в одной уж извините простого решения этой проблемы не видел...
28
Sid44, юсер дата очень часто юзается другими системами
я например вешаю на неё вобще всё что только можно
1
Можно использовать со сведением строк, а потом выделять части надписи))
20
Вот же блин! Всё, что я могу сказать за эту "статью" - спасибо Кэп! Ты действительно думал, что до тебя этого никто не делал?
Чтобы оставить комментарий, пожалуйста, войдите на сайт.