diff options
| author | Tartalo <none@none> | 2010-04-07 00:21:31 +0200 |
|---|---|---|
| committer | Tartalo <none@none> | 2010-04-07 00:21:31 +0200 |
| commit | 668dd91368455a28e2fdfceda7681da15c0f6350 (patch) | |
| tree | 3f8bd4491d26ebf29f74edd4240e193733566830 /src | |
| parent | 7c389f4c393783241b7c33a509a7981da9843472 (diff) | |
Ulduar, Halls of Lightning: Ionar disperses only once.
3.3.2 Blizzlike change
--HG--
branch : trunk
Diffstat (limited to 'src')
| -rw-r--r-- | src/scripts/northrend/ulduar/halls_of_lightning/boss_ionar.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/scripts/northrend/ulduar/halls_of_lightning/boss_ionar.cpp b/src/scripts/northrend/ulduar/halls_of_lightning/boss_ionar.cpp index 17c6765cddf..75395aaa751 100644 --- a/src/scripts/northrend/ulduar/halls_of_lightning/boss_ionar.cpp +++ b/src/scripts/northrend/ulduar/halls_of_lightning/boss_ionar.cpp @@ -77,24 +77,28 @@ struct boss_ionarAI : public ScriptedAI SummonList lSparkList; bool bIsSplitPhase; + bool bHasDispersed; + uint32 uiSplitTimer; uint32 uiStaticOverloadTimer; uint32 uiBallLightningTimer; - uint32 uiHealthAmountModifier; + uint32 uiDisperseHealth; void Reset() { lSparkList.DespawnAll(); bIsSplitPhase = true; + bHasDispersed = false; + uiSplitTimer = 25*IN_MILISECONDS; uiStaticOverloadTimer = urand(5*IN_MILISECONDS, 6*IN_MILISECONDS); uiBallLightningTimer = urand(10*IN_MILISECONDS, 11*IN_MILISECONDS); - uiHealthAmountModifier = 1; + uiDisperseHealth = 45 + urand(0,10); m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE|UNIT_FLAG_DISABLE_MOVE); @@ -243,9 +247,9 @@ struct boss_ionarAI : public ScriptedAI uiBallLightningTimer -= uiDiff; // Health check - if (HealthBelowPct(100-(20*uiHealthAmountModifier))) + if (!bHasDispersed && HealthBelowPct(uiDisperseHealth)) { - ++uiHealthAmountModifier; + bHasDispersed = true; DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature); |
