mirror of
https://github.com/vcmi/vcmi.git
synced 2025-02-03 13:01:33 +02:00
invalidate bonus cashe on effect actualization
This commit is contained in:
parent
a437373a15
commit
3a50afe1a3
@ -1342,21 +1342,6 @@ DLL_LINKAGE void BattleSpellCast::applyGs( CGameState *gs )
|
||||
spell->applyBattle(gs->curB, this);
|
||||
}
|
||||
|
||||
void actualizeEffect(CStack * s, const std::vector<Bonus> & ef)
|
||||
{
|
||||
//actualizing features vector
|
||||
|
||||
for(const Bonus &fromEffect : ef)
|
||||
{
|
||||
for(Bonus *stackBonus : s->getBonusList()) //TODO: optimize
|
||||
{
|
||||
if(stackBonus->source == Bonus::SPELL_EFFECT && stackBonus->type == fromEffect.type && stackBonus->subtype == fromEffect.subtype)
|
||||
{
|
||||
stackBonus->turnsRemain = std::max(stackBonus->turnsRemain, fromEffect.turnsRemain);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
void actualizeEffect(CStack * s, const Bonus & ef)
|
||||
{
|
||||
for(Bonus *stackBonus : s->getBonusList()) //TODO: optimize
|
||||
@ -1366,6 +1351,17 @@ void actualizeEffect(CStack * s, const Bonus & ef)
|
||||
stackBonus->turnsRemain = std::max(stackBonus->turnsRemain, ef.turnsRemain);
|
||||
}
|
||||
}
|
||||
CBonusSystemNode::treeHasChanged();
|
||||
}
|
||||
|
||||
void actualizeEffect(CStack * s, const std::vector<Bonus> & ef)
|
||||
{
|
||||
//actualizing features vector
|
||||
|
||||
for(const Bonus &fromEffect : ef)
|
||||
{
|
||||
actualizeEffect(s, fromEffect);
|
||||
}
|
||||
}
|
||||
|
||||
DLL_LINKAGE void SetStackEffect::applyGs( CGameState *gs )
|
||||
|
Loading…
x
Reference in New Issue
Block a user