mirror of
https://github.com/vcmi/vcmi.git
synced 2025-04-04 22:14:25 +02:00
fixed resurrection corner case
This commit is contained in:
parent
81ccecedca
commit
ef73f416dc
@ -219,7 +219,7 @@ void CHealth::setFromTotal(const int64_t totalHealth)
|
|||||||
firstHPleft = totalHealth % unitHealth;
|
firstHPleft = totalHealth % unitHealth;
|
||||||
fullUnits = totalHealth / unitHealth;
|
fullUnits = totalHealth / unitHealth;
|
||||||
|
|
||||||
if(firstHPleft == 0 && fullUnits > 1)
|
if(firstHPleft == 0 && fullUnits >= 1)
|
||||||
{
|
{
|
||||||
firstHPleft = unitHealth;
|
firstHPleft = unitHealth;
|
||||||
fullUnits -= 1;
|
fullUnits -= 1;
|
||||||
|
@ -219,5 +219,22 @@ BOOST_FIXTURE_TEST_CASE(resurrectPermanent, CUnitHealthInfoMock)
|
|||||||
checkFullHealth(health, *this);
|
checkFullHealth(health, *this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BOOST_FIXTURE_TEST_CASE(singleUnitStack, CUnitHealthInfoMock)
|
||||||
|
{
|
||||||
|
//related to issue 2612
|
||||||
|
|
||||||
|
//one Titan
|
||||||
|
baseAmount = 1;
|
||||||
|
maxHealth = 300;
|
||||||
|
|
||||||
|
health.init();
|
||||||
|
|
||||||
|
checkDamage(health, 1000, 300);
|
||||||
|
checkEmptyHealth(health, *this);
|
||||||
|
|
||||||
|
checkHeal(health, EHealLevel::RESURRECT, EHealPower::PERMANENT, 300, 300);
|
||||||
|
checkFullHealth(health, *this);
|
||||||
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_SUITE_END()
|
BOOST_AUTO_TEST_SUITE_END()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user