Можно подсказать, как выглядит условие, которое срабатывает при гибели отряда или вражеского героя?
if GetSavedCombatArmyHero(a1,0)=="Giovanni" then
Loose();
end;
if (GetSavedCombatArmyHero(a1,1)=="Giovanni") and (GetSavedCombatArmyHero(a1,0)=="Zehir") then
MessageBox(GetMapDataPath().."talk_of_grigorio_6.txt");
SetObjectiveState("kill_pl5", OBJECTIVE_COMPLETED, PLAYER_1 );
SetPlayerResource(PLAYER_1 ,GOLD, GetPlayerResource(PLAYER_1 , GOLD)+20000);
end;if flag_bad_grig==1 then
if (GetSavedCombatArmyHero(a1,1)=="Giovanni") and (GetSavedCombatArmyHero(a1,0)=="Duncan") then
SetObjectiveState("kill_pl6", OBJECTIVE_COMPLETED, PLAYER_1 );
MessageBox(GetMapDataPath().."talk_of_grigorio_5.txt");
SetObjectEnabled("portal1", true);
end;
else
if (GetSavedCombatArmyHero(a1,1)=="Giovanni") and (flag_britt==1) then
count_stacks = GetSavedCombatArmyCreaturesCount(a1,0);
for i=0,count_stacks-1 do
cr, numer, dead = GetSavedCombatArmyCreatureInfo(a1,0,i);
if cr==cr_ded then
Strelki_dead= Strelki_dead + dead;
end;
end;
Вот примеры кода. Если разбираешься -поймёшь, если нет - потребуй объяснения.Пример частный, в котором один герой побеждает другого, либо валит отряд и собирает их численность.
Или надо чтобы он учитывал любое умирание врага?
Тогда вот:
Формат вызываемой процедуры:
void sProc( sHeroName )
Останов:
Trigger(PLAYER_REMOVE_HERO_TRIGGER, nPlayerID, nil)
Процедура вызывается, когда игрок nPlayerID теряет героя. Имя данного героя передается в процедуру в качестве параметра
NHF 0.90 : NHF - группа в VK
Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...