Core/Scripts: Replace rand with urand in most cases (using regexp)
Used: perl -pi -e 's/([0-9]+) \+ rand\(\)\%([0-9]+)/"urand(".$1.", ".($1+$2).")"/ge'
This commit is contained in:
@@ -70,7 +70,7 @@ public:
|
||||
if (ShadowFlame_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SHADOWFLAME);
|
||||
ShadowFlame_Timer = 15000 + rand()%7000;
|
||||
ShadowFlame_Timer = urand(15000, 22000);
|
||||
} else ShadowFlame_Timer -= diff;
|
||||
|
||||
//WingBuffet_Timer
|
||||
|
||||
@@ -824,7 +824,7 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
ChaseTimer = 30000;
|
||||
FearTimer = 25000 + rand()%10000;
|
||||
FearTimer = urand(25000, 35000);
|
||||
SwipeTimer = 5000;
|
||||
|
||||
HoodGUID = 0;
|
||||
|
||||
@@ -467,7 +467,7 @@ struct boss_priestess_lackey_commonAI : public ScriptedAI
|
||||
if (ResetThreatTimer <= diff)
|
||||
{
|
||||
DoResetThreat();
|
||||
ResetThreatTimer = 5000 + rand()%15000;
|
||||
ResetThreatTimer = urand(5000, 20000);
|
||||
} else ResetThreatTimer -= diff;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -122,13 +122,13 @@ public:
|
||||
instance->SetData(DATA_SELIN_EVENT, NOT_STARTED);
|
||||
} else sLog->outError(ERROR_INST_DATA);
|
||||
|
||||
DrainLifeTimer = 3000 + rand()%4000;
|
||||
DrainLifeTimer = urand(3000, 7000);
|
||||
DrainManaTimer = DrainLifeTimer + 5000;
|
||||
FelExplosionTimer = 2100;
|
||||
if (IsHeroic())
|
||||
DrainCrystalTimer = 10000 + rand()%5000;
|
||||
DrainCrystalTimer = urand(10000, 15000);
|
||||
else
|
||||
DrainCrystalTimer = 20000 + rand()%5000;
|
||||
DrainCrystalTimer = urand(20000, 25000);
|
||||
EmpowerTimer = 10000;
|
||||
|
||||
IsDraining = false;
|
||||
@@ -285,9 +285,9 @@ public:
|
||||
{
|
||||
SelectNearestCrystal();
|
||||
if (IsHeroic())
|
||||
DrainCrystalTimer = 10000 + rand()%5000;
|
||||
DrainCrystalTimer = urand(10000, 15000);
|
||||
else
|
||||
DrainCrystalTimer = 20000 + rand()%5000;
|
||||
DrainCrystalTimer = urand(20000, 25000);
|
||||
} else DrainCrystalTimer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -108,14 +108,14 @@ public:
|
||||
if (ShadowShield_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SHADOWSHIELD);
|
||||
ShadowShield_Timer = 14000 + rand()%14000;
|
||||
ShadowShield_Timer = urand(14000, 28000);
|
||||
} else ShadowShield_Timer -= diff;
|
||||
|
||||
//Curse_Timer
|
||||
if (Curse_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CURSE);
|
||||
Curse_Timer = 15000 + rand()%12000;
|
||||
Curse_Timer = urand(15000, 27000);
|
||||
} else Curse_Timer -= diff;
|
||||
|
||||
//Teleporting Random Target to one of the six pre boss rooms and spawn 3-4 skeletons near the gamer.
|
||||
@@ -214,7 +214,7 @@ public:
|
||||
break;
|
||||
}
|
||||
}
|
||||
Teleport_Timer = 20000 + rand()%15000;
|
||||
Teleport_Timer = urand(20000, 35000);
|
||||
} else Teleport_Timer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Cleave_Timer = 2000 + rand()%6000;
|
||||
Cleave_Timer = urand(2000, 8000);
|
||||
me->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_MAGIC, true);
|
||||
}
|
||||
|
||||
@@ -192,7 +192,7 @@ public:
|
||||
DoCast(me->getVictim(), SPELL_CLEAVE);
|
||||
|
||||
//5-8 seconds
|
||||
Cleave_Timer = 5000 + rand()%3000;
|
||||
Cleave_Timer = urand(5000, 8000);
|
||||
} else Cleave_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
if (m_uiMindBlast_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MINDBLAST);
|
||||
m_uiMindBlast_Timer = 15000 + rand()%5000;
|
||||
m_uiMindBlast_Timer = urand(15000, 20000);
|
||||
} else m_uiMindBlast_Timer -= uiDiff;
|
||||
|
||||
//CrusadersHammer
|
||||
@@ -173,7 +173,7 @@ public:
|
||||
if (m_uiMindBlast_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MINDBLAST);
|
||||
m_uiMindBlast_Timer = 15000 + rand()%5000;
|
||||
m_uiMindBlast_Timer = urand(15000, 20000);
|
||||
} else m_uiMindBlast_Timer -= uiDiff;
|
||||
|
||||
//ShadowShock
|
||||
|
||||
@@ -612,7 +612,7 @@ public:
|
||||
KalecGUID = 0;
|
||||
}
|
||||
|
||||
ShadowBoltTimer = 7000 + rand()%3 * 1000;
|
||||
ShadowBoltTimer = urand(7, 10) * 1000;
|
||||
AgonyCurseTimer = 20000;
|
||||
CorruptionStrikeTimer = 13000;
|
||||
CheckTimer = 1000;
|
||||
|
||||
@@ -296,13 +296,13 @@ class boss_akilzon : public CreatureScript
|
||||
Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1);
|
||||
if (!target) target = me->getVictim();
|
||||
DoCast(target, SPELL_GUST_OF_WIND);
|
||||
GustOfWind_Timer = (20+rand()%10)*1000; //20 to 30 seconds(bosskillers)
|
||||
GustOfWind_Timer = urand(20, 30) * 1000; //20 to 30 seconds(bosskillers)
|
||||
} else GustOfWind_Timer -= diff;
|
||||
|
||||
if (CallLighting_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CALL_LIGHTNING);
|
||||
CallLighting_Timer = (12 + rand()%5)*1000; //totaly random timer. can't find any info on this
|
||||
CallLighting_Timer = urand(12, 17) * 1000; //totaly random timer. can't find any info on this
|
||||
} else CallLighting_Timer -= diff;
|
||||
|
||||
if (!isRaining && ElectricalStorm_Timer < uint32(8000 + rand() % 5000))
|
||||
@@ -406,7 +406,7 @@ class mob_akilzon_eagle : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
EagleSwoop_Timer = 5000 + rand()%5000;
|
||||
EagleSwoop_Timer = urand(5000, 10000);
|
||||
arrived = true;
|
||||
TargetGUID = 0;
|
||||
me->SetUnitMovementFlags(MOVEMENTFLAG_LEVITATING);
|
||||
@@ -425,7 +425,7 @@ class mob_akilzon_eagle : public CreatureScript
|
||||
DoCast(target, SPELL_EAGLE_SWOOP, true);
|
||||
TargetGUID = 0;
|
||||
me->SetSpeed(MOVE_RUN, 1.2f);
|
||||
EagleSwoop_Timer = 5000 + rand()%5000;
|
||||
EagleSwoop_Timer = urand(5000, 10000);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -263,7 +263,7 @@ class boss_halazzi : public CreatureScript
|
||||
DoCast(target, SPELL_EARTHSHOCK);
|
||||
else
|
||||
DoCast(target, SPELL_FLAMESHOCK);
|
||||
ShockTimer = 10000 + rand()%5000;
|
||||
ShockTimer = urand(10000, 15000);
|
||||
}
|
||||
} else ShockTimer -= diff;
|
||||
|
||||
|
||||
@@ -145,10 +145,10 @@ class boss_nalorakk : public CreatureScript
|
||||
if (instance)
|
||||
instance->SetData(DATA_NALORAKKEVENT, NOT_STARTED);
|
||||
|
||||
Surge_Timer = 15000 + rand()%5000;
|
||||
BrutalSwipe_Timer = 7000 + rand()%5000;
|
||||
Mangle_Timer = 10000 + rand()%5000;
|
||||
ShapeShift_Timer = 45000 + rand()%5000;
|
||||
Surge_Timer = urand(15000, 20000);
|
||||
BrutalSwipe_Timer = urand(7000, 12000);
|
||||
Mangle_Timer = urand(10000, 15000);
|
||||
ShapeShift_Timer = urand(45000, 50000);
|
||||
Berserk_Timer = 600000;
|
||||
|
||||
inBearForm = false;
|
||||
@@ -371,10 +371,10 @@ class boss_nalorakk : public CreatureScript
|
||||
me->MonsterYell(YELL_SHIFTEDTOTROLL, LANG_UNIVERSAL, 0);
|
||||
DoPlaySoundToSet(me, SOUND_YELL_TOTROLL);
|
||||
me->RemoveAurasDueToSpell(SPELL_BEARFORM);
|
||||
Surge_Timer = 15000 + rand()%5000;
|
||||
BrutalSwipe_Timer = 7000 + rand()%5000;
|
||||
Mangle_Timer = 10000 + rand()%5000;
|
||||
ShapeShift_Timer = 45000 + rand()%5000;
|
||||
Surge_Timer = urand(15000, 20000);
|
||||
BrutalSwipe_Timer = urand(7000, 12000);
|
||||
Mangle_Timer = urand(10000, 15000);
|
||||
ShapeShift_Timer = urand(45000, 50000);
|
||||
inBearForm = false;
|
||||
}
|
||||
else
|
||||
@@ -385,8 +385,8 @@ class boss_nalorakk : public CreatureScript
|
||||
DoCast(me, SPELL_BEARFORM, true);
|
||||
LaceratingSlash_Timer = 2000; // dur 18s
|
||||
RendFlesh_Timer = 3000; // dur 5s
|
||||
DeafeningRoar_Timer = 5000 + rand()%5000; // dur 2s
|
||||
ShapeShift_Timer = 20000 + rand()%5000; // dur 30s
|
||||
DeafeningRoar_Timer = urand(5000, 10000); // dur 2s
|
||||
ShapeShift_Timer = urand(20000, 25000); // dur 30s
|
||||
inBearForm = true;
|
||||
}
|
||||
} else ShapeShift_Timer -= diff;
|
||||
@@ -396,7 +396,7 @@ class boss_nalorakk : public CreatureScript
|
||||
if (BrutalSwipe_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_BRUTALSWIPE);
|
||||
BrutalSwipe_Timer = 7000 + rand()%5000;
|
||||
BrutalSwipe_Timer = urand(7000, 12000);
|
||||
} else BrutalSwipe_Timer -= diff;
|
||||
|
||||
if (Mangle_Timer <= diff)
|
||||
@@ -406,7 +406,7 @@ class boss_nalorakk : public CreatureScript
|
||||
DoCast(me->getVictim(), SPELL_MANGLE);
|
||||
Mangle_Timer = 1000;
|
||||
}
|
||||
else Mangle_Timer = 10000 + rand()%5000;
|
||||
else Mangle_Timer = urand(10000, 15000);
|
||||
} else Mangle_Timer -= diff;
|
||||
|
||||
if (Surge_Timer <= diff)
|
||||
@@ -416,7 +416,7 @@ class boss_nalorakk : public CreatureScript
|
||||
Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 45, true);
|
||||
if (target)
|
||||
DoCast(target, SPELL_SURGE);
|
||||
Surge_Timer = 15000 + rand()%5000;
|
||||
Surge_Timer = urand(15000, 20000);
|
||||
} else Surge_Timer -= diff;
|
||||
}
|
||||
else
|
||||
@@ -424,19 +424,19 @@ class boss_nalorakk : public CreatureScript
|
||||
if (LaceratingSlash_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_LACERATINGSLASH);
|
||||
LaceratingSlash_Timer = 18000 + rand()%5000;
|
||||
LaceratingSlash_Timer = urand(18000, 23000);
|
||||
} else LaceratingSlash_Timer -= diff;
|
||||
|
||||
if (RendFlesh_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_RENDFLESH);
|
||||
RendFlesh_Timer = 5000 + rand()%5000;
|
||||
RendFlesh_Timer = urand(5000, 10000);
|
||||
} else RendFlesh_Timer -= diff;
|
||||
|
||||
if (DeafeningRoar_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_DEAFENINGROAR);
|
||||
DeafeningRoar_Timer = 15000 + rand()%5000;
|
||||
DeafeningRoar_Timer = urand(15000, 20000);
|
||||
} else DeafeningRoar_Timer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -430,7 +430,7 @@ class boss_zuljin : public CreatureScript
|
||||
if (Whirlwind_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_WHIRLWIND);
|
||||
Whirlwind_Timer = 15000 + rand()%5000;
|
||||
Whirlwind_Timer = urand(15000, 20000);
|
||||
} else Whirlwind_Timer -= diff;
|
||||
|
||||
if (Grievous_Throw_Timer <= diff)
|
||||
@@ -489,7 +489,7 @@ class boss_zuljin : public CreatureScript
|
||||
++Claw_Counter;
|
||||
if (Claw_Counter == 12)
|
||||
{
|
||||
Claw_Rage_Timer = 15000 + rand()%5000;
|
||||
Claw_Rage_Timer = urand(15000, 20000);
|
||||
me->SetSpeed(MOVE_RUN, 1.2f);
|
||||
AttackStart(Unit::GetUnit(*me, TankGUID));
|
||||
TankGUID = 0;
|
||||
@@ -537,7 +537,7 @@ class boss_zuljin : public CreatureScript
|
||||
++Claw_Counter;
|
||||
if (Claw_Counter == 9)
|
||||
{
|
||||
Lynx_Rush_Timer = 15000 + rand()%5000;
|
||||
Lynx_Rush_Timer = urand(15000, 20000);
|
||||
me->SetSpeed(MOVE_RUN, 1.2f);
|
||||
AttackStart(Unit::GetUnit(*me, TankGUID));
|
||||
TankGUID = 0;
|
||||
|
||||
@@ -66,7 +66,7 @@ class boss_gahzranka : public CreatureScript
|
||||
if (Frostbreath_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_FROSTBREATH);
|
||||
Frostbreath_Timer = 7000 + rand()%4000;
|
||||
Frostbreath_Timer = urand(7000, 11000);
|
||||
} else Frostbreath_Timer -= diff;
|
||||
|
||||
//MassiveGeyser_Timer
|
||||
@@ -75,14 +75,14 @@ class boss_gahzranka : public CreatureScript
|
||||
DoCast(me->getVictim(), SPELL_MASSIVEGEYSER);
|
||||
DoResetThreat();
|
||||
|
||||
MassiveGeyser_Timer = 22000 + rand()%10000;
|
||||
MassiveGeyser_Timer = urand(22000, 32000);
|
||||
} else MassiveGeyser_Timer -= diff;
|
||||
|
||||
//Slam_Timer
|
||||
if (Slam_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SLAM);
|
||||
Slam_Timer = 12000 + rand()%8000;
|
||||
Slam_Timer = urand(12000, 20000);
|
||||
} else Slam_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -47,8 +47,8 @@ class boss_grilek : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Avartar_Timer = 15000 + rand()%10000;
|
||||
GroundTremor_Timer = 8000 + rand()%8000;
|
||||
Avartar_Timer = urand(15000, 25000);
|
||||
GroundTremor_Timer = urand(8000, 16000);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
@@ -75,14 +75,14 @@ class boss_grilek : public CreatureScript
|
||||
if (target)
|
||||
AttackStart(target);
|
||||
|
||||
Avartar_Timer = 25000 + rand()%10000;
|
||||
Avartar_Timer = urand(25000, 35000);
|
||||
} else Avartar_Timer -= diff;
|
||||
|
||||
//GroundTremor_Timer
|
||||
if (GroundTremor_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_GROUNDTREMOR);
|
||||
GroundTremor_Timer = 12000 + rand()%4000;
|
||||
GroundTremor_Timer = urand(12000, 16000);
|
||||
} else GroundTremor_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -126,7 +126,7 @@ class boss_hakkar : public CreatureScript
|
||||
if (CorruptedBlood_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CORRUPTEDBLOOD);
|
||||
CorruptedBlood_Timer = 30000 + rand()%15000;
|
||||
CorruptedBlood_Timer = urand(30000, 45000);
|
||||
} else CorruptedBlood_Timer -= diff;
|
||||
|
||||
//CauseInsanity_Timer
|
||||
@@ -135,7 +135,7 @@ class boss_hakkar : public CreatureScript
|
||||
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_CAUSEINSANITY);
|
||||
|
||||
CauseInsanity_Timer = 35000 + rand()%8000;
|
||||
CauseInsanity_Timer = urand(35000, 43000);
|
||||
} else CauseInsanity_Timer -= diff;*/
|
||||
|
||||
//WillOfHakkar_Timer
|
||||
@@ -144,7 +144,7 @@ class boss_hakkar : public CreatureScript
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_WILLOFHAKKAR);
|
||||
|
||||
WillOfHakkar_Timer = 25000 + rand()%10000;
|
||||
WillOfHakkar_Timer = urand(25000, 35000);
|
||||
} else WillOfHakkar_Timer -= diff;
|
||||
|
||||
if (!Enraged && Enrage_Timer <= diff)
|
||||
@@ -163,7 +163,7 @@ class boss_hakkar : public CreatureScript
|
||||
if (AspectOfJeklik_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ASPECT_OF_JEKLIK);
|
||||
AspectOfJeklik_Timer = 10000 + rand()%4000;
|
||||
AspectOfJeklik_Timer = urand(10000, 14000);
|
||||
} else AspectOfJeklik_Timer -= diff;
|
||||
}
|
||||
}
|
||||
@@ -234,7 +234,7 @@ class boss_hakkar : public CreatureScript
|
||||
DoCast(me, SPELL_ASPECT_OF_ARLOKK);
|
||||
DoResetThreat();
|
||||
|
||||
AspectOfArlokk_Timer = 10000 + rand()%5000;
|
||||
AspectOfArlokk_Timer = urand(10000, 15000);
|
||||
} else AspectOfArlokk_Timer -= diff;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,9 +48,9 @@ class boss_hazzarah : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
ManaBurn_Timer = 4000 + rand()%6000;
|
||||
Sleep_Timer = 10000 + rand()%8000;
|
||||
Illusions_Timer = 10000 + rand()%8000;
|
||||
ManaBurn_Timer = urand(4000, 10000);
|
||||
Sleep_Timer = urand(10000, 18000);
|
||||
Illusions_Timer = urand(10000, 18000);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
@@ -66,14 +66,14 @@ class boss_hazzarah : public CreatureScript
|
||||
if (ManaBurn_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MANABURN);
|
||||
ManaBurn_Timer = 8000 + rand()%8000;
|
||||
ManaBurn_Timer = urand(8000, 16000);
|
||||
} else ManaBurn_Timer -= diff;
|
||||
|
||||
//Sleep_Timer
|
||||
if (Sleep_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SLEEP);
|
||||
Sleep_Timer = 12000 + rand()%8000;
|
||||
Sleep_Timer = urand(12000, 20000);
|
||||
} else Sleep_Timer -= diff;
|
||||
|
||||
//Illusions_Timer
|
||||
@@ -93,7 +93,7 @@ class boss_hazzarah : public CreatureScript
|
||||
Illusion->AI()->AttackStart(target);
|
||||
}
|
||||
|
||||
Illusions_Timer = 15000 + rand()%10000;
|
||||
Illusions_Timer = urand(15000, 25000);
|
||||
} else Illusions_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -119,19 +119,19 @@ class boss_jeklik : public CreatureScript
|
||||
AttackStart(target);
|
||||
}
|
||||
|
||||
Charge_Timer = 15000 + rand()%15000;
|
||||
Charge_Timer = urand(15000, 30000);
|
||||
} else Charge_Timer -= diff;
|
||||
|
||||
if (SonicBurst_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SONICBURST);
|
||||
SonicBurst_Timer = 8000 + rand()%5000;
|
||||
SonicBurst_Timer = urand(8000, 13000);
|
||||
} else SonicBurst_Timer -= diff;
|
||||
|
||||
if (Screech_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SCREECH);
|
||||
Screech_Timer = 18000 + rand()%8000;
|
||||
Screech_Timer = urand(18000, 26000);
|
||||
} else Screech_Timer -= diff;
|
||||
|
||||
if (SpawnBats_Timer <= diff)
|
||||
@@ -168,7 +168,7 @@ class boss_jeklik : public CreatureScript
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
DoCast(target, SPELL_SHADOW_WORD_PAIN);
|
||||
ShadowWordPain_Timer = 12000 + rand()%6000;
|
||||
ShadowWordPain_Timer = urand(12000, 18000);
|
||||
}
|
||||
}ShadowWordPain_Timer -=diff;
|
||||
|
||||
@@ -182,14 +182,14 @@ class boss_jeklik : public CreatureScript
|
||||
{
|
||||
me->InterruptNonMeleeSpells(false);
|
||||
DoCast(me->getVictim(), SPELL_CHAIN_MIND_FLAY);
|
||||
ChainMindFlay_Timer = 15000 + rand()%15000;
|
||||
ChainMindFlay_Timer = urand(15000, 30000);
|
||||
}ChainMindFlay_Timer -=diff;
|
||||
|
||||
if (GreaterHeal_Timer <= diff)
|
||||
{
|
||||
me->InterruptNonMeleeSpells(false);
|
||||
DoCast(me, SPELL_GREATERHEAL);
|
||||
GreaterHeal_Timer = 25000 + rand()%10000;
|
||||
GreaterHeal_Timer = urand(25000, 35000);
|
||||
}GreaterHeal_Timer -=diff;
|
||||
|
||||
if (SpawnFlyingBats_Timer <= diff)
|
||||
@@ -202,7 +202,7 @@ class boss_jeklik : public CreatureScript
|
||||
if (FlyingBat)
|
||||
FlyingBat->AI()->AttackStart(target);
|
||||
|
||||
SpawnFlyingBats_Timer = 10000 + rand()%5000;
|
||||
SpawnFlyingBats_Timer = urand(10000, 15000);
|
||||
} else SpawnFlyingBats_Timer -=diff;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -83,7 +83,7 @@ class boss_jindo : public CreatureScript
|
||||
if (BrainWashTotem_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_BRAINWASHTOTEM);
|
||||
BrainWashTotem_Timer = 18000 + rand()%8000;
|
||||
BrainWashTotem_Timer = urand(18000, 26000);
|
||||
} else BrainWashTotem_Timer -= diff;
|
||||
|
||||
//HealingWard_Timer
|
||||
@@ -91,7 +91,7 @@ class boss_jindo : public CreatureScript
|
||||
{
|
||||
//DoCast(me, SPELL_POWERFULLHEALINGWARD);
|
||||
me->SummonCreature(14987, me->GetPositionX()+3, me->GetPositionY()-2, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000);
|
||||
HealingWard_Timer = 14000 + rand()%6000;
|
||||
HealingWard_Timer = urand(14000, 20000);
|
||||
} else HealingWard_Timer -= diff;
|
||||
|
||||
//Hex_Timer
|
||||
@@ -102,7 +102,7 @@ class boss_jindo : public CreatureScript
|
||||
if (DoGetThreat(me->getVictim()))
|
||||
DoModifyThreatPercent(me->getVictim(), -80);
|
||||
|
||||
Hex_Timer = 12000 + rand()%8000;
|
||||
Hex_Timer = urand(12000, 20000);
|
||||
} else Hex_Timer -= diff;
|
||||
|
||||
//Casting the delusion curse with a shade. So shade will attack the same target with the curse.
|
||||
@@ -117,7 +117,7 @@ class boss_jindo : public CreatureScript
|
||||
Shade->AI()->AttackStart(target);
|
||||
}
|
||||
|
||||
Delusions_Timer = 4000 + rand()%8000;
|
||||
Delusions_Timer = urand(4000, 12000);
|
||||
} else Delusions_Timer -= diff;
|
||||
|
||||
//Teleporting a random gamer and spawning 9 skeletons that will attack this gamer
|
||||
@@ -162,7 +162,7 @@ class boss_jindo : public CreatureScript
|
||||
Skeletons->AI()->AttackStart(target);
|
||||
}
|
||||
|
||||
Teleport_Timer = 15000 + rand()%8000;
|
||||
Teleport_Timer = urand(15000, 23000);
|
||||
} else Teleport_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -325,7 +325,7 @@ class mob_ohgan : public CreatureScript
|
||||
if (SunderArmor_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SUNDERARMOR);
|
||||
SunderArmor_Timer = 10000 + rand()%5000;
|
||||
SunderArmor_Timer = urand(10000, 15000);
|
||||
} else SunderArmor_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -105,13 +105,13 @@ class boss_marli : public CreatureScript
|
||||
if (PoisonVolley_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_POISONVOLLEY);
|
||||
PoisonVolley_Timer = 10000 + rand()%10000;
|
||||
PoisonVolley_Timer = urand(10000, 20000);
|
||||
} else PoisonVolley_Timer -= diff;
|
||||
|
||||
if (!PhaseTwo && Aspect_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ASPECT_OF_MARLI);
|
||||
Aspect_Timer = 13000 + rand()%5000;
|
||||
Aspect_Timer = urand(13000, 18000);
|
||||
} else Aspect_Timer -= diff;
|
||||
|
||||
if (!Spawned && SpawnStartSpiders_Timer <= diff)
|
||||
@@ -149,7 +149,7 @@ class boss_marli : public CreatureScript
|
||||
Creature* Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000);
|
||||
if (Spider)
|
||||
Spider->AI()->AttackStart(target);
|
||||
SpawnSpider_Timer = 12000 + rand()%5000;
|
||||
SpawnSpider_Timer = urand(12000, 17000);
|
||||
} else SpawnSpider_Timer -= diff;
|
||||
|
||||
if (!PhaseTwo && Transform_Timer <= diff)
|
||||
|
||||
@@ -55,11 +55,11 @@ class boss_renataki : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Invisible_Timer = 8000 + rand()%10000;
|
||||
Invisible_Timer = urand(8000, 18000);
|
||||
Ambush_Timer = 3000;
|
||||
Visible_Timer = 4000;
|
||||
Aggro_Timer = 15000 + rand()%10000;
|
||||
ThousandBlades_Timer = 4000 + rand()%4000;
|
||||
Aggro_Timer = urand(15000, 25000);
|
||||
ThousandBlades_Timer = urand(4000, 8000);
|
||||
|
||||
Invisible = false;
|
||||
Ambushed = false;
|
||||
@@ -85,7 +85,7 @@ class boss_renataki : public CreatureScript
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
Invisible = true;
|
||||
|
||||
Invisible_Timer = 15000 + rand()%15000;
|
||||
Invisible_Timer = urand(15000, 30000);
|
||||
} else Invisible_Timer -= diff;
|
||||
|
||||
if (Invisible)
|
||||
@@ -135,13 +135,13 @@ class boss_renataki : public CreatureScript
|
||||
if (target)
|
||||
AttackStart(target);
|
||||
|
||||
Aggro_Timer = 7000 + rand()%13000;
|
||||
Aggro_Timer = urand(7000, 20000);
|
||||
} else Aggro_Timer -= diff;
|
||||
|
||||
if (ThousandBlades_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_THOUSANDBLADES);
|
||||
ThousandBlades_Timer = 7000 + rand()%5000;
|
||||
ThousandBlades_Timer = urand(7000, 12000);
|
||||
} else ThousandBlades_Timer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -167,13 +167,13 @@ class boss_thekal : public CreatureScript
|
||||
if (!PhaseTwo && MortalCleave_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MORTALCLEAVE);
|
||||
MortalCleave_Timer = 15000 + rand()%5000;
|
||||
MortalCleave_Timer = urand(15000, 20000);
|
||||
} else MortalCleave_Timer -= diff;
|
||||
|
||||
if (!PhaseTwo && Silence_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SILENCE);
|
||||
Silence_Timer = 20000 + rand()%5000;
|
||||
Silence_Timer = urand(20000, 25000);
|
||||
} else Silence_Timer -= diff;
|
||||
|
||||
if (!PhaseTwo && !WasDead && !HealthAbovePct(5))
|
||||
@@ -226,7 +226,7 @@ class boss_thekal : public CreatureScript
|
||||
AttackStart(target);
|
||||
}
|
||||
|
||||
Charge_Timer = 15000 + rand()%7000;
|
||||
Charge_Timer = urand(15000, 22000);
|
||||
} else Charge_Timer -= diff;
|
||||
|
||||
if (Frenzy_Timer <= diff)
|
||||
@@ -238,13 +238,13 @@ class boss_thekal : public CreatureScript
|
||||
if (ForcePunch_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SILENCE);
|
||||
ForcePunch_Timer = 16000 + rand()%5000;
|
||||
ForcePunch_Timer = urand(16000, 21000);
|
||||
} else ForcePunch_Timer -= diff;
|
||||
|
||||
if (SummonTigers_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SUMMONTIGERS);
|
||||
SummonTigers_Timer = 10000 + rand()%4000;
|
||||
SummonTigers_Timer = urand(10000, 14000);
|
||||
} else SummonTigers_Timer -= diff;
|
||||
|
||||
if (HealthBelowPct(11) && !Enraged)
|
||||
|
||||
@@ -47,8 +47,8 @@ class boss_wushoolay : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
LightningCloud_Timer = 5000 + rand()%5000;
|
||||
LightningWave_Timer = 8000 + rand()%8000;
|
||||
LightningCloud_Timer = urand(5000, 10000);
|
||||
LightningWave_Timer = urand(8000, 16000);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
@@ -64,7 +64,7 @@ class boss_wushoolay : public CreatureScript
|
||||
if (LightningCloud_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_LIGHTNINGCLOUD);
|
||||
LightningCloud_Timer = 15000 + rand()%5000;
|
||||
LightningCloud_Timer = urand(15000, 20000);
|
||||
} else LightningCloud_Timer -= diff;
|
||||
|
||||
//LightningWave_Timer
|
||||
@@ -74,7 +74,7 @@ class boss_wushoolay : public CreatureScript
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM, 0);
|
||||
if (target) DoCast(target, SPELL_LIGHTNINGWAVE);
|
||||
|
||||
LightningWave_Timer = 12000 + rand()%4000;
|
||||
LightningWave_Timer = urand(12000, 16000);
|
||||
} else LightningWave_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -204,7 +204,7 @@ public:
|
||||
if (timerJustice <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SEAL_OF_JUSTICE);
|
||||
timerJustice = 10000 + rand()%10000;
|
||||
timerJustice = urand(10000, 20000);
|
||||
}
|
||||
else
|
||||
timerJustice -= diff;
|
||||
@@ -215,7 +215,7 @@ public:
|
||||
if (timerJudLight <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_JUDGEMENT_OF_LIGHT);
|
||||
timerJudLight = 10000 + rand()%10000;
|
||||
timerJudLight = urand(10000, 20000);
|
||||
}
|
||||
else
|
||||
timerJudLight -= diff;
|
||||
@@ -226,7 +226,7 @@ public:
|
||||
if (timerCommand <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SEAL_OF_COMMAND);
|
||||
timerCommand = 20000 + rand()%20000;
|
||||
timerCommand = urand(20000, 40000);
|
||||
}
|
||||
else
|
||||
timerCommand -= diff;
|
||||
|
||||
@@ -105,15 +105,15 @@ public:
|
||||
ai->EnterEvadeMode();
|
||||
|
||||
ai->Spells[0].SpellId = SPELL_BLIZZARD;
|
||||
ai->Spells[0].Cooldown = 15000 + rand()%20000;
|
||||
ai->Spells[0].Cooldown = urand(15000, 35000);
|
||||
ai->Spells[0].TargetType = TARGETTYPE_RANDOM;
|
||||
|
||||
ai->Spells[1].SpellId = SPELL_PYROBLAST;
|
||||
ai->Spells[1].Cooldown = 5500 + rand()%4000;
|
||||
ai->Spells[1].Cooldown = urand(5500, 9500);
|
||||
ai->Spells[1].TargetType = TARGETTYPE_RANDOM;
|
||||
|
||||
ai->Spells[2].SpellId = SPELL_SUMMON_ELEMENTALS;
|
||||
ai->Spells[2].Cooldown = 15000 + rand()%30000;
|
||||
ai->Spells[2].Cooldown = urand(15000, 45000);
|
||||
ai->Spells[2].TargetType = TARGETTYPE_SELF;
|
||||
|
||||
return ai;
|
||||
@@ -187,11 +187,11 @@ public:
|
||||
ai->EnterEvadeMode();
|
||||
|
||||
ai->Spells[0].SpellId = SPELL_CHAIN_LIGHTNING;
|
||||
ai->Spells[0].Cooldown = 3000 + rand()%5000;
|
||||
ai->Spells[0].Cooldown = urand(3000, 8000);
|
||||
ai->Spells[0].TargetType = TARGETTYPE_VICTIM;
|
||||
|
||||
ai->Spells[1].SpellId = SPELL_SUMMON_DIRE_WOLF;
|
||||
ai->Spells[1].Cooldown = 6000 + rand()%35000;
|
||||
ai->Spells[1].Cooldown = urand(6000, 41000);
|
||||
ai->Spells[1].TargetType = TARGETTYPE_RANDOM;
|
||||
|
||||
return ai;
|
||||
|
||||
+4
-4
@@ -68,9 +68,9 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Holy_Light_Timer = 20000 + rand()%10000;
|
||||
Holy_Light_Timer = urand(20000, 30000);
|
||||
Cleanse_Timer = 10000;
|
||||
HammerOfJustice_Timer = 20000 + rand()%15000;
|
||||
HammerOfJustice_Timer = urand(20000, 35000);
|
||||
HolyShield_Timer = 240000;
|
||||
DevotionAura_Timer = 3000;
|
||||
Consecration_Timer = 8000;
|
||||
@@ -134,14 +134,14 @@ public:
|
||||
if (DevotionAura_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_DEVOTION_AURA);
|
||||
DevotionAura_Timer = 45000 + rand()%10000;
|
||||
DevotionAura_Timer = urand(45000, 55000);
|
||||
} else DevotionAura_Timer -= diff;
|
||||
|
||||
//Consecration
|
||||
if (Consecration_Timer <= diff)
|
||||
{
|
||||
//DoCast(me->getVictim(), SPELL_CONSECRATION);
|
||||
Consecration_Timer = 5000 + rand()%5000;
|
||||
Consecration_Timer = urand(5000, 10000);
|
||||
} else Consecration_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
+3
-3
@@ -68,8 +68,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
SandBreath_Timer = 8000 + rand()%8000;
|
||||
ImpendingDeath_Timer = 25000 + rand()%5000;
|
||||
SandBreath_Timer = urand(8000, 16000);
|
||||
ImpendingDeath_Timer = urand(25000, 30000);
|
||||
WingBuffet_Timer = 35000;
|
||||
Mda_Timer = 40000;
|
||||
}
|
||||
@@ -108,7 +108,7 @@ public:
|
||||
|
||||
DoScriptText(RAND(SAY_BREATH1, SAY_BREATH2), me);
|
||||
|
||||
SandBreath_Timer = 10000 + rand()%10000;
|
||||
SandBreath_Timer = urand(10000, 20000);
|
||||
} else SandBreath_Timer -= diff;
|
||||
|
||||
if (ImpendingDeath_Timer <= diff)
|
||||
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
{
|
||||
AmnenarsWrath_Timer = 8000;
|
||||
FrostBolt_Timer = 1000;
|
||||
FrostNova_Timer = 10000 + rand()%5000;
|
||||
FrostNova_Timer = urand(10000, 15000);
|
||||
Spectrals30 = false;
|
||||
Spectrals60 = false;
|
||||
Hp = false;
|
||||
|
||||
@@ -65,8 +65,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Cleave_Timer = 4000 + rand()%4000;
|
||||
ToxicVolley_Timer = 6000 + rand()%6000;
|
||||
Cleave_Timer = urand(4000, 8000);
|
||||
ToxicVolley_Timer = urand(6000, 12000);
|
||||
Check_Timer = 2000;
|
||||
|
||||
VemDead = false;
|
||||
@@ -98,14 +98,14 @@ public:
|
||||
if (Cleave_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CLEAVE);
|
||||
Cleave_Timer = 5000 + rand()%7000;
|
||||
Cleave_Timer = urand(5000, 12000);
|
||||
} else Cleave_Timer -= diff;
|
||||
|
||||
//ToxicVolley_Timer
|
||||
if (ToxicVolley_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_TOXIC_VOLLEY);
|
||||
ToxicVolley_Timer = 10000 + rand()%5000;
|
||||
ToxicVolley_Timer = urand(10000, 15000);
|
||||
} else ToxicVolley_Timer -= diff;
|
||||
|
||||
if (!HealthAbovePct(5) && !Death)
|
||||
@@ -161,8 +161,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Charge_Timer = 15000 + rand()%12000;
|
||||
KnockBack_Timer = 8000 + rand()%12000;
|
||||
Charge_Timer = urand(15000, 27000);
|
||||
KnockBack_Timer = urand(8000, 20000);
|
||||
Enrage_Timer = 120000;
|
||||
|
||||
Enraged = false;
|
||||
@@ -202,7 +202,7 @@ public:
|
||||
AttackStart(target);
|
||||
}
|
||||
|
||||
Charge_Timer = 8000 + rand()%8000;
|
||||
Charge_Timer = urand(8000, 16000);
|
||||
} else Charge_Timer -= diff;
|
||||
|
||||
//KnockBack_Timer
|
||||
@@ -211,7 +211,7 @@ public:
|
||||
DoCast(me->getVictim(), SPELL_KNOCKBACK);
|
||||
if (DoGetThreat(me->getVictim()))
|
||||
DoModifyThreatPercent(me->getVictim(), -80);
|
||||
KnockBack_Timer = 15000 + rand()%10000;
|
||||
KnockBack_Timer = urand(15000, 25000);
|
||||
} else KnockBack_Timer -= diff;
|
||||
|
||||
//Enrage_Timer
|
||||
@@ -254,8 +254,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Heal_Timer = 25000 + rand()%15000;
|
||||
Fear_Timer = 12000 + rand()%12000;
|
||||
Heal_Timer = urand(25000, 40000);
|
||||
Fear_Timer = urand(12000, 24000);
|
||||
Check_Timer = 2000;
|
||||
|
||||
VemDead = false;
|
||||
|
||||
@@ -63,9 +63,9 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
MortalWound_Timer = 10000 + rand()%5000;
|
||||
SpawnHatchlings_Timer = 6000 + rand()%6000;
|
||||
SpawnSpawns_Timer = 15000 + rand()%30000;
|
||||
MortalWound_Timer = urand(10000, 15000);
|
||||
SpawnHatchlings_Timer = urand(6000, 12000);
|
||||
SpawnSpawns_Timer = urand(15000, 45000);
|
||||
}
|
||||
|
||||
void SummonSpawn(Unit* victim)
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
if (MortalWound_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MORTAL_WOUND);
|
||||
MortalWound_Timer = 10000 + rand()%10000;
|
||||
MortalWound_Timer = urand(10000, 20000);
|
||||
} else MortalWound_Timer -= diff;
|
||||
|
||||
//Summon 1-3 Spawns of Fankriss at random time.
|
||||
@@ -127,7 +127,7 @@ public:
|
||||
SummonSpawn(SelectTarget(SELECT_TARGET_RANDOM, 0));
|
||||
break;
|
||||
}
|
||||
SpawnSpawns_Timer = 30000 + rand()%30000;
|
||||
SpawnSpawns_Timer = urand(30000, 60000);
|
||||
} else SpawnSpawns_Timer -= diff;
|
||||
|
||||
// Teleporting Random Target to one of the three tunnels and spawn 4 hatchlings near the gamer.
|
||||
@@ -194,7 +194,7 @@ public:
|
||||
break;
|
||||
}
|
||||
}
|
||||
SpawnHatchlings_Timer = 45000 + rand()%15000;
|
||||
SpawnHatchlings_Timer = urand(45000, 60000);
|
||||
} else SpawnHatchlings_Timer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -61,11 +61,11 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Frenzy_Timer = 25000 + rand()%10000;
|
||||
Wyvern_Timer = 18000 + rand()%10000;
|
||||
Frenzy_Timer = urand(25000, 35000);
|
||||
Wyvern_Timer = urand(18000, 28000);
|
||||
Spit_Timer = 8000;
|
||||
PoisonBolt_Timer = 4000;
|
||||
NoxiousPoison_Timer = 10000 + rand()%10000;
|
||||
NoxiousPoison_Timer = urand(10000, 20000);
|
||||
FrenzyBack_Timer = 15000;
|
||||
|
||||
Frenzy = false;
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
DoScriptText(EMOTE_GENERIC_FRENZY_KILL, me);
|
||||
Frenzy = true;
|
||||
PoisonBolt_Timer = 3000;
|
||||
Frenzy_Timer = 25000 + rand()%10000;
|
||||
Frenzy_Timer = urand(25000, 35000);
|
||||
} else Frenzy_Timer -= diff;
|
||||
|
||||
// Wyvern Timer
|
||||
@@ -97,21 +97,21 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_WYVERNSTING);
|
||||
Wyvern_Timer = 15000 + rand()%17000;
|
||||
Wyvern_Timer = urand(15000, 32000);
|
||||
} else Wyvern_Timer -= diff;
|
||||
|
||||
//Spit Timer
|
||||
if (Spit_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ACIDSPIT);
|
||||
Spit_Timer = 5000 + rand()%5000;
|
||||
Spit_Timer = urand(5000, 10000);
|
||||
} else Spit_Timer -= diff;
|
||||
|
||||
//NoxiousPoison_Timer
|
||||
if (NoxiousPoison_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_NOXIOUSPOISON);
|
||||
NoxiousPoison_Timer = 12000 + rand()%12000;
|
||||
NoxiousPoison_Timer = urand(12000, 24000);
|
||||
} else NoxiousPoison_Timer -= diff;
|
||||
|
||||
//PoisonBolt only if frenzy or berserk
|
||||
|
||||
@@ -59,12 +59,12 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Sweep_Timer = 5000 + rand()%5000;
|
||||
SandBlast_Timer = 20000 + rand()%15000;
|
||||
Submerge_Timer = 90000 + rand()%60000;
|
||||
Back_Timer = 30000 + rand()%15000;
|
||||
ChangeTarget_Timer = 5000 + rand()%3000;
|
||||
Spawn_Timer = 10000 + rand()%10000;
|
||||
Sweep_Timer = urand(5000, 10000);
|
||||
SandBlast_Timer = urand(20000, 35000);
|
||||
Submerge_Timer = urand(90000, 150000);
|
||||
Back_Timer = urand(30000, 45000);
|
||||
ChangeTarget_Timer = urand(5000, 8000);
|
||||
Spawn_Timer = urand(10000, 20000);
|
||||
|
||||
Enrage = false;
|
||||
Submerged = false;
|
||||
@@ -85,14 +85,14 @@ public:
|
||||
if (!Submerged && Sweep_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SWEEP);
|
||||
Sweep_Timer = 15000 + rand()%15000;
|
||||
Sweep_Timer = urand(15000, 30000);
|
||||
} else Sweep_Timer -= diff;
|
||||
|
||||
//SandBlast_Timer
|
||||
if (!Submerged && SandBlast_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SANDBLAST);
|
||||
SandBlast_Timer = 20000 + rand()%15000;
|
||||
SandBlast_Timer = urand(20000, 35000);
|
||||
} else SandBlast_Timer -= diff;
|
||||
|
||||
//Submerge_Timer
|
||||
@@ -105,7 +105,7 @@ public:
|
||||
DoCast(me, SPELL_DIRTMOUND_PASSIVE);
|
||||
|
||||
Submerged = true;
|
||||
Back_Timer = 30000 + rand()%15000;
|
||||
Back_Timer = urand(30000, 45000);
|
||||
} else Submerge_Timer -= diff;
|
||||
|
||||
//ChangeTarget_Timer
|
||||
@@ -117,7 +117,7 @@ public:
|
||||
if (target)
|
||||
DoTeleportTo(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ());
|
||||
|
||||
ChangeTarget_Timer = 10000 + rand()%10000;
|
||||
ChangeTarget_Timer = urand(10000, 20000);
|
||||
} else ChangeTarget_Timer -= diff;
|
||||
|
||||
//Back_Timer
|
||||
@@ -129,7 +129,7 @@ public:
|
||||
DoCast(me->getVictim(), SPELL_GROUND_RUPTURE);
|
||||
|
||||
Submerged = false;
|
||||
Submerge_Timer = 60000 + rand()%60000;
|
||||
Submerge_Timer = urand(60000, 120000);
|
||||
} else Back_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -66,9 +66,9 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
WhirlWind_Timer = 30000;
|
||||
WhirlWindRandom_Timer = 3000 + rand()%4000;
|
||||
WhirlWindRandom_Timer = urand(3000, 7000);
|
||||
WhirlWindEnd_Timer = 15000;
|
||||
AggroReset_Timer = 45000 + rand()%10000;
|
||||
AggroReset_Timer = urand(45000, 55000);
|
||||
AggroResetEnd_Timer = 5000;
|
||||
EnrageHard_Timer = 10*60000;
|
||||
|
||||
@@ -111,13 +111,13 @@ public:
|
||||
me->TauntApply(target);
|
||||
AttackStart(target);
|
||||
}
|
||||
WhirlWindRandom_Timer = 3000 + rand()%4000;
|
||||
WhirlWindRandom_Timer = urand(3000, 7000);
|
||||
} else WhirlWindRandom_Timer -= diff;
|
||||
|
||||
if (WhirlWindEnd_Timer <= diff)
|
||||
{
|
||||
WhirlWind = false;
|
||||
WhirlWind_Timer = 25000 + rand()%15000;
|
||||
WhirlWind_Timer = urand(25000, 40000);
|
||||
} else WhirlWindEnd_Timer -= diff;
|
||||
}
|
||||
|
||||
@@ -140,7 +140,7 @@ public:
|
||||
AttackStart(target);
|
||||
}
|
||||
AggroReset = true;
|
||||
AggroReset_Timer = 2000 + rand()%3000;
|
||||
AggroReset_Timer = urand(2000, 5000);
|
||||
} else AggroReset_Timer -= diff;
|
||||
|
||||
if (AggroReset)
|
||||
@@ -149,7 +149,7 @@ public:
|
||||
{
|
||||
AggroReset = false;
|
||||
AggroResetEnd_Timer = 5000;
|
||||
AggroReset_Timer = 35000 + rand()%10000;
|
||||
AggroReset_Timer = urand(35000, 45000);
|
||||
} else AggroResetEnd_Timer -= diff;
|
||||
}
|
||||
|
||||
@@ -207,9 +207,9 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
WhirlWind_Timer = 30000;
|
||||
WhirlWindRandom_Timer = 3000 + rand()%4000;
|
||||
WhirlWindRandom_Timer = urand(3000, 7000);
|
||||
WhirlWindEnd_Timer = 15000;
|
||||
AggroReset_Timer = 45000 + rand()%10000;
|
||||
AggroReset_Timer = urand(45000, 55000);
|
||||
AggroResetEnd_Timer = 5000;
|
||||
KnockBack_Timer = 10000;
|
||||
|
||||
@@ -231,7 +231,7 @@ public:
|
||||
{
|
||||
DoCast(me, SPELL_WHIRLWINDADD);
|
||||
WhirlWind = true;
|
||||
WhirlWind_Timer = 25000 + rand()%15000;
|
||||
WhirlWind_Timer = urand(25000, 40000);
|
||||
WhirlWindEnd_Timer = 15000;
|
||||
} else WhirlWind_Timer -= diff;
|
||||
|
||||
@@ -247,7 +247,7 @@ public:
|
||||
AttackStart(target);
|
||||
}
|
||||
|
||||
WhirlWindRandom_Timer = 3000 + rand()%4000;
|
||||
WhirlWindRandom_Timer = urand(3000, 7000);
|
||||
} else WhirlWindRandom_Timer -= diff;
|
||||
|
||||
if (WhirlWindEnd_Timer <= diff)
|
||||
@@ -269,13 +269,13 @@ public:
|
||||
}
|
||||
|
||||
AggroReset = true;
|
||||
AggroReset_Timer = 2000 + rand()%3000;
|
||||
AggroReset_Timer = urand(2000, 5000);
|
||||
} else AggroReset_Timer -= diff;
|
||||
|
||||
if (KnockBack_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_WHIRLWINDADD);
|
||||
KnockBack_Timer = 10000 + rand()%10000;
|
||||
KnockBack_Timer = urand(10000, 20000);
|
||||
} else KnockBack_Timer -= diff;
|
||||
}
|
||||
|
||||
@@ -285,7 +285,7 @@ public:
|
||||
{
|
||||
AggroReset = false;
|
||||
AggroResetEnd_Timer = 5000;
|
||||
AggroReset_Timer = 30000 + rand()%10000;
|
||||
AggroReset_Timer = urand(30000, 40000);
|
||||
} else AggroResetEnd_Timer -= diff;
|
||||
}
|
||||
|
||||
|
||||
@@ -82,10 +82,10 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
ArcaneExplosion_Timer = 6000 + rand()%6000;
|
||||
ArcaneExplosion_Timer = urand(6000, 12000);
|
||||
EarthShock_Timer = 2000;
|
||||
FullFillment_Timer = 15000;
|
||||
Blink_Timer = 8000 + rand()%12000;
|
||||
Blink_Timer = urand(8000, 20000);
|
||||
Invisible_Timer = 500;
|
||||
|
||||
Images75 = false;
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
if (ArcaneExplosion_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ARCANE_EXPLOSION);
|
||||
ArcaneExplosion_Timer = 8000 + rand()%10000;
|
||||
ArcaneExplosion_Timer = urand(8000, 18000);
|
||||
} else ArcaneExplosion_Timer -= diff;
|
||||
|
||||
//If we are within range melee the target
|
||||
@@ -171,7 +171,7 @@ public:
|
||||
}
|
||||
DoStopAttack();
|
||||
|
||||
Blink_Timer= 20000 + rand()%20000;
|
||||
Blink_Timer= urand(20000, 40000);
|
||||
} else Blink_Timer -= diff;
|
||||
|
||||
int procent = (int) (me->GetHealthPct() + 0.5f);
|
||||
|
||||
@@ -88,7 +88,7 @@ struct boss_twinemperorsAI : public ScriptedAI
|
||||
AfterTeleport = false;
|
||||
tspellcasted = false;
|
||||
AfterTeleportTimer = 0;
|
||||
Abuse_Bug_Timer = 10000 + rand()%7000;
|
||||
Abuse_Bug_Timer = urand(10000, 17000);
|
||||
BugsTimer = 2000;
|
||||
me->ClearUnitState(UNIT_STAT_STUNNED);
|
||||
DontYellWhenDead = false;
|
||||
@@ -347,7 +347,7 @@ struct boss_twinemperorsAI : public ScriptedAI
|
||||
if (c)
|
||||
{
|
||||
CastSpellOnBug(c);
|
||||
Abuse_Bug_Timer = 10000 + rand()%7000;
|
||||
Abuse_Bug_Timer = urand(10000, 17000);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -407,9 +407,9 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
TwinReset();
|
||||
UpperCut_Timer = 14000 + rand()%15000;
|
||||
UnbalancingStrike_Timer = 8000 + rand()%10000;
|
||||
Scarabs_Timer = 7000 + rand()%7000;
|
||||
UpperCut_Timer = urand(14000, 29000);
|
||||
UnbalancingStrike_Timer = urand(8000, 18000);
|
||||
Scarabs_Timer = urand(7000, 14000);
|
||||
|
||||
//Added. Can be removed if its included in DB.
|
||||
me->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_MAGIC, true);
|
||||
@@ -495,9 +495,9 @@ public:
|
||||
{
|
||||
TwinReset();
|
||||
ShadowBolt_Timer = 0;
|
||||
Blizzard_Timer = 15000 + rand()%5000;
|
||||
Blizzard_Timer = urand(15000, 20000);
|
||||
ArcaneBurst_Timer = 1000;
|
||||
Scorpions_Timer = 7000 + rand()%7000;
|
||||
Scorpions_Timer = urand(7000, 14000);
|
||||
|
||||
//Added. Can be removed if its included in DB.
|
||||
me->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, true);
|
||||
|
||||
@@ -243,7 +243,7 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
Dynamite_Timer = 8000;
|
||||
Emote_Timer = 120000 + rand()%30000;
|
||||
Emote_Timer = urand(120000, 150000);
|
||||
|
||||
me->setFaction(NormFaction);
|
||||
me->SetUInt32Value(UNIT_NPC_FLAGS, NpcFlags);
|
||||
@@ -264,7 +264,7 @@ public:
|
||||
{
|
||||
DoScriptText(SAY_TEXT, me);
|
||||
DoScriptText(SAY_EMOTE, me);
|
||||
Emote_Timer = 120000 + rand()%30000;
|
||||
Emote_Timer = urand(120000, 150000);
|
||||
} else Emote_Timer -= diff;
|
||||
}
|
||||
else if (IsTreeEvent)
|
||||
|
||||
@@ -62,11 +62,11 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
MarkOfFrost_Timer = 35000;
|
||||
ManaStorm_Timer = 5000 + rand()%12000;
|
||||
Chill_Timer = 10000 + rand()%20000;
|
||||
Breath_Timer = 2000 + rand()%6000;
|
||||
ManaStorm_Timer = urand(5000, 17000);
|
||||
Chill_Timer = urand(10000, 30000);
|
||||
Breath_Timer = urand(2000, 8000);
|
||||
Teleport_Timer = 30000;
|
||||
Reflect_Timer = 15000 + rand()%15000;
|
||||
Reflect_Timer = urand(15000, 30000);
|
||||
Cleave_Timer = 7000;
|
||||
Enrage_Timer = 0;
|
||||
Enraged = false;
|
||||
@@ -109,14 +109,14 @@ public:
|
||||
if (Chill_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CHILL);
|
||||
Chill_Timer = 13000 + rand()%12000;
|
||||
Chill_Timer = urand(13000, 25000);
|
||||
} else Chill_Timer -= diff;
|
||||
|
||||
//Breath_Timer
|
||||
if (Breath_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_FROSTBREATH);
|
||||
Breath_Timer = 10000 + rand()%5000;
|
||||
Breath_Timer = urand(10000, 15000);
|
||||
} else Breath_Timer -= diff;
|
||||
|
||||
//ManaStorm_Timer
|
||||
@@ -124,14 +124,14 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_MANASTORM);
|
||||
ManaStorm_Timer = 7500 + rand()%5000;
|
||||
ManaStorm_Timer = urand(7500, 12500);
|
||||
} else ManaStorm_Timer -= diff;
|
||||
|
||||
//Reflect_Timer
|
||||
if (Reflect_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_REFLECT);
|
||||
Reflect_Timer = 20000 + rand()%15000;
|
||||
Reflect_Timer = urand(20000, 35000);
|
||||
} else Reflect_Timer -= diff;
|
||||
|
||||
//Cleave_Timer
|
||||
|
||||
@@ -111,7 +111,7 @@ public:
|
||||
{
|
||||
_EnterCombat();
|
||||
DoScriptText(SAY_AGGRO, me);
|
||||
events.ScheduleEvent(EVENT_IMPALE, 10000 + rand()%10000);
|
||||
events.ScheduleEvent(EVENT_IMPALE, urand(10000, 20000));
|
||||
events.ScheduleEvent(EVENT_LOCUST, 90000);
|
||||
events.ScheduleEvent(EVENT_BERSERK, 600000);
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_CURSE, 10000+rand()%15000);
|
||||
events.ScheduleEvent(EVENT_WARRIOR, 30000);
|
||||
if (GetDifficulty() == RAID_DIFFICULTY_25MAN_NORMAL)
|
||||
events.ScheduleEvent(EVENT_BLINK, 20000 + rand()%20000);
|
||||
events.ScheduleEvent(EVENT_BLINK, urand(20000, 40000));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -153,7 +153,7 @@ public:
|
||||
{
|
||||
case EVENT_CURSE:
|
||||
DoCastAOE(SPELL_CURSE_PLAGUEBRINGER);
|
||||
events.ScheduleEvent(EVENT_CURSE, 50000 + rand()%10000);
|
||||
events.ScheduleEvent(EVENT_CURSE, urand(50000, 60000));
|
||||
return;
|
||||
case EVENT_WARRIOR:
|
||||
DoScriptText(SAY_SUMMON, me);
|
||||
@@ -173,7 +173,7 @@ public:
|
||||
me->RemoveAllAuras();
|
||||
me->NearTeleportTo(TELE_X, TELE_Y, TELE_Z, TELE_O);
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_WAVE, 2000 + rand()%3000);
|
||||
events.ScheduleEvent(EVENT_WAVE, urand(2000, 5000));
|
||||
waveCount = 0;
|
||||
return;
|
||||
case EVENT_WAVE:
|
||||
@@ -188,7 +188,7 @@ public:
|
||||
SummonUndead(MOB_GUARDIAN, RAID_MODE(5, 10));break;
|
||||
}
|
||||
++waveCount;
|
||||
events.ScheduleEvent(waveCount < 2 ? EVENT_WAVE : EVENT_GROUND, 30000 + rand()%15000);
|
||||
events.ScheduleEvent(waveCount < 2 ? EVENT_WAVE : EVENT_GROUND, urand(30000, 45000));
|
||||
return;
|
||||
case EVENT_GROUND:
|
||||
{
|
||||
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
m_uiChargingStatus = 0;
|
||||
m_uiCharge_Timer = 1000;
|
||||
|
||||
m_uiChangeStance_Timer = 20000 + rand()%5000;
|
||||
m_uiChangeStance_Timer = urand(20000, 25000);
|
||||
|
||||
m_uiReflection_Timer = 8000;
|
||||
m_uiKnockAway_Timer = 20000;
|
||||
@@ -252,7 +252,7 @@ public:
|
||||
break;
|
||||
}
|
||||
|
||||
m_uiChangeStance_Timer = 20000 + rand()%5000;
|
||||
m_uiChangeStance_Timer = urand(20000, 25000);
|
||||
return;
|
||||
}
|
||||
else
|
||||
@@ -265,7 +265,7 @@ public:
|
||||
if (m_uiReflection_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me, SPELL_SPELL_REFLECTION);
|
||||
m_uiReflection_Timer = 8000 + rand()%1000;
|
||||
m_uiReflection_Timer = urand(8000, 9000);
|
||||
}
|
||||
else
|
||||
m_uiReflection_Timer -= uiDiff;
|
||||
@@ -273,7 +273,7 @@ public:
|
||||
if (m_uiKnockAway_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me, SPELL_KNOCK_AWAY);
|
||||
m_uiKnockAway_Timer = 20000 + rand()%1000;
|
||||
m_uiKnockAway_Timer = urand(20000, 21000);
|
||||
}
|
||||
else
|
||||
m_uiKnockAway_Timer -= uiDiff;
|
||||
@@ -281,7 +281,7 @@ public:
|
||||
if (m_uiPummel_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_PUMMEL);
|
||||
m_uiPummel_Timer = 10000 + rand()%1000;
|
||||
m_uiPummel_Timer = urand(10000, 11000);
|
||||
}
|
||||
else
|
||||
m_uiPummel_Timer -= uiDiff;
|
||||
@@ -289,7 +289,7 @@ public:
|
||||
if (m_uiIronform_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me, SPELL_IRONFORM);
|
||||
m_uiIronform_Timer = 25000 + rand()%1000;
|
||||
m_uiIronform_Timer = urand(25000, 26000);
|
||||
}
|
||||
else
|
||||
m_uiIronform_Timer -= uiDiff;
|
||||
@@ -302,7 +302,7 @@ public:
|
||||
{
|
||||
//not much point is this, better random target and more often?
|
||||
DoCast(me->getVictim(), SPELL_INTERCEPT);
|
||||
m_uiIntercept_Timer = 45000 + rand()%1000;
|
||||
m_uiIntercept_Timer = urand(45000, 46000);
|
||||
}
|
||||
else
|
||||
m_uiIntercept_Timer -= uiDiff;
|
||||
@@ -310,7 +310,7 @@ public:
|
||||
if (m_uiWhirlwind_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me, SPELL_WHIRLWIND);
|
||||
m_uiWhirlwind_Timer = 10000 + rand()%1000;
|
||||
m_uiWhirlwind_Timer = urand(10000, 11000);
|
||||
}
|
||||
else
|
||||
m_uiWhirlwind_Timer -= uiDiff;
|
||||
@@ -318,7 +318,7 @@ public:
|
||||
if (m_uiCleave_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CLEAVE);
|
||||
m_uiCleave_Timer = 8000 + rand()%1000;
|
||||
m_uiCleave_Timer = urand(8000, 9000);
|
||||
}
|
||||
else
|
||||
m_uiCleave_Timer -= uiDiff;
|
||||
@@ -330,7 +330,7 @@ public:
|
||||
if (m_uiMortalStrike_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MORTAL_STRIKE);
|
||||
m_uiMortalStrike_Timer = 20000 + rand()%1000;
|
||||
m_uiMortalStrike_Timer = urand(20000, 21000);
|
||||
}
|
||||
else
|
||||
m_uiMortalStrike_Timer -= uiDiff;
|
||||
@@ -338,7 +338,7 @@ public:
|
||||
if (m_uiSlam_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SLAM);
|
||||
m_uiSlam_Timer = 15000 + rand()%1000;
|
||||
m_uiSlam_Timer = urand(15000, 16000);
|
||||
}
|
||||
else
|
||||
m_uiSlam_Timer -= uiDiff;
|
||||
@@ -381,8 +381,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
m_uiArcWeld_Timer = 20000 + rand()%1000;
|
||||
m_uiRenewSteel_Timer = 10000 + rand()%1000;
|
||||
m_uiArcWeld_Timer = urand(20000, 21000);
|
||||
m_uiRenewSteel_Timer = urand(10000, 11000);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* who)
|
||||
@@ -406,7 +406,7 @@ public:
|
||||
if (m_uiArcWeld_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ARC_WELD);
|
||||
m_uiArcWeld_Timer = 20000 + rand()%1000;
|
||||
m_uiArcWeld_Timer = urand(20000, 21000);
|
||||
}
|
||||
else
|
||||
m_uiArcWeld_Timer -= uiDiff;
|
||||
@@ -421,7 +421,7 @@ public:
|
||||
DoCast(pBjarngrim, SPELL_RENEW_STEEL_N);
|
||||
}
|
||||
}
|
||||
m_uiRenewSteel_Timer = 10000 + rand()%4000;
|
||||
m_uiRenewSteel_Timer = urand(10000, 14000);
|
||||
}
|
||||
else
|
||||
m_uiRenewSteel_Timer -= uiDiff;
|
||||
|
||||
@@ -183,7 +183,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_ARC_LIGHTNING);
|
||||
|
||||
m_uiArcLightning_Timer = 15000 + rand()%1000;
|
||||
m_uiArcLightning_Timer = urand(15000, 16000);
|
||||
}
|
||||
else
|
||||
m_uiArcLightning_Timer -= uiDiff;
|
||||
@@ -196,7 +196,7 @@ public:
|
||||
|
||||
m_bIsAura = false;
|
||||
m_uiResumePulsingShockwave_Timer = DUNGEON_MODE(5000, 4000); // Pause Pulsing Shockwave aura
|
||||
m_uiLightningNova_Timer = 20000 + rand()%1000;
|
||||
m_uiLightningNova_Timer = urand(20000, 21000);
|
||||
}
|
||||
else
|
||||
m_uiLightningNova_Timer -= uiDiff;
|
||||
|
||||
@@ -80,10 +80,10 @@ public:
|
||||
{
|
||||
bIsSlam = false;
|
||||
|
||||
uiBoulderTossTimer = 3000 + rand()%6000;
|
||||
uiGroundSpikeTimer = 9000 + rand()%5000;
|
||||
uiGroundSlamTimer = 15000 + rand()%3000;
|
||||
uiStompTimer = 20000 + rand()%9000;
|
||||
uiBoulderTossTimer = urand(3000, 9000);
|
||||
uiGroundSpikeTimer = urand(9000, 14000);
|
||||
uiGroundSlamTimer = urand(15000, 18000);
|
||||
uiStompTimer = urand(20000, 29000);
|
||||
uiShatterTimer = 0;
|
||||
|
||||
if (instance)
|
||||
@@ -107,20 +107,20 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
|
||||
DoCast(target, SPELL_BOULDER_TOSS);
|
||||
uiBoulderTossTimer = 9000 + rand()%6000;
|
||||
uiBoulderTossTimer = urand(9000, 15000);
|
||||
} else uiBoulderTossTimer -= diff;
|
||||
|
||||
if (uiGroundSpikeTimer <= diff)
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
|
||||
DoCast(target, SPELL_GROUND_SPIKE);
|
||||
uiGroundSpikeTimer = 12000 + rand()%5000;
|
||||
uiGroundSpikeTimer = urand(12000, 17000);
|
||||
} else uiGroundSpikeTimer -= diff;
|
||||
|
||||
if (uiStompTimer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_STOMP);
|
||||
uiStompTimer = 20000 + rand()%9000;
|
||||
uiStompTimer = urand(20000, 29000);
|
||||
} else uiStompTimer -= diff;
|
||||
|
||||
if (uiGroundSlamTimer <= diff)
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
DoCast(me, SPELL_GROUND_SLAM);
|
||||
bIsSlam = true;
|
||||
uiShatterTimer = 10000;
|
||||
uiGroundSlamTimer = 15000 + rand()%3000;
|
||||
uiGroundSlamTimer = urand(15000, 18000);
|
||||
} else uiGroundSlamTimer -= diff;
|
||||
|
||||
if (bIsSlam)
|
||||
|
||||
@@ -79,10 +79,10 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
PartingSorrowTimer = 25000 + rand()%5000;
|
||||
PartingSorrowTimer = urand(25000, 30000);
|
||||
StormOfGriefTimer = 10000;
|
||||
ShockOfSorrowTimer = 20000+rand()%5000;
|
||||
PillarOfWoeTimer = 5000 + rand()%10000;
|
||||
PillarOfWoeTimer = urand(5000, 15000);
|
||||
|
||||
if (instance)
|
||||
{
|
||||
@@ -124,14 +124,14 @@ public:
|
||||
if (target)
|
||||
DoCast(target, SPELL_PARTING_SORROW);
|
||||
|
||||
PartingSorrowTimer = 30000 + rand()%10000;
|
||||
PartingSorrowTimer = urand(30000, 40000);
|
||||
} else PartingSorrowTimer -= diff;
|
||||
}
|
||||
|
||||
if (StormOfGriefTimer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_STORM_OF_GRIEF_N, true);
|
||||
StormOfGriefTimer = 15000 + rand()%5000;
|
||||
StormOfGriefTimer = urand(15000, 20000);
|
||||
} else StormOfGriefTimer -= diff;
|
||||
|
||||
if (ShockOfSorrowTimer <= diff)
|
||||
@@ -139,7 +139,7 @@ public:
|
||||
DoResetThreat();
|
||||
DoScriptText(SAY_STUN, me);
|
||||
DoCast(me, SPELL_SHOCK_OF_SORROW_N);
|
||||
ShockOfSorrowTimer = 20000 + rand()%10000;
|
||||
ShockOfSorrowTimer = urand(20000, 30000);
|
||||
} else ShockOfSorrowTimer -= diff;
|
||||
|
||||
if (PillarOfWoeTimer <= diff)
|
||||
@@ -151,7 +151,7 @@ public:
|
||||
else
|
||||
DoCast(me->getVictim(), SPELL_PILLAR_OF_WOE_N);
|
||||
|
||||
PillarOfWoeTimer = 5000 + rand()%20000;
|
||||
PillarOfWoeTimer = urand(5000, 25000);
|
||||
} else PillarOfWoeTimer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -115,10 +115,10 @@ public:
|
||||
bIsFrenzy = false;
|
||||
|
||||
uiEncounterTimer = 0;
|
||||
uiChainLightningTimer = 3000 + rand()%5000;
|
||||
uiLightningShieldTimer = 20000 + rand()%5000;
|
||||
uiStaticChargeTimer = 20000 + rand()%5000;
|
||||
uiLightningRingTimer = 30000 + rand()%5000;
|
||||
uiChainLightningTimer = urand(3000, 8000);
|
||||
uiLightningShieldTimer = urand(20000, 25000);
|
||||
uiStaticChargeTimer = urand(20000, 25000);
|
||||
uiLightningRingTimer = urand(30000, 35000);
|
||||
uiSummonTimer = 5000;
|
||||
uiFrenzyTimer = 300000; //5 minutes
|
||||
abuseTheOoze = 0;
|
||||
@@ -158,7 +158,7 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
|
||||
DoCast(target, SPELL_CHAIN_LIGHTING);
|
||||
uiChainLightningTimer = 10000 + rand()%5000;
|
||||
uiChainLightningTimer = urand(10000, 15000);
|
||||
} else uiChainLightningTimer -= diff;
|
||||
|
||||
if (uiLightningShieldTimer <= diff)
|
||||
@@ -170,7 +170,7 @@ public:
|
||||
if (uiStaticChargeTimer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_STATIC_CHARGE);
|
||||
uiStaticChargeTimer = 20000 + rand()%5000;
|
||||
uiStaticChargeTimer = urand(20000, 25000);
|
||||
} uiStaticChargeTimer -= diff;
|
||||
|
||||
if (uiLightningRingTimer <= diff)
|
||||
@@ -178,7 +178,7 @@ public:
|
||||
if (me->IsNonMeleeSpellCasted(false))
|
||||
me->InterruptNonMeleeSpells(false);
|
||||
DoCast(me, SPELL_LIGHTING_RING);
|
||||
uiLightningRingTimer = 30000 + rand()%5000;
|
||||
uiLightningRingTimer = urand(30000, 35000);
|
||||
} else uiLightningRingTimer -= diff;
|
||||
|
||||
if (uiSummonTimer <= diff)
|
||||
|
||||
@@ -239,7 +239,7 @@ public:
|
||||
summon->CastSpell(target, DUNGEON_MODE(SPELL_DARK_MATTER, H_SPELL_DARK_MATTER), true);
|
||||
}
|
||||
}
|
||||
uiMarnakEncounterTimer = 30000 + rand()%1000;
|
||||
uiMarnakEncounterTimer = urand(30000, 31000);
|
||||
} else uiMarnakEncounterTimer -= diff;
|
||||
}
|
||||
if (bAbedneumActivated)
|
||||
@@ -255,7 +255,7 @@ public:
|
||||
summon->CastSpell(target, DUNGEON_MODE(SPELL_SEARING_GAZE, H_SPELL_SEARING_GAZE), true);
|
||||
}
|
||||
}
|
||||
uiAbedneumEncounterTimer = 30000 + rand()%1000;
|
||||
uiAbedneumEncounterTimer = urand(30000, 31000);
|
||||
} else uiAbedneumEncounterTimer -= diff;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ public:
|
||||
|
||||
uiPhase_timer = 0;
|
||||
Ascend_Timer = 480000; //8 minutes
|
||||
QuantumStrike_Timer = 4000 + rand()%10000;
|
||||
QuantumStrike_Timer = urand(4000, 14000);
|
||||
Berserk_Timer = 360000; //6 minutes
|
||||
CollapsingStar_Timer = urand(15000, 20000); //Spawns between 15 to 20 seconds
|
||||
BigBang_Timer = 90000;
|
||||
|
||||
@@ -340,7 +340,7 @@ public:
|
||||
if (Mortal_Strike_timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_AV_MORTAL_STRIKE);
|
||||
Mortal_Strike_timer = 10000 + rand()%20 * 1000;
|
||||
Mortal_Strike_timer = urand(10, 30) * 1000;
|
||||
} else Mortal_Strike_timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -162,20 +162,20 @@ public:
|
||||
me->InterruptNonMeleeSpells(true);
|
||||
|
||||
DoCast(me, SPELL_FROSTNOVA);
|
||||
FrostNova_Timer = 17500 + rand()%7500;
|
||||
FrostNova_Timer = urand(17500, 25000);
|
||||
CanBlink = true;
|
||||
} else FrostNova_Timer -= diff;
|
||||
|
||||
if (Frostbolt_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_FROSTBOLT);
|
||||
Frostbolt_Timer = 4500 + rand()%1500;
|
||||
Frostbolt_Timer = urand(4500, 6000);
|
||||
} else Frostbolt_Timer -= diff;
|
||||
|
||||
if (FireBall_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_FIREBALL);
|
||||
FireBall_Timer = 4500 + rand()%1500;
|
||||
FireBall_Timer = urand(4500, 6000);
|
||||
} else FireBall_Timer -= diff;
|
||||
|
||||
if (CanBlink)
|
||||
@@ -191,7 +191,7 @@ public:
|
||||
me->GetMotionMaster()->MovementExpired();
|
||||
|
||||
DoCast(me, SPELL_BLINK);
|
||||
Blink_Timer = 1000 + rand()%1500;
|
||||
Blink_Timer = urand(1000, 2500);
|
||||
CanBlink = false;
|
||||
} else Blink_Timer -= diff;
|
||||
}
|
||||
@@ -290,7 +290,7 @@ public:
|
||||
if (ArcaneBolt_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ARCANE_BOLT);
|
||||
ArcaneBolt_Timer = 2000 + rand()%2500;
|
||||
ArcaneBolt_Timer = urand(2000, 4500);
|
||||
} else ArcaneBolt_Timer -= diff;
|
||||
|
||||
if (Apprentice_Timer <= diff)
|
||||
|
||||
@@ -157,7 +157,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_FLAME_SHOCK);
|
||||
|
||||
flameshock_timer = 10000 + rand()%5000;
|
||||
flameshock_timer = urand(10000, 15000);
|
||||
} else flameshock_timer -= diff;
|
||||
|
||||
if (arcaneshock_timer <= diff)
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_ARCANE_SHOCK);
|
||||
|
||||
arcaneshock_timer = 10000 + rand()%5000;
|
||||
arcaneshock_timer = urand(10000, 15000);
|
||||
} else arcaneshock_timer -= diff;
|
||||
|
||||
if (frostshock_timer <= diff)
|
||||
@@ -173,7 +173,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_FROST_SHOCK);
|
||||
|
||||
frostshock_timer = 10000 + rand()%5000;
|
||||
frostshock_timer = urand(10000, 15000);
|
||||
} else frostshock_timer -= diff;
|
||||
|
||||
if (shadowshock_timer <= diff)
|
||||
@@ -181,7 +181,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_SHADOW_SHOCK);
|
||||
|
||||
shadowshock_timer = 10000 + rand()%5000;
|
||||
shadowshock_timer = urand(10000, 15000);
|
||||
} else shadowshock_timer -= diff;
|
||||
|
||||
if (chainlightning_timer <= diff)
|
||||
|
||||
@@ -74,8 +74,8 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
EventCheck_Timer = 5000;
|
||||
CorrosiveAcid_Timer = 5000 + rand()%5000;
|
||||
Fear_Timer = 25000 + rand()%5000;
|
||||
CorrosiveAcid_Timer = urand(5000, 10000);
|
||||
Fear_Timer = urand(25000, 30000);
|
||||
Enrage_Timer = 180000;
|
||||
Intro = false;
|
||||
IsBanished = true;
|
||||
@@ -182,13 +182,13 @@ public:
|
||||
if (CorrosiveAcid_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_CORROSIVE_ACID);
|
||||
CorrosiveAcid_Timer = 15000 + rand()%10000;
|
||||
CorrosiveAcid_Timer = urand(15000, 25000);
|
||||
} else CorrosiveAcid_Timer -= diff;
|
||||
|
||||
if (Fear_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_FEAR);
|
||||
Fear_Timer = 20000 + rand()%15000;
|
||||
Fear_Timer = urand(20000, 35000);
|
||||
} else Fear_Timer -= diff;
|
||||
|
||||
if (IsHeroic())
|
||||
|
||||
+2
-2
@@ -152,14 +152,14 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_CHARGE);
|
||||
Charge_Timer = 15000 + rand()%10000;
|
||||
Charge_Timer = urand(15000, 25000);
|
||||
} else Charge_Timer -= diff;
|
||||
|
||||
//Knockback_Timer
|
||||
if (Knockback_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_WAR_STOMP);
|
||||
Knockback_Timer = 18000 + rand()%6000;
|
||||
Knockback_Timer = urand(18000, 24000);
|
||||
} else Knockback_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
ShadowBoltVolley_Timer = 7000 + rand()%7000;
|
||||
ShadowBoltVolley_Timer = urand(7000, 14000);
|
||||
DrawShadows_Timer = 45000;
|
||||
summonTraveler_Timer = 90000;
|
||||
banish_Timer = 17000;
|
||||
@@ -269,7 +269,7 @@ public:
|
||||
if (ShadowBoltVolley_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SHADOWBOLT_VOLLEY);
|
||||
ShadowBoltVolley_Timer = 15000 + rand()%15000;
|
||||
ShadowBoltVolley_Timer = urand(15000, 30000);
|
||||
} else ShadowBoltVolley_Timer -= diff;
|
||||
|
||||
if (IsHeroic() && banish_Timer <= diff)
|
||||
|
||||
@@ -64,9 +64,9 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
SonicBoom_Timer = 30000;
|
||||
MurmursTouch_Timer = 8000 + rand()%12000;
|
||||
MurmursTouch_Timer = urand(8000, 20000);
|
||||
Resonance_Timer = 5000;
|
||||
MagneticPull_Timer = 15000 + rand()%15000;
|
||||
MagneticPull_Timer = urand(15000, 30000);
|
||||
ThunderingStorm_Timer = 15000;
|
||||
SonicShock_Timer = 10000;
|
||||
SonicBoom = false;
|
||||
@@ -133,7 +133,7 @@ public:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 80, true))
|
||||
DoCast(target, SPELL_MURMURS_TOUCH);
|
||||
MurmursTouch_Timer = 25000 + rand()%10000;
|
||||
MurmursTouch_Timer = urand(25000, 35000);
|
||||
} else MurmursTouch_Timer -= diff;
|
||||
|
||||
// Resonance
|
||||
|
||||
@@ -646,7 +646,7 @@ public:
|
||||
case PHASE_NORMAL_MAIEV:
|
||||
AttackStart(me->getVictim());
|
||||
Timer[EVENT_TAUNT] = 32000;
|
||||
Timer[EVENT_SHEAR] = 10000 + rand()%15 * 1000;
|
||||
Timer[EVENT_SHEAR] = urand(10, 25) * 1000;
|
||||
Timer[EVENT_FLAME_CRASH] = 20000;
|
||||
Timer[EVENT_PARASITIC_SHADOWFIEND] = 25000;
|
||||
Timer[EVENT_PARASITE_CHECK] = 0;
|
||||
@@ -657,14 +657,14 @@ public:
|
||||
Timer[EVENT_TRANSFORM_NORMAL] = 60000;
|
||||
if (NextPhase == PHASE_NORMAL_2)
|
||||
break;
|
||||
Timer[EVENT_ENRAGE] = 30000 + rand()%10 * 1000;
|
||||
Timer[EVENT_ENRAGE] = urand(30, 40) * 1000;
|
||||
break;
|
||||
case PHASE_FLIGHT:
|
||||
Timer[EVENT_FIREBALL] = 1000;
|
||||
if (!(rand()%4))
|
||||
Timer[EVENT_DARK_BARRAGE] = 10000;
|
||||
Timer[EVENT_EYE_BLAST] = 10000 + rand()%15 * 1000;
|
||||
Timer[EVENT_MOVE_POINT] = 20000 + rand()%20 * 1000;
|
||||
Timer[EVENT_EYE_BLAST] = urand(10, 25) * 1000;
|
||||
Timer[EVENT_MOVE_POINT] = urand(20, 40) * 1000;
|
||||
break;
|
||||
case PHASE_DEMON:
|
||||
Timer[EVENT_SHADOW_BLAST] = 1000;
|
||||
@@ -1022,7 +1022,7 @@ public:
|
||||
if (soundid)
|
||||
DoPlaySoundToSet(me, soundid);
|
||||
}
|
||||
Timer[EVENT_TAUNT] = 25000 + rand()%10000;
|
||||
Timer[EVENT_TAUNT] = urand(25000, 35000);
|
||||
break;
|
||||
|
||||
case EVENT_SHEAR:
|
||||
@@ -1033,14 +1033,14 @@ public:
|
||||
|
||||
case EVENT_FLAME_CRASH:
|
||||
DoCast(me->getVictim(), SPELL_FLAME_CRASH);
|
||||
Timer[EVENT_FLAME_CRASH] = 30000 + rand()%10000;
|
||||
Timer[EVENT_FLAME_CRASH] = urand(30000, 40000);
|
||||
break;
|
||||
|
||||
case EVENT_PARASITIC_SHADOWFIEND:
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 200, true))
|
||||
DoCast(target, SPELL_PARASITIC_SHADOWFIEND, true);
|
||||
Timer[EVENT_PARASITIC_SHADOWFIEND] = 35000 + rand()%10000;
|
||||
Timer[EVENT_PARASITIC_SHADOWFIEND] = urand(35000, 45000);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1050,7 +1050,7 @@ public:
|
||||
|
||||
case EVENT_DRAW_SOUL:
|
||||
DoCast(me->getVictim(), SPELL_DRAW_SOUL);
|
||||
Timer[EVENT_DRAW_SOUL] = 50000 + rand()%10000;
|
||||
Timer[EVENT_DRAW_SOUL] = urand(50000, 60000);
|
||||
break;
|
||||
|
||||
// PHASE_NORMAL_2
|
||||
@@ -1172,7 +1172,7 @@ public:
|
||||
Phase = PHASE_NORMAL_MAIEV;
|
||||
IllidanGUID = 0;
|
||||
Timer[EVENT_MAIEV_STEALTH] = 0;
|
||||
Timer[EVENT_MAIEV_TAUNT] = 22000 + rand()%21 * 1000;
|
||||
Timer[EVENT_MAIEV_TAUNT] = urand(22, 43) * 1000;
|
||||
Timer[EVENT_MAIEV_SHADOW_STRIKE] = 30000;
|
||||
SetEquipmentSlots(false, 44850, EQUIP_UNEQUIP, EQUIP_NO_CHANGE);
|
||||
me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 2, 45738);
|
||||
@@ -1321,7 +1321,7 @@ public:
|
||||
if (MaievTaunts[random].text.size())
|
||||
me->MonsterYell(MaievTaunts[random].text.c_str(), LANG_UNIVERSAL, 0);
|
||||
DoPlaySoundToSet(me, sound);
|
||||
Timer[EVENT_MAIEV_TAUNT] = 22000 + rand()%21 * 1000;
|
||||
Timer[EVENT_MAIEV_TAUNT] = urand(22, 43) * 1000;
|
||||
}
|
||||
break;
|
||||
case EVENT_MAIEV_SHADOW_STRIKE:
|
||||
@@ -1590,7 +1590,7 @@ public:
|
||||
break;
|
||||
case PHASE_FIGHT_MINIONS:
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
Timer = 10000 + rand()%6000; // summon minion
|
||||
Timer = urand(10000, 16000); // summon minion
|
||||
break;
|
||||
case PHASE_RETURN:
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
@@ -1780,7 +1780,7 @@ public:
|
||||
AttackStart(Elite);
|
||||
me->AddThreat(Elite, 1000000.0f);
|
||||
}
|
||||
Timer = 10000 + rand()%6000;
|
||||
Timer = urand(10000, 16000);
|
||||
GETUNIT(Illidan, IllidanGUID);
|
||||
if (Illidan && Illidan->HealthBelowPct(10))
|
||||
EnterPhase(PHASE_RETURN);
|
||||
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
FatalAttractionExplodeTimer = 70000;
|
||||
ShriekTimer = 30000;
|
||||
SaberTimer = 35000;
|
||||
RandomYellTimer = 70000 + rand()%41 * 1000;
|
||||
RandomYellTimer = urand(70, 111) * 1000;
|
||||
EnrageTimer = 600000;
|
||||
ExplosionCount = 0;
|
||||
|
||||
@@ -237,7 +237,7 @@ public:
|
||||
|
||||
DoScriptText(RAND(SAY_SPELL2, SAY_SPELL3), me);
|
||||
FatalAttractionExplodeTimer = 2000;
|
||||
FatalAttractionTimer = 40000 + rand()%31 * 1000;
|
||||
FatalAttractionTimer = urand(40, 71) * 1000;
|
||||
} else FatalAttractionTimer -= diff;
|
||||
|
||||
if (FatalAttractionExplodeTimer <= diff)
|
||||
@@ -293,7 +293,7 @@ public:
|
||||
if (RandomYellTimer <= diff)
|
||||
{
|
||||
DoScriptText(RAND(SAY_TAUNT1, SAY_TAUNT2, SAY_TAUNT3), me);
|
||||
RandomYellTimer = 60000 + rand()%91 * 1000;
|
||||
RandomYellTimer = urand(60, 151) * 1000;
|
||||
} else RandomYellTimer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -582,7 +582,7 @@ public:
|
||||
{
|
||||
me->InterruptNonMeleeSpells(false);
|
||||
DoCast(me->getVictim(), SPELL_DEADEN);
|
||||
DeadenTimer = 25000 + rand()%10000;
|
||||
DeadenTimer = urand(25000, 35000);
|
||||
if (!(rand()%2))
|
||||
{
|
||||
DoScriptText(DESI_SAY_SPEC, me);
|
||||
@@ -676,7 +676,7 @@ public:
|
||||
if (SoulScreamTimer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_SOUL_SCREAM);
|
||||
SoulScreamTimer = 9000 + rand()%2000;
|
||||
SoulScreamTimer = urand(9000, 11000);
|
||||
if (!(rand()%3))
|
||||
{
|
||||
DoScriptText(ANGER_SAY_SPEC, me);
|
||||
|
||||
@@ -246,7 +246,7 @@ public:
|
||||
if (instance)
|
||||
instance->SetData(DATA_TERONGOREFIENDEVENT, NOT_STARTED);
|
||||
|
||||
IncinerateTimer = 20000 + rand()%11000;
|
||||
IncinerateTimer = urand(20000, 31000);
|
||||
SummonDoomBlossomTimer = 12000;
|
||||
EnrageTimer = 600000;
|
||||
CrushingShadowsTimer = 22000;
|
||||
@@ -460,7 +460,7 @@ public:
|
||||
{
|
||||
DoScriptText(RAND(SAY_SPECIAL1, SAY_SPECIAL2), me);
|
||||
DoCast(target, SPELL_INCINERATE);
|
||||
IncinerateTimer = 20000 + rand()%31 * 1000;
|
||||
IncinerateTimer = urand(20, 51) * 1000;
|
||||
}
|
||||
} else IncinerateTimer -= diff;
|
||||
|
||||
@@ -469,7 +469,7 @@ public:
|
||||
Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0);
|
||||
if (target && target->isAlive())
|
||||
DoCast(target, SPELL_CRUSHING_SHADOWS);
|
||||
CrushingShadowsTimer = 10000 + rand()%16 * 1000;
|
||||
CrushingShadowsTimer = urand(10, 26) * 1000;
|
||||
} else CrushingShadowsTimer -= diff;
|
||||
|
||||
/*** NOTE FOR FUTURE DEV: UNCOMMENT BELOW ONLY IF MIND CONTROL IS FULLY IMPLEMENTED **/
|
||||
@@ -492,7 +492,7 @@ public:
|
||||
if (RandomYellTimer <= diff)
|
||||
{
|
||||
DoScriptText(RAND(SAY_SPELL1, SAY_SPELL2), me);
|
||||
RandomYellTimer = 50000 + rand()%51 * 1000;
|
||||
RandomYellTimer = urand(50, 101) * 1000;
|
||||
} else RandomYellTimer -= diff;
|
||||
|
||||
if (!me->HasAura(SPELL_BERSERK))
|
||||
|
||||
@@ -613,8 +613,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
BlizzardTimer = 30000 + rand()%61 * 1000;
|
||||
FlamestrikeTimer = 30000 + rand()%61 * 1000;
|
||||
BlizzardTimer = urand(30, 91) * 1000;
|
||||
FlamestrikeTimer = urand(30, 91) * 1000;
|
||||
ArcaneBoltTimer = 10000;
|
||||
DampenMagicTimer = 2000;
|
||||
ArcaneExplosionTimer = 14000;
|
||||
@@ -673,7 +673,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
DoCast(target, SPELL_BLIZZARD);
|
||||
BlizzardTimer = 45000 + rand()%46 * 1000;
|
||||
BlizzardTimer = urand(45, 91) * 1000;
|
||||
FlamestrikeTimer += 10000;
|
||||
Cooldown = 1000;
|
||||
}
|
||||
@@ -684,7 +684,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
DoCast(target, SPELL_FLAMESTRIKE);
|
||||
FlamestrikeTimer = 55000 + rand()%46 * 1000;
|
||||
FlamestrikeTimer = urand(55, 101) * 1000;
|
||||
BlizzardTimer += 10000;
|
||||
Cooldown = 2000;
|
||||
}
|
||||
@@ -756,7 +756,7 @@ public:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
DoCast(target, SPELL_DIVINE_WRATH);
|
||||
DivineWrathTimer = 40000 + rand()%41 * 1000;
|
||||
DivineWrathTimer = urand(40, 81) * 1000;
|
||||
}
|
||||
} else DivineWrathTimer -= diff;
|
||||
|
||||
@@ -799,7 +799,7 @@ public:
|
||||
EnvenomTargetGUID = 0;
|
||||
|
||||
DeadlyPoisonTimer = 20000;
|
||||
VanishTimer = 60000 + rand()%61 * 1000;
|
||||
VanishTimer = urand(60, 121) * 1000;
|
||||
AppearEnvenomTimer = 150000;
|
||||
|
||||
HasVanished = false;
|
||||
@@ -827,7 +827,7 @@ public:
|
||||
if (DeadlyPoisonTimer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_DEADLY_POISON);
|
||||
DeadlyPoisonTimer = 15000 + rand()%31 * 1000;
|
||||
DeadlyPoisonTimer = urand(15, 46) * 1000;
|
||||
} else DeadlyPoisonTimer -= diff;
|
||||
|
||||
if (AppearEnvenomTimer <= diff) // Cast Envenom. This is cast 4 seconds after Vanish is over
|
||||
|
||||
+4
-4
@@ -691,8 +691,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Mindblast_Timer = 3000 + rand()%5000;
|
||||
Earthshock_Timer = 5000 + rand()%5000;
|
||||
Mindblast_Timer = urand(3000, 8000);
|
||||
Earthshock_Timer = urand(5000, 10000);
|
||||
|
||||
if (instance)
|
||||
{
|
||||
@@ -764,7 +764,7 @@ public:
|
||||
|
||||
if (target)DoCast(target, SPELL_MINDBLAST);
|
||||
|
||||
Mindblast_Timer = 10000 + rand()%5000;
|
||||
Mindblast_Timer = urand(10000, 15000);
|
||||
} else Mindblast_Timer -= diff;
|
||||
|
||||
if (Earthshock_Timer <= diff)
|
||||
@@ -787,7 +787,7 @@ public:
|
||||
}
|
||||
}
|
||||
}
|
||||
Earthshock_Timer = 8000 + rand()%7000;
|
||||
Earthshock_Timer = urand(8000, 15000);
|
||||
} else Earthshock_Timer -= diff;
|
||||
DoMeleeAttackIfReady();
|
||||
}
|
||||
|
||||
@@ -213,7 +213,7 @@ public:
|
||||
if (m_uiReverberation_Timer <= uiDiff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_REVERBERATION, true);
|
||||
m_uiReverberation_Timer = 15000 + rand()%10000;
|
||||
m_uiReverberation_Timer = urand(15000, 25000);
|
||||
}
|
||||
else
|
||||
m_uiReverberation_Timer -= uiDiff;
|
||||
|
||||
@@ -524,7 +524,7 @@ public:
|
||||
if (target)
|
||||
DoCast(target, SPELL_GREATER_POLYMORPH);
|
||||
|
||||
GreaterPolymorph_Timer = 15000 + rand()%5000;
|
||||
GreaterPolymorph_Timer = urand(15000, 20000);
|
||||
} else GreaterPolymorph_Timer -= diff;
|
||||
|
||||
//LightningBolt_Timer
|
||||
@@ -581,8 +581,8 @@ public:
|
||||
void Reset()
|
||||
{
|
||||
GreaterPowerWordShield_Timer = 5000;
|
||||
Heal_Timer = 25000 + rand()%15000;
|
||||
PrayerofHealing_Timer = 45000 + rand()%10000;
|
||||
Heal_Timer = urand(25000, 40000);
|
||||
PrayerofHealing_Timer = urand(45000, 55000);
|
||||
|
||||
//reset encounter
|
||||
if (instance)
|
||||
@@ -648,14 +648,14 @@ public:
|
||||
if (Heal_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_HEAL);
|
||||
Heal_Timer = 15000 + rand()%25000;
|
||||
Heal_Timer = urand(15000, 40000);
|
||||
} else Heal_Timer -= diff;
|
||||
|
||||
//PrayerofHealing_Timer
|
||||
if (PrayerofHealing_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_PRAYER_OH);
|
||||
PrayerofHealing_Timer = 35000 + rand()%15000;
|
||||
PrayerofHealing_Timer = urand(35000, 50000);
|
||||
} else PrayerofHealing_Timer -= diff;
|
||||
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -424,7 +424,7 @@ class boss_magtheridon : public CreatureScript
|
||||
summon->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
}
|
||||
Blaze_Timer = 20000 + rand()%20000;
|
||||
Blaze_Timer = urand(20000, 40000);
|
||||
}
|
||||
else
|
||||
Blaze_Timer -= diff;
|
||||
@@ -497,10 +497,10 @@ class mob_hellfire_channeler : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
ShadowBoltVolley_Timer = 8000 + rand()%2000;
|
||||
ShadowBoltVolley_Timer = urand(8000, 10000);
|
||||
DarkMending_Timer = 10000;
|
||||
Fear_Timer = 15000 + rand()%5000;
|
||||
Infernal_Timer = 10000 + rand()%40000;
|
||||
Fear_Timer = urand(15000, 20000);
|
||||
Infernal_Timer = urand(10000, 50000);
|
||||
|
||||
Check_Timer = 5000;
|
||||
}
|
||||
@@ -547,7 +547,7 @@ class mob_hellfire_channeler : public CreatureScript
|
||||
if (ShadowBoltVolley_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SHADOW_BOLT_VOLLEY);
|
||||
ShadowBoltVolley_Timer = 10000 + rand()%10000;
|
||||
ShadowBoltVolley_Timer = urand(10000, 20000);
|
||||
}
|
||||
else
|
||||
ShadowBoltVolley_Timer -= diff;
|
||||
@@ -565,7 +565,7 @@ class mob_hellfire_channeler : public CreatureScript
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1))
|
||||
DoCast(target, SPELL_FEAR);
|
||||
Fear_Timer = 25000 + rand()%15000;
|
||||
Fear_Timer = urand(25000, 40000);
|
||||
}
|
||||
else
|
||||
Fear_Timer -= diff;
|
||||
@@ -574,7 +574,7 @@ class mob_hellfire_channeler : public CreatureScript
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
DoCast(target, SPELL_BURNING_ABYSSAL, true);
|
||||
Infernal_Timer = 30000 + rand()%10000;
|
||||
Infernal_Timer = urand(30000, 40000);
|
||||
}
|
||||
else
|
||||
Infernal_Timer -= diff;
|
||||
|
||||
@@ -102,7 +102,7 @@ class boss_gatewatcher_iron_hand : public CreatureScript
|
||||
if (Shadow_Power_Timer <= diff)
|
||||
{
|
||||
DoCast(me, SPELL_SHADOW_POWER);
|
||||
Shadow_Power_Timer = 20000 + rand()%8000;
|
||||
Shadow_Power_Timer = urand(20000, 28000);
|
||||
}
|
||||
else
|
||||
Shadow_Power_Timer -= diff;
|
||||
@@ -128,7 +128,7 @@ class boss_gatewatcher_iron_hand : public CreatureScript
|
||||
if (Stream_of_Machine_Fluid_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_STREAM_OF_MACHINE_FLUID);
|
||||
Stream_of_Machine_Fluid_Timer = 35000 + rand()%15000;
|
||||
Stream_of_Machine_Fluid_Timer = urand(35000, 50000);
|
||||
}
|
||||
else
|
||||
Stream_of_Machine_Fluid_Timer -= diff;
|
||||
|
||||
@@ -76,10 +76,10 @@ class boss_nethermancer_sepethrea : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
frost_attack_Timer = 7000 + rand()%3000;
|
||||
arcane_blast_Timer = 12000 + rand()%6000;
|
||||
dragons_breath_Timer = 18000 + rand()%4000;
|
||||
knockback_Timer = 22000 + rand()%6000;
|
||||
frost_attack_Timer = urand(7000, 10000);
|
||||
arcane_blast_Timer = urand(12000, 18000);
|
||||
dragons_breath_Timer = urand(18000, 22000);
|
||||
knockback_Timer = urand(22000, 28000);
|
||||
solarburn_Timer = 30000;
|
||||
|
||||
if (instance)
|
||||
@@ -119,7 +119,7 @@ class boss_nethermancer_sepethrea : public CreatureScript
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_FROST_ATTACK);
|
||||
|
||||
frost_attack_Timer = 7000 + rand()%3000;
|
||||
frost_attack_Timer = urand(7000, 10000);
|
||||
}
|
||||
else
|
||||
frost_attack_Timer -= diff;
|
||||
@@ -141,7 +141,7 @@ class boss_nethermancer_sepethrea : public CreatureScript
|
||||
return;
|
||||
DoScriptText(RAND(SAY_DRAGONS_BREATH_1, SAY_DRAGONS_BREATH_2), me);
|
||||
}
|
||||
dragons_breath_Timer = 12000 + rand()%10000;
|
||||
dragons_breath_Timer = urand(12000, 22000);
|
||||
}
|
||||
else
|
||||
dragons_breath_Timer -= diff;
|
||||
@@ -150,7 +150,7 @@ class boss_nethermancer_sepethrea : public CreatureScript
|
||||
if (knockback_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_KNOCKBACK);
|
||||
knockback_Timer = 15000 + rand()%10000;
|
||||
knockback_Timer = urand(15000, 25000);
|
||||
}
|
||||
else
|
||||
knockback_Timer -= diff;
|
||||
|
||||
@@ -83,10 +83,10 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
void Reset()
|
||||
{
|
||||
Summon_Timer = 30000;
|
||||
ManaTap_Timer = 12000 + rand()%8000;
|
||||
ArcaneTorrent_Timer = 16000 + rand()%9000;
|
||||
Domination_Timer = 25000 + rand()%15000;
|
||||
ArcaneExplosion_Timer = 8000 + rand()%5000;
|
||||
ManaTap_Timer = urand(12000, 20000);
|
||||
ArcaneTorrent_Timer = urand(16000, 25000);
|
||||
Domination_Timer = urand(25000, 40000);
|
||||
ArcaneExplosion_Timer = urand(8000, 13000);
|
||||
|
||||
Enraged = false;
|
||||
|
||||
@@ -135,7 +135,7 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
Wraith->AI()->AttackStart(target);
|
||||
}
|
||||
DoScriptText(SAY_SUMMON, me);
|
||||
Summon_Timer = 30000 + rand()%15000;
|
||||
Summon_Timer = urand(30000, 45000);
|
||||
}
|
||||
else
|
||||
Summon_Timer -= diff;
|
||||
@@ -143,7 +143,7 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
if (ManaTap_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_MANA_TAP);
|
||||
ManaTap_Timer = 14000 + rand()%8000;
|
||||
ManaTap_Timer = urand(14000, 22000);
|
||||
}
|
||||
else
|
||||
ManaTap_Timer -= diff;
|
||||
@@ -151,7 +151,7 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
if (ArcaneTorrent_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), SPELL_ARCANE_TORRENT);
|
||||
ArcaneTorrent_Timer = 12000 + rand()%6000;
|
||||
ArcaneTorrent_Timer = urand(12000, 18000);
|
||||
}
|
||||
else
|
||||
ArcaneTorrent_Timer -= diff;
|
||||
@@ -163,7 +163,7 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
DoScriptText(RAND(SAY_DOMINATION_1, SAY_DOMINATION_2), me);
|
||||
DoCast(target, SPELL_DOMINATION);
|
||||
}
|
||||
Domination_Timer = 25000 + rand()%5000;
|
||||
Domination_Timer = urand(25000, 30000);
|
||||
}
|
||||
else
|
||||
Domination_Timer -= diff;
|
||||
@@ -174,7 +174,7 @@ class boss_pathaleon_the_calculator : public CreatureScript
|
||||
if (ArcaneExplosion_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), H_SPELL_ARCANE_EXPLOSION);
|
||||
ArcaneExplosion_Timer = 10000 + rand()%4000;
|
||||
ArcaneExplosion_Timer = urand(10000, 14000);
|
||||
}
|
||||
else
|
||||
ArcaneExplosion_Timer -= diff;
|
||||
@@ -218,7 +218,7 @@ class mob_nether_wraith : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
ArcaneMissiles_Timer = 1000 + rand()%3000;
|
||||
ArcaneMissiles_Timer = urand(1000, 4000);
|
||||
Detonation_Timer = 20000;
|
||||
Die_Timer = 2200;
|
||||
Detonation = false;
|
||||
@@ -237,7 +237,7 @@ class mob_nether_wraith : public CreatureScript
|
||||
DoCast(target, SPELL_ARCANE_MISSILES);
|
||||
else
|
||||
DoCast(me->getVictim(), SPELL_ARCANE_MISSILES);
|
||||
ArcaneMissiles_Timer = 5000 + rand()%5000;
|
||||
ArcaneMissiles_Timer = urand(5000, 10000);
|
||||
}
|
||||
else
|
||||
ArcaneMissiles_Timer -=diff;
|
||||
|
||||
@@ -152,9 +152,9 @@ class boss_warp_splinter : public CreatureScript
|
||||
|
||||
void Reset()
|
||||
{
|
||||
War_Stomp_Timer = 25000 + rand()%15000;
|
||||
War_Stomp_Timer = urand(25000, 40000);
|
||||
Summon_Treants_Timer = 45000;
|
||||
Arcane_Volley_Timer = 8000 + rand()%12000;
|
||||
Arcane_Volley_Timer = urand(8000, 20000);
|
||||
|
||||
me->SetSpeed(MOVE_RUN, 0.7f, true);
|
||||
}
|
||||
@@ -199,7 +199,7 @@ class boss_warp_splinter : public CreatureScript
|
||||
if (War_Stomp_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), WAR_STOMP);
|
||||
War_Stomp_Timer = 25000 + rand()%15000;
|
||||
War_Stomp_Timer = urand(25000, 40000);
|
||||
}
|
||||
else
|
||||
War_Stomp_Timer -= diff;
|
||||
@@ -208,7 +208,7 @@ class boss_warp_splinter : public CreatureScript
|
||||
if (Arcane_Volley_Timer <= diff)
|
||||
{
|
||||
DoCast(me->getVictim(), DUNGEON_MODE(ARCANE_VOLLEY, ARCANE_VOLLEY_H));
|
||||
Arcane_Volley_Timer = 20000 + rand()%15000;
|
||||
Arcane_Volley_Timer = urand(20000, 35000);
|
||||
}
|
||||
else
|
||||
Arcane_Volley_Timer -= diff;
|
||||
|
||||
Reference in New Issue
Block a user