mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-27 22:49:25 +02:00
CStack: make unicorns ability multiplicative
This commit is contained in:
@@ -93,7 +93,7 @@ ui32 CStack::level() const
|
|||||||
|
|
||||||
si32 CStack::magicResistance() const
|
si32 CStack::magicResistance() const
|
||||||
{
|
{
|
||||||
si32 magicResistance = IBonusBearer::magicResistance();
|
auto magicResistance = IBonusBearer::magicResistance();
|
||||||
|
|
||||||
si32 auraBonus = 0;
|
si32 auraBonus = 0;
|
||||||
|
|
||||||
@@ -102,10 +102,11 @@ si32 CStack::magicResistance() const
|
|||||||
if(one->unitOwner() == owner)
|
if(one->unitOwner() == owner)
|
||||||
vstd::amax(auraBonus, one->valOfBonuses(Bonus::SPELL_RESISTANCE_AURA)); //max value
|
vstd::amax(auraBonus, one->valOfBonuses(Bonus::SPELL_RESISTANCE_AURA)); //max value
|
||||||
}
|
}
|
||||||
magicResistance += auraBonus;
|
vstd::abetween(auraBonus, 0, 100);
|
||||||
vstd::amin(magicResistance, 100);
|
vstd::abetween(magicResistance, 0, 100);
|
||||||
|
float castChance = (100 - magicResistance) * (100 - auraBonus)/100.0;
|
||||||
|
|
||||||
return magicResistance;
|
return static_cast<si32>(100 - castChance);
|
||||||
}
|
}
|
||||||
|
|
||||||
BattleHex::EDir CStack::destShiftDir() const
|
BattleHex::EDir CStack::destShiftDir() const
|
||||||
|
|||||||
Reference in New Issue
Block a user