mirror of
https://github.com/vcmi/vcmi.git
synced 2025-01-26 03:52:01 +02:00
Creature is immune to dispell is it has no active effects
This commit is contained in:
parent
0a391cd367
commit
f30d5612ed
@ -172,8 +172,16 @@ ESpellCastProblem::ESpellCastProblem DispellMechanics::canBeCasted(const CBattle
|
|||||||
|
|
||||||
ESpellCastProblem::ESpellCastProblem DispellMechanics::isImmuneByStack(const CGHeroInstance * caster, const CStack * obj) const
|
ESpellCastProblem::ESpellCastProblem DispellMechanics::isImmuneByStack(const CGHeroInstance * caster, const CStack * obj) const
|
||||||
{
|
{
|
||||||
//DISPELL ignores all immunities
|
//DISPELL ignores all immunities, so do not call default
|
||||||
return ESpellCastProblem::OK;
|
std::stringstream cachingStr;
|
||||||
|
cachingStr << "source_" << Bonus::SPELL_EFFECT;
|
||||||
|
|
||||||
|
if(obj->hasBonus(Selector::sourceType(Bonus::SPELL_EFFECT), cachingStr.str()))
|
||||||
|
{
|
||||||
|
return ESpellCastProblem::OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ESpellCastProblem::WRONG_SPELL_TARGET;
|
||||||
}
|
}
|
||||||
|
|
||||||
///EarthquakeMechanics
|
///EarthquakeMechanics
|
||||||
|
@ -216,7 +216,6 @@ bool DefaultSpellMechanics::applyAdventureEffects(const SpellCastEnvironment * e
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DefaultSpellMechanics::battleCast(const SpellCastEnvironment * env, BattleSpellCastParameters & parameters) const
|
void DefaultSpellMechanics::battleCast(const SpellCastEnvironment * env, BattleSpellCastParameters & parameters) const
|
||||||
{
|
{
|
||||||
BattleSpellCast sc;
|
BattleSpellCast sc;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user