Подчинение одного юнита или героя триггерно
Я хочу сделать как-то так:
-Игрок красный обводит (любого) юнита
-Игрок красный пишет текст в чат
-Юнит переходит под командование к игроку красному
Но только при условие что Юнитом больше не сможет управлять владелец
И точно также отдать Владельцу игрока.

Лучший ответ:
WiLian, так я имел в виду два триггера..
Вот так: xgm.guru/files/100/198847/comments/366316/Give.w3m
Скопируй 2 триггера и переменную-массив юнитов Selected в свою карту.
Тут даже без проверки получается вроде.
Если нужно больше игроков, чем 4 - то добавляй события с ними.
Sergey105, а как это в один триггер впихнуть?



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

» Лучшие комментарии


Maniac_91 #1 - 1 неделю назад 1
Обводит - в смысле выбирает?
В триггерах есть событие выбора, а так же событие ввода сообщения.
Условие - сравнение строки.
Действие - сменить владельца.
WiLian #2 - 1 неделю назад 0
Maniac_91, А что ставить в (Сравнение строки)
ssbbssc #3 - 1 неделю назад 0
команду, которую надо написать
Maniac_91 #4 - 1 неделю назад 0
WiLian, ssbbssc:
команду, которую надо написать
нужно сравнить с введённой строкой чата (entered chat string).
WiLian #5 - 1 неделю назад 0
Не выходит я даже менял условия местами.
прикреплены файлы
Game_Nikitav_1 #6 - 1 неделю назад (отредактировано ) 0
WiLian,
1 - Нельзя ставить 2 события основанной на действий с игрока
2 - То, что первым произошло, то и сработает (то есть, если игрока напечатает сообщение, то событие "выбор юнита" пропустит, также и с выбором юнита)
3 - Попробуй сделать выбор юнита и ввод сообщение в 2 триггера.
Sergey105 #7 - 1 неделю назад (отредактировано ) 0
WiLian, Game_Nikitav_1, верно написал
ты можешь сделать 2 триггера в 1 триггере сделать игрок 1 выбирает юнитов и занести юнита в переменную а в 2 триггере сделать событие игрок 1 напечатал такое сообщение и в действии уже сменить цвет юнита который записан в переменную
хотя это все можно сделать и на одном триггере
Maniac_91 #8 - 1 неделю назад 1

WiLian, так я имел в виду два триггера..
Вот так: xgm.guru/files/100/198847/comments/366316/Give.w3m
Скопируй 2 триггера и переменную-массив юнитов Selected в свою карту.
Тут даже без проверки получается вроде.
Если нужно больше игроков, чем 4 - то добавляй события с ними.
Sergey105, а как это в один триггер впихнуть?
прикреплены файлы
Sergey105 #9 - 1 неделю назад 3
Maniac_91, в один триггер можно поставить хоть все события поскольку события есть id и его можно отследить в действиях и проверять сработало нужное событие или нет
GetTriggerEventId() вернет эвент ид
Maniac_91 #10 - 1 неделю назад 0
Sergey105, интересное решение. Возьму на заметку)
Sergey105 #11 - 1 неделю назад 0
Maniac_91, вот тебепример
function Actions2 takes nothing returns boolean
if GetTriggerEventId() == EVENT_PLAYER_UNIT_ATTACKED then
действие при атаки
elseif GetTriggerEventId() == EVENT_PLAYER_UNIT_SPELL_EFFECT
действие при касте спела
endif
return false
endfunction
===========================================================================
function InitTrig_Ev takes nothing returns nothing
set gg_trg_Ev = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ( gg_trg_Ev, EVENT_PLAYER_UNIT_ATTACKED )//ид 1
call TriggerRegisterAnyUnitEventBJ( gg_trg_Ev, EVENT_PLAYER_UNIT_SPELL_EFFECT )//ид2
TriggerAddCondition(gg_trg_Ev, Condition(function Actions2))
endfunction
и да тут не просто так вместо TriggerAddAction стоит TriggerAddCondition
поскольку action утечна и ну для неё это норм она постояно копит в себе количество активаций триггера этим и жрет доп память
WiLian #12 - 6 дней назад 0
Maniac_91, Есть одна очень важная проблема, игрок ведший команду не может подчинить союзников.