Респаун Крипов
привет. у меня вопрос про респаун крипа в РПГ карте ! как сделать что бы он респавнилься только тогда если в радиусе (800-1000)нету героя . если я ставлю условия он не ресается если рядом стоит нейтрально враждебный крип (тоесть его союзник ) . как сделать условия только что бы героев касался проверка ..... и если допустим в кучке стоят там 4-5 крипа а умер там 1 что бы он реснулся если рядом нету героя.... подскажите пожалуйста спосибочки вот скрин условия что я делаю не так




Просмотров: 185

XGM Bot #1 - 2 недели назад 0
Похожие вопросы:

» ответ
Вот обновленная версия на структурах, я её вроде выкладывал...
либо используйте CreateCreepOfType для создания крипов, так будет респаунить тока тех крипов которых вы создали этой функцией...
» ответ
Сергей45, дело в том, что когда ты ставишь юнита на карте, то при сохранении в скрипт карты добавляется кусок, который на старте игры именно в этих координатах создаст именно этого юнита, с указанным количеством здоровья, маны, уровнем, и предметами (если есть инвентарь).
Для тебя это просто "нажал, поставил, в игре он есть".
На деле же - он создаётся отдельным куском скрипта (и это нормально).
Когда ты открываешь на юните (в редакторе) вкладку с выпадающими предметами, то там можно указать выпадающие предметы и их шанс при этом. Что происходит на самом деле? - в скрипт игры вшивается кусок, который регистрирует событие смерти этого юнита (а так же событие получения над ним контроля, если его захватят то предмет тоже выпадает). Умирая этот юнит пройдёт несколько простых проверок, и дальше под ним будут созданы предметы (из списка).
Список формируется в момент смерти юнита!
Когда юнит умирает, берётся глобальный список (общий), и в нём производится очистка. После этого в него добавляются предметы и числа (т.е. шанс). После этого особая хитрая функция выбрасывает случайное число и получает по нему один из предметов (записанных ранее в список).
Готово. Именно такова суть работы базового дропа предметов.
Дальше тебе надо используя событие смерти юнита, сделать проверку на его тип, и создать нужный предмет под ним (но это будет работать в 100% случаев). Если ты хочешь добавить к этому шанс, то можно просто дополнительно прикрутить выбрасывание случайного числа (например от 1 до 100), и если оно меньше некоего другого числа (например 40), то только тогда создаёшь предмет (это будет 40%-й шанс на дроп).
А вот если тебе надо сделать хитрее, например 100% что предмет выпадет, и из них 20% что это будет кольцо на +3, и остальные 80% что это будет кольцо на +2, тогда тебе придётся добавить ещё несколько проверок, и их число будет рости от количества этих вариантов дропа.
Если ты делаешь всё на 1.26 и у тебя есть JNGP, то ты можешь сразу использовать добавленные в GUI функции для работы со списком:
call RandomDistReset() очистка списка
call RandomDistAddItem(ID,X) добавление предмета ID с шансом X (число от 0 до 100)
set itemID = RandomDistChoose() получение случайного ID из списка, за счёт шанса
Первые два - на самом дне списка действий категории "Предмет"
Третий - указывается вместо типа предмета, при его создании (тоже есть в списке)
Если у тебя нет возможность использовать JNGP (например из-за версии патча), тогда ты можешь просто на прямую обращаться к этим функциям (если, конечно, они не изменились). Но для этого тебе придётся чуть-чуть обрести понимания в том как работает JassCS).

quq_CCCP #2 - 2 недели назад 0
Как насчет системы респауна крипов ? К примеру вот этой ссылка
Нукри Тан #3 - 2 недели назад 0
так нету проверка героя в радиусе они ресаются все ровно есть там герой или нету ... а мне надо что бы он ресался если рядом есть крип такой же ну нейтрально враждебный .... и не ресался если рядом есть игрок (герой любой)
quq_CCCP #4 - 2 недели назад 0
Нукри Тан, ну а в чем проблема, система по ссылке это учитывает.
Нукри Тан #5 - 2 недели назад 0
это условия надо писать именно на JASS ? на гуй у меня никак не выходит .
NekoriDes #6 - 2 недели назад 0
Добавь к своему условию проверку на тип юнита. Если это герой, просто ничего не делай.
Ну и покажи как ты делаешь.
Нукри Тан #7 - 2 недели назад 0
вот скрин

и вот это проверка он действует и на моба ... тоесть если там допустим 4-5 моб то ресается только 1 а другите типа проверку не могут пройти (хочу что бы проверка касалась только героя ( игрока любой из команды )
Прикрепленные файлы
pro100master #8 - 2 недели назад 0
мда проверяет центр лол

надо проверять от точки респавна вокруг а также удали утечные группы который вы каждую 2 сек создаете
Нукри Тан #9 - 2 недели назад 0
точки удаляю а как правильно надо сделать что бы он проверку на героя проходил а не на моба объясните норм или покажите на примере плиз
NekoriDes #10 - 1 неделю назад 0
Хз. В твоём случае я бы пикал каждого юнита в ренже и если бы находил кого-то кроме нейтрала устанавливал флаг, затем проверял этот флаг и в зависимости от его значения респаунил / не респаунил крипа.

Но если ты не понял о чём я и не очень хочешь читать статьи, то в твоём случае оптимальным вариантом и правда будет взять систему выше, там есть конфиг, сможешь настроить под себя.
Maniac_91 #11 - 1 неделю назад 2   
Я бы делал проверку, видима ли точка респауна игроку-человеку вместо радиусов.