aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/SpellAuras.cpp8
-rw-r--r--src/game/Unit.cpp3
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));