diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/SpellAuras.cpp | 8 | ||||
-rw-r--r-- | src/game/Unit.cpp | 3 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index fe13946fe40..d30d0adee11 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -3445,9 +3445,11 @@ void AuraEffect::HandleAuraModShapeshift(bool apply, bool Real, bool changeAmoun if (GetMiscValue() == FORM_CAT) { - m_target->SetPower(POWER_ENERGY,0); - if(urand(1,100) <= FurorChance) - m_target->CastCustomSpell(m_target,17099,&FurorChance, NULL, NULL,true,NULL,this); + if(m_target->GetPower(POWER_ENERGY) > FurorChance) + { + m_target->SetPower(POWER_ENERGY, 0); + m_target->CastCustomSpell(m_target,17099,&FurorChance,NULL,NULL,true,NULL,this); + } } else { diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 607018cd8cb..6424d918983 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -7917,7 +7917,8 @@ void Unit::setPowerType(Powers new_powertype) break; case POWER_ENERGY: SetMaxPower(POWER_ENERGY,GetCreatePowers(POWER_ENERGY)); - SetPower( POWER_ENERGY,0); + if(getClass() != CLASS_DRUID) + SetPower( POWER_ENERGY,0); break; case POWER_HAPPINESS: SetMaxPower(POWER_HAPPINESS,GetCreatePowers(POWER_HAPPINESS)); |