Кстати. При одновременных ходах значение
while GetLastSavedCombatIndex() == combat_index do
sleep()
end
может же измениться?
Если два игрока одновременно проводят бои, например. В результате, герой ещё ведёт бой, а индекс изменился. Он может проиграть, а в результате функция вернёт, что жив.
Поэтому и хотелось бы вызывать функцию только на конец боя.