Сначала посчитать все возможные потери по стекам, а потом вывести сообщение, если они есть.
local enemieskilledcounter = 0
n_stacks = GetSavedCombatArmyCreaturesCount( combatIndex, 0 );
for i = 0,(n_stacks-1) do
local revenge_target, count, died = GetSavedCombatArmyCreatureInfo( combatIndex, 0, i );
if revenge_target == 112 and died >= 1 then
enemieskilledcounter = enemieskilledcounter + died;
end
end
if enemieskilledcounter > 0 then
ShowFlyingSign({GetMapDataPath().."Duncan_Counter.txt"; showcounter=enemieskilledcounter}, "Duncan", 1, 10)
end