aboutsummaryrefslogtreecommitdiff
path: root/src/bindings/scripts
diff options
context:
space:
mode:
authormegamage <none@none>2009-01-21 14:17:29 -0600
committermegamage <none@none>2009-01-21 14:17:29 -0600
commitd81d81b211977093c8481a591a96bcc69d66bfe8 (patch)
tree28fd22cfefe9d39bf305a68646745aa4f9d5dddc /src/bindings/scripts
parent148192eca1c60b95d2b9e75520e0d0ee8d4cd6fd (diff)
*Move SelectHostilTarget() to class Creature and return getVictim() directly.
*Fix the crash caused by mandokir script. --HG-- branch : trunk
Diffstat (limited to 'src/bindings/scripts')
-rw-r--r--src/bindings/scripts/scripts/zone/karazhan/boss_moroes.cpp6
-rw-r--r--src/bindings/scripts/scripts/zone/zulgurub/boss_mandokir.cpp7
2 files changed, 7 insertions, 6 deletions
diff --git a/src/bindings/scripts/scripts/zone/karazhan/boss_moroes.cpp b/src/bindings/scripts/scripts/zone/karazhan/boss_moroes.cpp
index 3f0d6dd7a27..99283ca7097 100644
--- a/src/bindings/scripts/scripts/zone/karazhan/boss_moroes.cpp
+++ b/src/bindings/scripts/scripts/zone/karazhan/boss_moroes.cpp
@@ -276,13 +276,13 @@ struct TRINITY_DLL_DECL boss_moroesAI : public ScriptedAI
{
for (uint8 i = 0; i < 4; ++i)
{
- Unit* Temp = NULL;
+ Creature* Temp = NULL;
if (AddGUID[i])
{
- Temp = Unit::GetUnit((*m_creature),AddGUID[i]);
+ Temp = (Creature*)Unit::GetUnit((*m_creature),AddGUID[i]);
if (Temp && Temp->isAlive())
if (!Temp->SelectHostilTarget() || !Temp->getVictim() )
- ((Creature*)Temp)->AI()->AttackStart(m_creature->getVictim());
+ Temp->AI()->AttackStart(m_creature->getVictim());
}
}
CheckAdds_Timer = 5000;
diff --git a/src/bindings/scripts/scripts/zone/zulgurub/boss_mandokir.cpp b/src/bindings/scripts/scripts/zone/zulgurub/boss_mandokir.cpp
index 14f3702354d..a440ba4a575 100644
--- a/src/bindings/scripts/scripts/zone/zulgurub/boss_mandokir.cpp
+++ b/src/bindings/scripts/scripts/zone/zulgurub/boss_mandokir.cpp
@@ -131,7 +131,8 @@ struct TRINITY_DLL_DECL boss_mandokirAI : public ScriptedAI
void UpdateAI(const uint32 diff)
{
- if (!m_creature->SelectHostilTarget() || !m_creature->getVictim())
+ Unit *victim = m_creature->SelectHostilTarget();
+ if(!victim)
return;
if( m_creature->getVictim() && m_creature->isAlive())
@@ -234,11 +235,11 @@ struct TRINITY_DLL_DECL boss_mandokirAI : public ScriptedAI
}else Fear_Timer -=diff;
//Mortal Strike if target below 50% hp
- if (m_creature->getVictim()->GetHealth() < m_creature->getVictim()->GetMaxHealth()*0.5)
+ if (victim && victim->GetHealth() < victim->GetMaxHealth()*0.5)
{
if (MortalStrike_Timer < diff)
{
- DoCast(m_creature->getVictim(),SPELL_MORTAL_STRIKE);
+ DoCast(victim,SPELL_MORTAL_STRIKE);
MortalStrike_Timer = 15000;
}else MortalStrike_Timer -= diff;
}