JewilyВ случае, если разрабы не безрукие(они не такие), то через триггер. Потому что висячий триггер не исполняется до вызова соответствующего события. А поток с циклом - постоянно выполняется, что грузит карту больше.
Вы в своём скрипте в
GetSavedCombatArmyCreatureInfo( combatIndex );
отдали только 1 аргумент, а нужно ещё написать помимо combatIndex написать 0 вторым параметром(0 для проигравшего, 1 для победившего), и третьим аругментом нужен индекс слота армии, в каком проверять. Соответственно вам лучше написать цикл, который все слоты проверит.
Оттого и ничего не работает. В мануале конечно не очень расписано, но как уже указывал Хоттабыч, писали об этом на форуме.
Спасибо за ответ, к сожалению по поиску я нашёл только сообщения которые мы с Хоттабычем сами же и оставили(
По поводу своего скрипта - чуток переписал и заработало! Однако, почему-то скрипт после проверки стеков и нахождении первого занятого из них каким-либо существом жалуется на "Invalid creature index" и число какое-нибудь пишет. Например 2(как понимаю, это занятый существами стек которые были в бою с героем). Это критичная ошибка? Или можно проигнорировать опираясь на "Ладно, итак сойдёт!" ?
Сам же скрипт теперь такой(всё работает, print выдаёт корректное число павших недругов)
function WR_Revenge( combatIndex )
print("Запустили функцию") --Удалить
if GetSavedCombatArmyHero( combatIndex, 1 ) == "WR" then
print("Чекнули героя")
if GetSavedCombatArmyCreaturesCount( combatIndex, 0, 112 ) >= 1 then
print("Чекнули существ")
for i=0,6 do
local revenge_target, count, died = GetSavedCombatArmyCreatureInfo( combatIndex, 0, i );
print("Прошли local")
if revenge_target == 112 and died >= 1 then
print("Прошли проверку на смерть хоть одного ангелочка")
enemieskilledcounter = enemieskilledcounter + died;
print("ВР убила ", enemieskilledcounter ," ангелочков");
end
end
end
end
end