Ulduar, Halls of Lightning: Ionar disperses only once.

3.3.2 Blizzlike change

--HG--
branch : trunk
This commit is contained in:
Tartalo
2010-04-07 00:21:31 +02:00
parent 7c389f4c39
commit 668dd91368
@@ -77,24 +77,28 @@ struct boss_ionarAI : public ScriptedAI
SummonList lSparkList; SummonList lSparkList;
bool bIsSplitPhase; bool bIsSplitPhase;
bool bHasDispersed;
uint32 uiSplitTimer; uint32 uiSplitTimer;
uint32 uiStaticOverloadTimer; uint32 uiStaticOverloadTimer;
uint32 uiBallLightningTimer; uint32 uiBallLightningTimer;
uint32 uiHealthAmountModifier; uint32 uiDisperseHealth;
void Reset() void Reset()
{ {
lSparkList.DespawnAll(); lSparkList.DespawnAll();
bIsSplitPhase = true; bIsSplitPhase = true;
bHasDispersed = false;
uiSplitTimer = 25*IN_MILISECONDS; uiSplitTimer = 25*IN_MILISECONDS;
uiStaticOverloadTimer = urand(5*IN_MILISECONDS, 6*IN_MILISECONDS); uiStaticOverloadTimer = urand(5*IN_MILISECONDS, 6*IN_MILISECONDS);
uiBallLightningTimer = urand(10*IN_MILISECONDS, 11*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); 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; uiBallLightningTimer -= uiDiff;
// Health check // Health check
if (HealthBelowPct(100-(20*uiHealthAmountModifier))) if (!bHasDispersed && HealthBelowPct(uiDisperseHealth))
{ {
++uiHealthAmountModifier; bHasDispersed = true;
DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature); DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature);