diff --git a/lib/CStack.cpp b/lib/CStack.cpp index fb28549b8..77142700c 100644 --- a/lib/CStack.cpp +++ b/lib/CStack.cpp @@ -201,6 +201,7 @@ void CStack::prepareAttacked(BattleStackAttacked & bsa, vstd::RNG & rand, std::s { auto initialCount = customState->getCount(); + // compute damage and update bsa.damageAmount customState->damage(bsa.damageAmount); bsa.killedAmount = initialCount - customState->getCount(); diff --git a/lib/battle/CUnitState.cpp b/lib/battle/CUnitState.cpp index e94011b3f..e6583ab6d 100644 --- a/lib/battle/CUnitState.cpp +++ b/lib/battle/CUnitState.cpp @@ -823,7 +823,7 @@ void CUnitState::damage(int64_t & amount) // block ability should not kill clone (0 damage) if(amount > 0) { - amount = 1;//TODO: what should be actual damage against clone? + amount = 0; health.reset(); } }