*Fix spell Rune Strike.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-05-30 00:09:50 -05:00
parent d3e1e1eae6
commit 15633ec97e
4 changed files with 46 additions and 9 deletions
+12 -2
View File
@@ -2293,8 +2293,18 @@ void ObjectMgr::LoadPlayerInfo()
continue;
}
PlayerInfo* pInfo = &playerInfo[current_race][current_class];
pInfo->spell.push_back(fields[2].GetUInt32());
if(!current_race || !current_class)
{
uint32 min_race = current_race ? current_race : 1;
uint32 max_race = current_race ? current_race + 1 : MAX_RACES;
uint32 min_class = current_class ? current_class : 1;
uint32 max_class = current_class ? current_class + 1 : MAX_CLASSES;
for(uint32 r = min_race; r < max_race; ++r)
for(uint32 c = min_class; c < max_class; ++c)
playerInfo[r][c].spell.push_back(fields[2].GetUInt32());
}
else
playerInfo[current_race][current_class].spell.push_back(fields[2].GetUInt32());
bar.step();
++count;
+16 -7
View File
@@ -9724,12 +9724,21 @@ bool Unit::IsDamageToThreatSpell(SpellEntry const * spellInfo) const
if(!spellInfo)
return false;
uint32 family = spellInfo->SpellFamilyName;
uint64 flags = spellInfo->SpellFamilyFlags;
if((family == 5 && flags == 256) || //Searing Pain
(family == SPELLFAMILY_SHAMAN && flags == SPELLFAMILYFLAG_SHAMAN_FROST_SHOCK))
return true;
switch(spellInfo->SpellFamilyName)
{
case SPELLFAMILY_WARLOCK:
if(spellInfo->SpellFamilyFlags[0] == 0x100) // Searing Pain
return true;
break;
case SPELLFAMILY_SHAMAN:
if(spellInfo->SpellFamilyFlags[0] == SPELLFAMILYFLAG_SHAMAN_FROST_SHOCK)
return true;
break;
case SPELLFAMILY_DEATHKNIGHT:
if(spellInfo->SpellFamilyFlags[1] == 0x20000000) // Rune Strike
return true;
break;
}
return false;
}
@@ -11718,7 +11727,7 @@ void CharmInfo::InitPetActionBar()
SetActionBar(i,COMMAND_ATTACK - i,ACT_COMMAND);
SetActionBar(i + 7,COMMAND_ATTACK - i,ACT_REACTION);
}
for(uint32 i = 4; i < 8; ++i)
for(uint32 i = 3; i < 7; ++i)
SetActionBar(i,0,ACT_PASSIVE);
}