aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/game/Player.cpp2
-rw-r--r--src/game/SpellMgr.cpp8
2 files changed, 8 insertions, 2 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 8b41206928e..d5fc690bb92 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -16909,7 +16909,7 @@ void Player::VehicleSpellInitialize()
if(!spellInfo)
continue;
- if(IsPassiveSpell(spellId) || spellInfo->activeIconID == 2158) //flight
+ if(IsPassiveSpell(spellId))
{
charm->CastSpell(charm, spellId, true);
data << uint16(0) << uint8(0) << uint8(i+8);
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 7e16b325290..89756a3695d 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -303,7 +303,11 @@ bool IsPassiveSpell(uint32 spellId)
SpellEntry const *spellInfo = sSpellStore.LookupEntry(spellId);
if (!spellInfo)
return false;
- return (spellInfo->Attributes & SPELL_ATTR_PASSIVE) != 0;
+ if(spellInfo->Attributes & SPELL_ATTR_PASSIVE)
+ return true;
+ if(spellInfo->activeIconID == 2158) //flight
+ return true;
+ return false;
}
bool IsAutocastableSpell(uint32 spellId)
@@ -313,6 +317,8 @@ bool IsAutocastableSpell(uint32 spellId)
return false;
if(spellInfo->Attributes & SPELL_ATTR_PASSIVE)
return false;
+ if(spellInfo->activeIconID == 2158)
+ return false;
if(spellInfo->AttributesEx & SPELL_ATTR_EX_UNAUTOCASTABLE_BY_PET)
return false;
return true;