diff options
| author | kaelima <jeppo_meyer@msn.com> | 2011-06-13 13:06:02 +0200 |
|---|---|---|
| committer | kaelima <jeppo_meyer@msn.com> | 2011-06-13 13:06:02 +0200 |
| commit | f45121ebe967ba02b4987ed96d24639343b7ee54 (patch) | |
| tree | 0d3830f11d507f0b81c5ed03b6025440c8b126ac /src/server/scripts/Kalimdor | |
| parent | de41092cab43d5e1211b194ee0ac31ef07ae2244 (diff) | |
Core/Scripts: Avoid some possible crashes
Temporary fix since Sartura obviously needs a rewrite.
Diffstat (limited to 'src/server/scripts/Kalimdor')
| -rw-r--r-- | src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp | 54 |
1 files changed, 26 insertions, 28 deletions
diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp index 73fd532b158..e1bb5645cfd 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp @@ -105,13 +105,12 @@ public: if (WhirlWindRandom_Timer <= diff) { //Attack random Gamers - Unit *pTarget = NULL; - pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1); - if (pTarget) - me->AddThreat(pTarget, 1.0f); - me->TauntApply(pTarget); - AttackStart(pTarget); - + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100.0f, true)) + { + me->AddThreat(target, 1.0f); + me->TauntApply(target); + AttackStart(target); + } WhirlWindRandom_Timer = 3000 + rand()%4000; } else WhirlWindRandom_Timer -= diff; @@ -134,15 +133,14 @@ public: if (AggroReset_Timer <= diff) { //Attack random Gamers - Unit *pTarget = NULL; - pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1); - if (pTarget) - me->AddThreat(pTarget, 1.0f); - me->TauntApply(pTarget); - AttackStart(pTarget); - - AggroReset = true; - AggroReset_Timer = 2000 + rand()%3000; + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100.0f, true)) + { + me->AddThreat(target, 1.0f); + me->TauntApply(target); + AttackStart(target); + } + AggroReset = true; + AggroReset_Timer = 2000 + rand()%3000; } else AggroReset_Timer -= diff; if (AggroReset) @@ -242,12 +240,12 @@ public: if (WhirlWindRandom_Timer <= diff) { //Attack random Gamers - Unit *pTarget = NULL; - pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1); - if (pTarget) - me->AddThreat(pTarget, 1.0f); - me->TauntApply(pTarget); - AttackStart(pTarget); + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100.0f, true)) + { + me->AddThreat(target, 1.0f); + me->TauntApply(target); + AttackStart(target); + } WhirlWindRandom_Timer = 3000 + rand()%4000; } else WhirlWindRandom_Timer -= diff; @@ -263,12 +261,12 @@ public: if (AggroReset_Timer <= diff) { //Attack random Gamers - Unit *pTarget = NULL; - pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1); - if (pTarget) - me->AddThreat(pTarget, 1.0f); - me->TauntApply(pTarget); - AttackStart(pTarget); + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100.0f, true)) + { + me->AddThreat(pTarget, 1.0f); + me->TauntApply(pTarget); + AttackStart(pTarget); + } AggroReset = true; AggroReset_Timer = 2000 + rand()%3000; |
