*Cleanup, convert rand()%x to RAND(), and fix some reversed HEROIC() calls (normal is the first arguement, not heroic)
--HG-- branch : trunk
This commit is contained in:
1 parent
d088564403
commit
b470e6076b
83 files changed
+155
-825
No files matched your search
@@ -100,12 +100,7 @@ struct TRINITY_DLL_DECL boss_nefarianAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch (rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_XHEALTH, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SHADOWFLAME, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_XHEALTH,SAY_AGGRO,SAY_SHADOWFLAME), m_creature);
|
||||
|
||||
DoCast(who,SPELL_SHADOWFLAME_INITIAL);
|
||||
DoZoneInCombat();
|
||||
|
||||
@@ -218,11 +218,7 @@ struct TRINITY_DLL_DECL npc_rinjiAI : public npc_escortAI
|
||||
return;
|
||||
|
||||
//only if attacked and escorter is not in combat?
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_RIN_HELP_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_RIN_HELP_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_RIN_HELP_1,SAY_RIN_HELP_2), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -154,11 +154,7 @@ struct TRINITY_DLL_DECL npc_deathstalker_erlandAI : public npc_escortAI
|
||||
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature, who);break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature, who);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1, m_creature,SAY_AGGRO_2, m_creature), who);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -83,13 +83,7 @@ struct TRINITY_DLL_DECL mob_freed_soulAI : public ScriptedAI
|
||||
|
||||
void Reset()
|
||||
{
|
||||
switch (rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_ZAPPED0, m_creature); break;
|
||||
case 1: DoScriptText(SAY_ZAPPED1, m_creature); break;
|
||||
case 2: DoScriptText(SAY_ZAPPED2, m_creature); break;
|
||||
case 3: DoScriptText(SAY_ZAPPED3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_ZAPPED0,SAY_ZAPPED1,SAY_ZAPPED2,SAY_ZAPPED3), m_creature);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* who) { }
|
||||
|
||||
+2
-12
@@ -164,13 +164,7 @@ struct TRINITY_DLL_DECL boss_sacrolashAI : public ScriptedAI
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
if (rand()%4 == 0)
|
||||
{
|
||||
switch (rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(YELL_SAC_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(YELL_SAC_KILL_2, m_creature); break;
|
||||
}
|
||||
}
|
||||
DoScriptText(RAND(YELL_SAC_KILL_1,YELL_SAC_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -459,11 +453,7 @@ struct TRINITY_DLL_DECL boss_alythessAI : public Scripted_NoMovementAI
|
||||
{
|
||||
if (rand()%4 == 0)
|
||||
{
|
||||
switch (rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(YELL_ALY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(YELL_ALY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(YELL_ALY_KILL_1,YELL_ALY_KILL_2), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -356,11 +356,7 @@ struct TRINITY_DLL_DECL boss_kalecgosAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_EVIL_SLAY1, me); break;
|
||||
case 1: DoScriptText(SAY_EVIL_SLAY2, me); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_EVIL_SLAY1,SAY_EVIL_SLAY2), me);
|
||||
}
|
||||
|
||||
void MovementInform(uint32 type,uint32 id)
|
||||
@@ -501,11 +497,7 @@ struct TRINITY_DLL_DECL boss_sathrovarrAI : public ScriptedAI
|
||||
EnterEvadeMode();
|
||||
return;
|
||||
}
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SATH_SLAY1, me); break;
|
||||
case 1: DoScriptText(SAY_SATH_SLAY2, me); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SATH_SLAY1,SAY_SATH_SLAY2), me);
|
||||
}
|
||||
|
||||
void JustDied(Unit *killer)
|
||||
|
||||
@@ -221,11 +221,7 @@ struct TRINITY_DLL_DECL npc_defias_traitorAI : public npc_escortAI
|
||||
}
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature, who); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature, who); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1, m_creature,SAY_AGGRO_2, m_creature), who);
|
||||
}
|
||||
|
||||
void Reset() {}
|
||||
|
||||
@@ -165,11 +165,7 @@ struct TRINITY_DLL_DECL boss_janalaiAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
|
||||
@@ -132,14 +132,7 @@ struct TRINITY_DLL_DECL example_creatureAI : public ScriptedAI
|
||||
if (m_uiSay_Timer < uiDiff)
|
||||
{
|
||||
//Random switch between 5 outcomes
|
||||
switch (rand()%5)
|
||||
{
|
||||
case 0: DoScriptText(SAY_RANDOM_0, m_creature); break;
|
||||
case 1: DoScriptText(SAY_RANDOM_1, m_creature); break;
|
||||
case 2: DoScriptText(SAY_RANDOM_2, m_creature); break;
|
||||
case 3: DoScriptText(SAY_RANDOM_3, m_creature); break;
|
||||
case 4: DoScriptText(SAY_RANDOM_4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_RANDOM_0,SAY_RANDOM_1,SAY_RANDOM_2,SAY_RANDOM_3,SAY_RANDOM_4), m_creature);
|
||||
|
||||
m_uiSay_Timer = 45000; //Say something agian in 45 seconds
|
||||
}
|
||||
|
||||
@@ -91,13 +91,7 @@ struct TRINITY_DLL_DECL npc_draenei_survivorAI : public ScriptedAI
|
||||
if (CanSayHelp && who->GetTypeId() == TYPEID_PLAYER && m_creature->IsFriendlyTo(who) && m_creature->IsWithinDistInMap(who, 25.0f))
|
||||
{
|
||||
//Random switch between 4 texts
|
||||
switch (rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_HELP1, m_creature, who); break;
|
||||
case 1: DoScriptText(SAY_HELP2, m_creature, who); break;
|
||||
case 2: DoScriptText(SAY_HELP3, m_creature, who); break;
|
||||
case 3: DoScriptText(SAY_HELP4, m_creature, who); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_HELP1, m_creature,SAY_HELP2, m_creature,SAY_HELP3, m_creature,SAY_HELP4, m_creature), who);
|
||||
|
||||
SayHelpTimer = 20000;
|
||||
CanSayHelp = false;
|
||||
@@ -129,13 +123,7 @@ struct TRINITY_DLL_DECL npc_draenei_survivorAI : public ScriptedAI
|
||||
|
||||
if (Player* pPlayer = Unit::GetPlayer(pCaster))
|
||||
{
|
||||
switch (rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_HEAL1, m_creature, pPlayer); break;
|
||||
case 1: DoScriptText(SAY_HEAL2, m_creature, pPlayer); break;
|
||||
case 2: DoScriptText(SAY_HEAL3, m_creature, pPlayer); break;
|
||||
case 3: DoScriptText(SAY_HEAL4, m_creature, pPlayer); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_HEAL1, m_creature,SAY_HEAL2, m_creature,SAY_HEAL3, m_creature,SAY_HEAL4, m_creature), pPlayer);
|
||||
|
||||
pPlayer->TalkedToCreature(m_creature->GetEntry(),m_creature->GetGUID());
|
||||
}
|
||||
|
||||
+1
-6
@@ -62,12 +62,7 @@ struct TRINITY_DLL_DECL boss_epochAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0:DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1:DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2:DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+1
-7
@@ -98,13 +98,7 @@ struct TRINITY_DLL_DECL boss_mal_ganisAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
case 3: DoScriptText(SAY_SLAY_4, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3,SAY_SLAY_4), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+1
-6
@@ -114,12 +114,7 @@ struct TRINITY_DLL_DECL boss_meathookAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+1
-6
@@ -131,12 +131,7 @@ struct TRINITY_DLL_DECL boss_salrammAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -96,11 +96,7 @@ struct TRINITY_DLL_DECL boss_aeonusAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
+1
-5
@@ -87,11 +87,7 @@ struct TRINITY_DLL_DECL boss_chrono_lord_dejaAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
@@ -71,11 +71,7 @@ struct TRINITY_DLL_DECL boss_temporusAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
@@ -255,12 +255,7 @@ struct TRINITY_DLL_DECL boss_archimondeAI : public hyjal_trashAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
|
||||
if (victim && (victim->GetTypeId() == TYPEID_PLAYER))
|
||||
GainSoulCharge(CAST_PLR(victim));
|
||||
|
||||
+1
-5
@@ -73,11 +73,7 @@ struct TRINITY_DLL_DECL boss_captain_skarlocAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
+3
-15
@@ -64,20 +64,12 @@ struct TRINITY_DLL_DECL boss_epoch_hunterAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2), m_creature);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -102,11 +94,7 @@ struct TRINITY_DLL_DECL boss_epoch_hunterAI : public ScriptedAI
|
||||
|
||||
DoCast(m_creature->getVictim(),SPELL_SAND_BREATH);
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_BREATH1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_BREATH2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_BREATH1,SAY_BREATH2), m_creature);
|
||||
|
||||
SandBreath_Timer = 10000 + rand()%10000;
|
||||
}else SandBreath_Timer -= diff;
|
||||
|
||||
+1
-5
@@ -120,11 +120,7 @@ struct TRINITY_DLL_DECL boss_lieutenant_drakeAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
+5
-29
@@ -382,12 +382,7 @@ struct TRINITY_DLL_DECL npc_thrall_old_hillsbradAI : public npc_escortAI
|
||||
}
|
||||
if (HasEscortState(STATE_ESCORT_ESCORTING))
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TH_LEAVE_COMBAT1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TH_LEAVE_COMBAT2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_TH_LEAVE_COMBAT3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TH_LEAVE_COMBAT1,SAY_TH_LEAVE_COMBAT2,SAY_TH_LEAVE_COMBAT3), m_creature);
|
||||
}
|
||||
}
|
||||
void StartWP()
|
||||
@@ -407,13 +402,7 @@ struct TRINITY_DLL_DECL npc_thrall_old_hillsbradAI : public npc_escortAI
|
||||
}
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TH_RANDOM_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TH_RANDOM_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_TH_RANDOM_AGGRO3, m_creature); break;
|
||||
case 3: DoScriptText(SAY_TH_RANDOM_AGGRO4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TH_RANDOM_AGGRO1,SAY_TH_RANDOM_AGGRO2,SAY_TH_RANDOM_AGGRO3,SAY_TH_RANDOM_AGGRO4), m_creature);
|
||||
if (m_creature->IsMounted())
|
||||
{
|
||||
DoUnmount();
|
||||
@@ -440,12 +429,7 @@ struct TRINITY_DLL_DECL npc_thrall_old_hillsbradAI : public npc_escortAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TH_RANDOM_KILL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TH_RANDOM_KILL2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_TH_RANDOM_KILL3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TH_RANDOM_KILL1,SAY_TH_RANDOM_KILL2,SAY_TH_RANDOM_KILL3), m_creature);
|
||||
}
|
||||
void JustDied(Unit *slayer)
|
||||
{
|
||||
@@ -456,11 +440,7 @@ struct TRINITY_DLL_DECL npc_thrall_old_hillsbradAI : public npc_escortAI
|
||||
if (slayer == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TH_RANDOM_DIE1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TH_RANDOM_DIE2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TH_RANDOM_DIE1,SAY_TH_RANDOM_DIE2), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
@@ -473,11 +453,7 @@ struct TRINITY_DLL_DECL npc_thrall_old_hillsbradAI : public npc_escortAI
|
||||
//TODO: add his abilities'n-crap here
|
||||
if (!LowHp && ((m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 20))
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TH_RANDOM_LOW_HP1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TH_RANDOM_LOW_HP2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TH_RANDOM_LOW_HP1,SAY_TH_RANDOM_LOW_HP2), m_creature);
|
||||
LowHp = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -105,20 +105,9 @@ struct TRINITY_DLL_DECL npc_kerlonianAI : public FollowerAI
|
||||
{
|
||||
SetFollowPaused(true);
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(EMOTE_KER_SLEEP_1, m_creature); break;
|
||||
case 1: DoScriptText(EMOTE_KER_SLEEP_2, m_creature); break;
|
||||
case 2: DoScriptText(EMOTE_KER_SLEEP_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(EMOTE_KER_SLEEP_1,EMOTE_KER_SLEEP_2,EMOTE_KER_SLEEP_3), m_creature);
|
||||
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KER_SLEEP_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KER_SLEEP_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_KER_SLEEP_3, m_creature); break;
|
||||
case 3: DoScriptText(SAY_KER_SLEEP_4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KER_SLEEP_1,SAY_KER_SLEEP_2,SAY_KER_SLEEP_3,SAY_KER_SLEEP_4), m_creature);
|
||||
|
||||
m_creature->SetStandState(UNIT_STAND_STATE_SLEEP);
|
||||
m_creature->CastSpell(m_creature, SPELL_SLEEP_VISUAL, false);
|
||||
|
||||
@@ -69,12 +69,7 @@ struct TRINITY_DLL_DECL npc_aged_dying_ancient_kodoAI : public ScriptedAI
|
||||
|
||||
if (m_creature->IsWithinDistInMap(pWho, 10.0f))
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SMEED_HOME_1, pWho); break;
|
||||
case 1: DoScriptText(SAY_SMEED_HOME_2, pWho); break;
|
||||
case 2: DoScriptText(SAY_SMEED_HOME_3, pWho); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SMEED_HOME_1,SAY_SMEED_HOME_2,SAY_SMEED_HOME_3), pWho);
|
||||
|
||||
//spell have no implemented effect (dummy), so useful to notify spellHit
|
||||
m_creature->CastSpell(m_creature,SPELL_KODO_KOMBO_GOSSIP,true);
|
||||
|
||||
@@ -129,11 +129,8 @@ struct TRINITY_DLL_DECL npc_oox22feAI : public npc_escortAI
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
//For an small probability the npc says something when he get aggro
|
||||
switch(rand()%10)
|
||||
{
|
||||
case 0: DoScriptText(SAY_OOX_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_OOX_AGGRO1, m_creature); break;
|
||||
}
|
||||
if (urand(0,9) > 7)
|
||||
DoScriptText(RAND(SAY_OOX_AGGRO1,SAY_OOX_AGGRO2), m_creature);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* summoned)
|
||||
|
||||
@@ -399,11 +399,7 @@ struct TRINITY_DLL_DECL npc_OOX17AI : public npc_escortAI
|
||||
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
switch (rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_OOX_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_OOX_AGGRO2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_OOX_AGGRO1,SAY_OOX_AGGRO2), m_creature);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* summoned)
|
||||
@@ -560,11 +556,8 @@ struct TRINITY_DLL_DECL npc_toogaAI : public FollowerAI
|
||||
{
|
||||
m_uiCheckSpeechTimer = 5000;
|
||||
|
||||
switch(rand()%50)
|
||||
{
|
||||
case 10: DoScriptText(SAY_TOOG_THIRST, m_creature); break;
|
||||
case 25: DoScriptText(SAY_TOOG_WORRIED, m_creature); break;
|
||||
}
|
||||
if (urand(0,9) > 8)
|
||||
DoScriptText(RAND(SAY_TOOG_THIRST,SAY_TOOG_WORRIED), m_creature);
|
||||
}
|
||||
else
|
||||
m_uiCheckSpeechTimer -= uiDiff;
|
||||
|
||||
@@ -92,12 +92,7 @@ struct TRINITY_DLL_DECL boss_skeramAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -110,12 +105,7 @@ struct TRINITY_DLL_DECL boss_skeramAI : public ScriptedAI
|
||||
{
|
||||
if (IsImage || Images75)
|
||||
return;
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
@@ -133,13 +133,7 @@ struct TRINITY_DLL_DECL npc_giltharesAI : public npc_escortAI
|
||||
if (pWho->GetTypeId() != TYPEID_PLAYER && m_creature->GetAreaId() == AREA_MERCHANT_COAST)
|
||||
{
|
||||
//appears to be pretty much random (possible only if escorter not in combat with pWho yet?)
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_GIL_AGGRO_1, m_creature, pWho); break;
|
||||
case 1: DoScriptText(SAY_GIL_AGGRO_2, m_creature, pWho); break;
|
||||
case 2: DoScriptText(SAY_GIL_AGGRO_3, m_creature, pWho); break;
|
||||
case 3: DoScriptText(SAY_GIL_AGGRO_4, m_creature, pWho); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_GIL_AGGRO_1, m_creature,SAY_GIL_AGGRO_2, m_creature,SAY_GIL_AGGRO_3, m_creature,SAY_GIL_AGGRO_4, m_creature), pWho);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -218,13 +218,7 @@ struct TRINITY_DLL_DECL npc_ringoAI : public FollowerAI
|
||||
{
|
||||
SetFollowPaused(true);
|
||||
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_FAINT_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_FAINT_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_FAINT_3, m_creature); break;
|
||||
case 3: DoScriptText(SAY_FAINT_4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_FAINT_1,SAY_FAINT_2,SAY_FAINT_3,SAY_FAINT_4), m_creature);
|
||||
}
|
||||
|
||||
//what does actually happen here? Emote? Aura?
|
||||
@@ -238,13 +232,7 @@ struct TRINITY_DLL_DECL npc_ringoAI : public FollowerAI
|
||||
if (HasFollowState(STATE_FOLLOW_POSTEVENT))
|
||||
return;
|
||||
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_WAKE_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_WAKE_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_WAKE_3, m_creature); break;
|
||||
case 3: DoScriptText(SAY_WAKE_4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_WAKE_1,SAY_WAKE_2,SAY_WAKE_3,SAY_WAKE_4), m_creature);
|
||||
|
||||
SetFollowPaused(false);
|
||||
}
|
||||
|
||||
@@ -100,12 +100,7 @@ struct TRINITY_DLL_DECL boss_elder_nadoxAI : public ScriptedAI
|
||||
{
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1,m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2,m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3,m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* killer)
|
||||
@@ -160,11 +155,7 @@ struct TRINITY_DLL_DECL boss_elder_nadoxAI : public ScriptedAI
|
||||
DoCast(m_creature,SPELL_SUMMON_SWARMERS);
|
||||
if (rand()%3 == 0)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_EGG_SAC_1,m_creature); break;
|
||||
case 1: DoScriptText(SAY_EGG_SAC_2,m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_EGG_SAC_1,SAY_EGG_SAC_2), m_creature);
|
||||
}
|
||||
swarmer_spawn_Timer = 10000;
|
||||
}else swarmer_spawn_Timer -= diff;
|
||||
|
||||
+1
-6
@@ -85,12 +85,7 @@ struct TRINITY_DLL_DECL boss_jedogaAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -88,12 +88,7 @@ struct TRINITY_DLL_DECL boss_anub_arakAI : public ScriptedAI
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -132,26 +132,11 @@ struct TRINITY_DLL_DECL boss_malygosAI : public ScriptedAI
|
||||
return;
|
||||
|
||||
if (phase ==1)
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_PHASE1_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_PHASE1_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_PHASE1_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_PHASE1_SLAY_1,SAY_PHASE1_SLAY_2,SAY_PHASE1_SLAY_3), m_creature);
|
||||
if (phase ==2)
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_PHASE2_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_PHASE2_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_PHASE2_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_PHASE2_SLAY_1,SAY_PHASE2_SLAY_2,SAY_PHASE2_SLAY_3), m_creature);
|
||||
if (phase ==3)
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_PHASE3_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_PHASE3_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_PHASE3_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_PHASE3_SLAY_1,SAY_PHASE3_SLAY_2,SAY_PHASE3_SLAY_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -274,11 +274,7 @@ struct TRINITY_DLL_DECL boss_magus_telestraAI : public ScriptedAI
|
||||
FireMagusDead = false;
|
||||
FrostMagusDead = false;
|
||||
ArcaneMagusDead = false;
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPLIT_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPLIT_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -295,11 +291,7 @@ struct TRINITY_DLL_DECL boss_magus_telestraAI : public ScriptedAI
|
||||
FireMagusDead = false;
|
||||
FrostMagusDead = false;
|
||||
ArcaneMagusDead = false;
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPLIT_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPLIT_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -58,12 +58,7 @@ struct TRINITY_DLL_DECL boss_drakosAI : public ScriptedAI
|
||||
{
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_KILL_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2,SAY_KILL_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -63,12 +63,7 @@ struct TRINITY_DLL_DECL boss_uromAI : public ScriptedAI
|
||||
{
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_KILL_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2,SAY_KILL_3), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -62,11 +62,7 @@ struct TRINITY_DLL_DECL boss_varosAI : public ScriptedAI
|
||||
{
|
||||
if (victim == m_creature)
|
||||
return;
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -427,12 +427,8 @@ struct TRINITY_DLL_DECL boss_sartharionAI : public ScriptedAI
|
||||
{
|
||||
DoCast(pTarget, SPELL_LAVA_STRIKE);
|
||||
|
||||
switch(rand()%15)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SARTHARION_SPECIAL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SARTHARION_SPECIAL_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SARTHARION_SPECIAL_3, m_creature); break;
|
||||
}
|
||||
if(urand(0,4) == 4)
|
||||
DoScriptText(RAND(SAY_SARTHARION_SPECIAL_1,SAY_SARTHARION_SPECIAL_2,SAY_SARTHARION_SPECIAL_3), m_creature);
|
||||
}
|
||||
m_uiLavaStrikeTimer = urand(5000,20000);
|
||||
}
|
||||
|
||||
@@ -170,12 +170,7 @@ struct TRINITY_DLL_DECL boss_bjarngrimAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* pVictim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* pKiller)
|
||||
|
||||
@@ -146,12 +146,7 @@ struct TRINITY_DLL_DECL boss_ionarAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void DespawnSpark()
|
||||
@@ -287,11 +282,7 @@ struct TRINITY_DLL_DECL boss_ionarAI : public ScriptedAI
|
||||
{
|
||||
++m_uiHealthAmountModifier;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPLIT_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPLIT_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPLIT_1,SAY_SPLIT_2), m_creature);
|
||||
|
||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
||||
m_creature->InterruptNonMeleeSpells(false);
|
||||
|
||||
@@ -130,12 +130,7 @@ struct TRINITY_DLL_DECL boss_lokenAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* pVictim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
@@ -203,12 +198,7 @@ struct TRINITY_DLL_DECL boss_lokenAI : public ScriptedAI
|
||||
|
||||
if (m_uiLightningNova_Timer < uiDiff)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_NOVA_1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_NOVA_2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_NOVA_3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_NOVA_1,SAY_NOVA_2,SAY_NOVA_3), m_creature);
|
||||
DoScriptText(EMOTE_NOVA, m_creature);
|
||||
DoCast(m_creature, m_bIsHeroic ? SPELL_LIGHTNING_NOVA_H : SPELL_LIGHTNING_NOVA_N);
|
||||
|
||||
|
||||
@@ -163,12 +163,7 @@ struct TRINITY_DLL_DECL boss_volkhanAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* pVictim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void DespawnGolem()
|
||||
@@ -260,11 +255,7 @@ struct TRINITY_DLL_DECL boss_volkhanAI : public ScriptedAI
|
||||
{
|
||||
//should he stomp even if he has no brittle golem to shatter?
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_STOMP_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_STOMP_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_STOMP_1,SAY_STOMP_2), m_creature);
|
||||
|
||||
DoCast(m_creature, m_bIsHeroic ? SPELL_SHATTERING_STOMP_H : SPELL_SHATTERING_STOMP_N);
|
||||
|
||||
@@ -298,11 +289,7 @@ struct TRINITY_DLL_DECL boss_volkhanAI : public ScriptedAI
|
||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
||||
m_creature->InterruptNonMeleeSpells(false);
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_FORGE_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_FORGE_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_FORGE_1,SAY_FORGE_2), m_creature);
|
||||
|
||||
m_bHasTemper = true;
|
||||
|
||||
|
||||
+5
-5
@@ -218,13 +218,13 @@ struct TRINITY_DLL_DECL boss_ymironAI : public ScriptedAI
|
||||
// Normal spells ------------------------------------------------------------------------
|
||||
if (m_uiBane_Timer < diff)
|
||||
{
|
||||
DoCast(m_creature, HEROIC(H_SPELL_BANE,SPELL_BANE));
|
||||
DoCast(m_creature, HEROIC(SPELL_BANE, H_SPELL_BANE));
|
||||
m_uiBane_Timer = urand(20000,25000);
|
||||
} else m_uiBane_Timer -= diff;
|
||||
|
||||
if (m_uiFetidRot_Timer < diff)
|
||||
{
|
||||
DoCast(m_creature->getVictim(), HEROIC(H_SPELL_FETID_ROT,SPELL_FETID_ROT));
|
||||
DoCast(m_creature->getVictim(), HEROIC(SPELL_FETID_ROT, H_SPELL_FETID_ROT));
|
||||
m_uiFetidRot_Timer = urand(10000,15000);
|
||||
} else m_uiFetidRot_Timer -= diff;
|
||||
|
||||
@@ -247,7 +247,7 @@ struct TRINITY_DLL_DECL boss_ymironAI : public ScriptedAI
|
||||
if (Creature* pTemp = m_creature->SummonCreature(CREATURE_SPIRIT_FOUNT, 385+rand()%10, -330+rand()%10, 104.756, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 180000))
|
||||
{
|
||||
pTemp->SetSpeed(MOVE_RUN, 0.4f);
|
||||
pTemp->CastSpell(pTemp, HEROIC(H_SPELL_SPIRIT_FOUNT,SPELL_SPIRIT_FOUNT), true);
|
||||
pTemp->CastSpell(pTemp, HEROIC(SPELL_SPIRIT_FOUNT, H_SPELL_SPIRIT_FOUNT), true);
|
||||
pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
pTemp->SetDisplayId(11686);
|
||||
@@ -259,13 +259,13 @@ struct TRINITY_DLL_DECL boss_ymironAI : public ScriptedAI
|
||||
|
||||
if (m_bIsActiveWithHALDOR && m_uiAbility_HALDOR_Timer < diff)
|
||||
{
|
||||
DoCast(m_creature->getVictim(), HEROIC(H_SPELL_SPIRIT_STRIKE,SPELL_SPIRIT_STRIKE));
|
||||
DoCast(m_creature->getVictim(), HEROIC(SPELL_SPIRIT_STRIKE, H_SPELL_SPIRIT_STRIKE));
|
||||
m_uiAbility_HALDOR_Timer = 5000; // overtime
|
||||
} else m_uiAbility_HALDOR_Timer -= diff;
|
||||
|
||||
if (m_bIsActiveWithRANULF && m_uiAbility_RANULF_Timer < diff)
|
||||
{
|
||||
DoCast(m_creature, HEROIC(H_SPELL_SPIRIT_BURST,SPELL_SPIRIT_BURST));
|
||||
DoCast(m_creature, HEROIC(SPELL_SPIRIT_BURST, H_SPELL_SPIRIT_BURST));
|
||||
m_uiAbility_RANULF_Timer = 10000; // overtime
|
||||
} else m_uiAbility_RANULF_Timer -= diff;
|
||||
|
||||
|
||||
+2
-11
@@ -186,12 +186,7 @@ struct TRINITY_DLL_DECL boss_exarch_maladaarAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch (rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature *summoned)
|
||||
@@ -217,11 +212,7 @@ struct TRINITY_DLL_DECL boss_exarch_maladaarAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch (rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
|
||||
+2
-11
@@ -104,12 +104,7 @@ struct TRINITY_DLL_DECL boss_nexusprince_shaffarAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
|
||||
DoZoneInCombat();
|
||||
summons.DoZoneInCombat();
|
||||
@@ -135,11 +130,7 @@ struct TRINITY_DLL_DECL boss_nexusprince_shaffarAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
|
||||
@@ -65,22 +65,12 @@ struct TRINITY_DLL_DECL boss_pandemoniusAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
+2
-11
@@ -85,12 +85,7 @@ struct TRINITY_DLL_DECL boss_darkweaver_sythAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -103,11 +98,7 @@ struct TRINITY_DLL_DECL boss_darkweaver_sythAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature *summoned)
|
||||
|
||||
+2
-11
@@ -107,12 +107,7 @@ struct TRINITY_DLL_DECL boss_talon_king_ikissAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -125,11 +120,7 @@ struct TRINITY_DLL_DECL boss_talon_king_ikissAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
+2
-11
@@ -118,21 +118,12 @@ struct TRINITY_DLL_DECL boss_ambassador_hellmawAI : public npc_escortAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3), m_creature);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
+2
-11
@@ -81,11 +81,7 @@ struct TRINITY_DLL_DECL boss_blackheart_the_inciterAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -98,12 +94,7 @@ struct TRINITY_DLL_DECL boss_blackheart_the_inciterAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3), m_creature);
|
||||
|
||||
if (pInstance)
|
||||
pInstance->SetData(DATA_BLACKHEARTTHEINCITEREVENT, IN_PROGRESS);
|
||||
|
||||
@@ -115,11 +115,7 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -210,11 +206,7 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
|
||||
if (EnrageTimer < diff)
|
||||
{
|
||||
DoCast(m_creature, SPELL_BERSERK);
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_ENRAGE1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_ENRAGE2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_ENRAGE1,SAY_ENRAGE2), m_creature);
|
||||
}else EnrageTimer -= diff;
|
||||
}
|
||||
|
||||
@@ -297,11 +289,7 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
|
||||
//Cast this without triggered so that it appears in combat logs and shows visual.
|
||||
DoCast(m_creature, SPELL_FEL_RAGE_SELF);
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPECIAL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPECIAL2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPECIAL1,SAY_SPECIAL2), m_creature);
|
||||
|
||||
AcidGeyserTimer = 1000;
|
||||
PhaseChangeTimer = 30000;
|
||||
|
||||
@@ -134,11 +134,7 @@ struct TRINITY_DLL_DECL boss_shahrazAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -227,11 +223,7 @@ struct TRINITY_DLL_DECL boss_shahrazAI : public ScriptedAI
|
||||
|
||||
TeleportPlayers();
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPELL2, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPELL3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPELL2,SAY_SPELL3), m_creature);
|
||||
FatalAttractionExplodeTimer = 2000;
|
||||
FatalAttractionTimer = 40000 + rand()%31 * 1000;
|
||||
}else FatalAttractionTimer -= diff;
|
||||
@@ -286,12 +278,7 @@ struct TRINITY_DLL_DECL boss_shahrazAI : public ScriptedAI
|
||||
//Random taunts
|
||||
if (RandomYellTimer < diff)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TAUNT1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TAUNT2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_TAUNT3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TAUNT1,SAY_TAUNT2,SAY_TAUNT3), m_creature);
|
||||
RandomYellTimer = 60000 + rand()%91 * 1000;
|
||||
}else RandomYellTimer -= diff;
|
||||
|
||||
|
||||
@@ -380,12 +380,7 @@ struct TRINITY_DLL_DECL boss_essence_of_sufferingAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SUFF_SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SUFF_SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SUFF_SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SUFF_SAY_SLAY1,SUFF_SAY_SLAY2,SUFF_SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void CastFixate()
|
||||
@@ -502,12 +497,7 @@ struct TRINITY_DLL_DECL boss_essence_of_desireAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(DESI_SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(DESI_SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(DESI_SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(DESI_SAY_SLAY1,DESI_SAY_SLAY2,DESI_SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
@@ -574,11 +564,7 @@ struct TRINITY_DLL_DECL boss_essence_of_angerAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(ANGER_SAY_FREED, m_creature); break;
|
||||
case 1: DoScriptText(ANGER_SAY_FREED2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(ANGER_SAY_FREED,ANGER_SAY_FREED2), m_creature);
|
||||
|
||||
DoZoneInCombat();
|
||||
DoCast(m_creature, AURA_OF_ANGER, true);
|
||||
@@ -591,11 +577,7 @@ struct TRINITY_DLL_DECL boss_essence_of_angerAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(ANGER_SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(ANGER_SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(ANGER_SAY_SLAY1,ANGER_SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
@@ -252,11 +252,7 @@ struct TRINITY_DLL_DECL boss_teron_gorefiendAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -426,11 +422,7 @@ struct TRINITY_DLL_DECL boss_teron_gorefiendAI : public ScriptedAI
|
||||
|
||||
if (target)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPECIAL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPECIAL2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPECIAL1,SAY_SPECIAL2), m_creature);
|
||||
DoCast(target, SPELL_INCINERATE);
|
||||
IncinerateTimer = 20000 + rand()%31 * 1000;
|
||||
}
|
||||
@@ -463,11 +455,7 @@ struct TRINITY_DLL_DECL boss_teron_gorefiendAI : public ScriptedAI
|
||||
|
||||
if (RandomYellTimer < diff)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SPELL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SPELL2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SPELL1,SAY_SPELL2), m_creature);
|
||||
RandomYellTimer = 50000 + rand()%51 * 1000;
|
||||
}else RandomYellTimer -= diff;
|
||||
|
||||
|
||||
@@ -75,11 +75,7 @@ struct TRINITY_DLL_DECL boss_doomlordkazzakAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2), m_creature);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
@@ -90,12 +86,7 @@ struct TRINITY_DLL_DECL boss_doomlordkazzakAI : public ScriptedAI
|
||||
|
||||
DoCast(m_creature,SPELL_CAPTURESOUL);
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_KILL3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL1,SAY_KILL2,SAY_KILL3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
@@ -71,12 +71,7 @@ struct TRINITY_DLL_DECL boss_doomwalkerAI : public ScriptedAI
|
||||
if (rand()%5)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -119,11 +114,7 @@ struct TRINITY_DLL_DECL boss_doomwalkerAI : public ScriptedAI
|
||||
//Spell Overrun
|
||||
if (Overrun_Timer < diff)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_OVERRUN_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_OVERRUN_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_OVERRUN_1,SAY_OVERRUN_2), m_creature);
|
||||
|
||||
DoCast(m_creature->getVictim(),SPELL_OVERRUN);
|
||||
Overrun_Timer = 25000 + rand()%15000;
|
||||
@@ -135,11 +126,7 @@ struct TRINITY_DLL_DECL boss_doomwalkerAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_EARTHQUAKE_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_EARTHQUAKE_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_EARTHQUAKE_1,SAY_EARTHQUAKE_2), m_creature);
|
||||
|
||||
//remove enrage before casting earthquake because enrage + earthquake = 16000dmg over 8sec and all dead
|
||||
if (InEnrage)
|
||||
|
||||
+1
-6
@@ -192,12 +192,7 @@ struct TRINITY_DLL_DECL boss_fathomlord_karathressAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *killer)
|
||||
|
||||
+2
-10
@@ -166,19 +166,11 @@ struct TRINITY_DLL_DECL boss_hydross_the_unstableAI : public ScriptedAI
|
||||
{
|
||||
if (CorruptedForm)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_CORRUPT_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_CORRUPT_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_CORRUPT_SLAY1,SAY_CORRUPT_SLAY2), m_creature);
|
||||
}
|
||||
else
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_CLEAN_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_CLEAN_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_CLEAN_SLAY1,SAY_CLEAN_SLAY2), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-18
@@ -216,12 +216,7 @@ struct TRINITY_DLL_DECL boss_lady_vashjAI : public ScriptedAI
|
||||
}
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -234,13 +229,7 @@ struct TRINITY_DLL_DECL boss_lady_vashjAI : public ScriptedAI
|
||||
|
||||
void StartEvent()
|
||||
{
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO3, m_creature); break;
|
||||
case 3: DoScriptText(SAY_AGGRO4, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3,SAY_AGGRO4), m_creature);
|
||||
|
||||
Phase = 1;
|
||||
|
||||
@@ -315,11 +304,7 @@ struct TRINITY_DLL_DECL boss_lady_vashjAI : public ScriptedAI
|
||||
}
|
||||
if (rand()%3)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_BOWSHOT1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_BOWSHOT2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_BOWSHOT1,SAY_BOWSHOT2), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-18
@@ -350,21 +350,11 @@ struct TRINITY_DLL_DECL boss_leotheras_the_blindAI : public ScriptedAI
|
||||
|
||||
if (DemonForm)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_DEMON_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_DEMON_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_DEMON_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_DEMON_SLAY1,SAY_DEMON_SLAY2,SAY_DEMON_SLAY3), m_creature);
|
||||
}
|
||||
else
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_NIGHTELF_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_NIGHTELF_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_NIGHTELF_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_NIGHTELF_SLAY1,SAY_NIGHTELF_SLAY2,SAY_NIGHTELF_SLAY3), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -596,12 +586,7 @@ struct TRINITY_DLL_DECL boss_leotheras_the_blind_demonformAI : public ScriptedAI
|
||||
if (victim->GetTypeId() != TYPEID_PLAYER)
|
||||
return;
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_DEMON_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_DEMON_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_DEMON_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_DEMON_SLAY1,SAY_DEMON_SLAY2,SAY_DEMON_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
+3
-16
@@ -146,12 +146,7 @@ struct TRINITY_DLL_DECL boss_morogrim_tidewalkerAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -197,11 +192,7 @@ struct TRINITY_DLL_DECL boss_morogrim_tidewalkerAI : public ScriptedAI
|
||||
}
|
||||
else
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SUMMON1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SUMMON2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SUMMON1,SAY_SUMMON2), m_creature);
|
||||
|
||||
for(uint8 i = 0; i < 10; ++i)
|
||||
{
|
||||
@@ -247,11 +238,7 @@ struct TRINITY_DLL_DECL boss_morogrim_tidewalkerAI : public ScriptedAI
|
||||
}
|
||||
}
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SUMMON_BUBL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SUMMON_BUBL2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SUMMON_BUBL1,SAY_SUMMON_BUBL2), m_creature);
|
||||
|
||||
DoScriptText(EMOTE_WATERY_GRAVE, m_creature);
|
||||
WateryGrave_Timer = 30000;
|
||||
|
||||
+2
-11
@@ -76,21 +76,12 @@ struct TRINITY_DLL_DECL boss_thespiaAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
|
||||
if (pInstance)
|
||||
pInstance->SetData(TYPE_HYDROMANCER_THESPIA, IN_PROGRESS);
|
||||
|
||||
+2
-12
@@ -88,22 +88,12 @@ struct TRINITY_DLL_DECL boss_mekgineer_steamriggerAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2,SAY_SLAY_3), m_creature);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
|
||||
if (pInstance)
|
||||
pInstance->SetData(TYPE_MEKGINEER_STEAMRIGGER, IN_PROGRESS);
|
||||
|
||||
+2
-11
@@ -113,12 +113,7 @@ struct TRINITY_DLL_DECL boss_warlord_kalithreshAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3), m_creature);
|
||||
|
||||
if (pInstance)
|
||||
pInstance->SetData(TYPE_WARLORD_KALITHRESH, IN_PROGRESS);
|
||||
@@ -126,11 +121,7 @@ struct TRINITY_DLL_DECL boss_warlord_kalithreshAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void SpellHit(Unit *caster, const SpellEntry *spell)
|
||||
|
||||
@@ -94,12 +94,7 @@ struct TRINITY_DLL_DECL boss_gruulAI : public ScriptedAI
|
||||
|
||||
void KilledUnit()
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
|
||||
@@ -158,12 +158,7 @@ struct TRINITY_DLL_DECL boss_high_king_maulgarAI : public ScriptedAI
|
||||
|
||||
void KilledUnit()
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -176,13 +171,7 @@ struct TRINITY_DLL_DECL boss_high_king_maulgarAI : public ScriptedAI
|
||||
|
||||
void AddDeath()
|
||||
{
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_OGRE_DEATH1, m_creature);break;
|
||||
case 1: DoScriptText(SAY_OGRE_DEATH2, m_creature);break;
|
||||
case 2: DoScriptText(SAY_OGRE_DEATH3, m_creature);break;
|
||||
case 3: DoScriptText(SAY_OGRE_DEATH4, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_OGRE_DEATH1,SAY_OGRE_DEATH2,SAY_OGRE_DEATH3,SAY_OGRE_DEATH4), m_creature);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+2
-11
@@ -115,11 +115,7 @@ struct TRINITY_DLL_DECL boss_kelidan_the_breakerAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void ChannelerEngaged(Unit* who)
|
||||
@@ -127,12 +123,7 @@ struct TRINITY_DLL_DECL boss_kelidan_the_breakerAI : public ScriptedAI
|
||||
if (who && !addYell)
|
||||
{
|
||||
addYell = true;
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_ADD_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_ADD_AGGRO_2, m_creature); break;
|
||||
default: DoScriptText(SAY_ADD_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_ADD_AGGRO_1,SAY_ADD_AGGRO_2,SAY_ADD_AGGRO_3), m_creature);
|
||||
}
|
||||
for(uint8 i=0; i<5; ++i)
|
||||
{
|
||||
|
||||
+2
-11
@@ -69,12 +69,7 @@ struct TRINITY_DLL_DECL boss_the_makerAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
|
||||
if (!pInstance)
|
||||
return;
|
||||
@@ -85,11 +80,7 @@ struct TRINITY_DLL_DECL boss_the_makerAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
|
||||
+1
-6
@@ -78,12 +78,7 @@ struct TRINITY_DLL_DECL boss_omor_the_unscarredAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
|
||||
+2
-11
@@ -66,12 +66,7 @@ struct TRINITY_DLL_DECL boss_watchkeeper_gargolmarAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_AGGRO_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_AGGRO_2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_AGGRO_3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO_1,SAY_AGGRO_2,SAY_AGGRO_3), m_creature);
|
||||
}
|
||||
|
||||
void MoveInLineOfSight(Unit* who)
|
||||
@@ -97,11 +92,7 @@ struct TRINITY_DLL_DECL boss_watchkeeper_gargolmarAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
|
||||
+2
-11
@@ -93,12 +93,7 @@ struct TRINITY_DLL_DECL boss_warchief_kargath_bladefistAI : public ScriptedAI
|
||||
|
||||
void EnterCombat(Unit *who)
|
||||
{
|
||||
switch (rand()%3)
|
||||
{
|
||||
case 0:DoScriptText(SAY_AGGRO1, m_creature);break;
|
||||
case 1:DoScriptText(SAY_AGGRO2, m_creature);break;
|
||||
case 2:DoScriptText(SAY_AGGRO3, m_creature);break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_AGGRO1,SAY_AGGRO2,SAY_AGGRO3), m_creature);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature *summoned)
|
||||
@@ -121,11 +116,7 @@ struct TRINITY_DLL_DECL boss_warchief_kargath_bladefistAI : public ScriptedAI
|
||||
{
|
||||
if (victim->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -153,11 +153,7 @@ struct TRINITY_DLL_DECL mob_lumpAI : public ScriptedAI
|
||||
if (!m_creature->IsStandState())
|
||||
m_creature->SetStandState(UNIT_STAND_STATE_STAND);
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(LUMP_SAY0, m_creature); break;
|
||||
case 1: DoScriptText(LUMP_SAY1, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(LUMP_SAY0,LUMP_SAY1), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
@@ -956,12 +956,7 @@ struct TRINITY_DLL_DECL npc_earthmender_wildaAI : public npc_escortAI
|
||||
//this is very unclear, random say without no real relevance to script/event
|
||||
void DoRandomSay()
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_WIL_PROGRESS2, m_creature); break;
|
||||
case 1: DoScriptText(SAY_WIL_PROGRESS4, m_creature); break;
|
||||
case 2: DoScriptText(SAY_WIL_PROGRESS5, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_WIL_PROGRESS2,SAY_WIL_PROGRESS4,SAY_WIL_PROGRESS5), m_creature);
|
||||
}
|
||||
|
||||
void DoSpawnAssassin()
|
||||
@@ -980,11 +975,8 @@ struct TRINITY_DLL_DECL npc_earthmender_wildaAI : public npc_escortAI
|
||||
if (pWho->GetTypeId() != TYPEID_PLAYER)
|
||||
{
|
||||
//appears to be random
|
||||
switch(rand()%4)
|
||||
{
|
||||
case 0: DoScriptText(SAY_WIL_AGGRO1, m_creature, pWho); break;
|
||||
case 1: DoScriptText(SAY_WIL_AGGRO2, m_creature, pWho); break;
|
||||
}
|
||||
if (urand(0,1))
|
||||
DoScriptText(RAND(SAY_WIL_AGGRO1, m_creature,SAY_WIL_AGGRO2, m_creature), pWho);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -116,11 +116,7 @@ struct TRINITY_DLL_DECL npc_millhouse_manastormAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
+3
-15
@@ -129,11 +129,7 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
||||
if (victim->GetEntry() == 21436)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void DoSplit(uint32 val)
|
||||
@@ -215,11 +211,7 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_FEAR_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_FEAR_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_FEAR_1,SAY_FEAR_2), m_creature);
|
||||
|
||||
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1))
|
||||
DoCast(target,SPELL_FEAR);
|
||||
@@ -234,11 +226,7 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_MIND_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_MIND_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_MIND_1,SAY_MIND_2), m_creature);
|
||||
|
||||
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1))
|
||||
DoCast(target,HEROIC(SPELL_DOMINATION, H_SPELL_DOMINATION));
|
||||
|
||||
+2
-10
@@ -88,11 +88,7 @@ struct TRINITY_DLL_DECL boss_high_botanist_freywinnAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL_1,SAY_KILL_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -107,11 +103,7 @@ struct TRINITY_DLL_DECL boss_high_botanist_freywinnAI : public ScriptedAI
|
||||
|
||||
if (TreeForm_Timer < diff)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_TREE_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_TREE_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_TREE_1,SAY_TREE_2), m_creature);
|
||||
|
||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
||||
m_creature->InterruptNonMeleeSpells(true);
|
||||
|
||||
@@ -137,11 +137,7 @@ struct TRINITY_DLL_DECL boss_warp_splinterAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -162,11 +158,7 @@ struct TRINITY_DLL_DECL boss_warp_splinterAI : public ScriptedAI
|
||||
if (Creature *pTreant = m_creature->SummonCreature(CREATURE_TREANT,treant_pos[i][0],treant_pos[i][1],treant_pos[i][2],O,TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN,25000))
|
||||
CAST_AI(mob_treantAI, pTreant->AI())->WarpGuid = m_creature->GetGUID();
|
||||
}
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SUMMON_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SUMMON_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SUMMON_1,SAY_SUMMON_2), m_creature);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
@@ -133,12 +133,7 @@ struct TRINITY_DLL_DECL boss_high_astromancer_solarianAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_KILL1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_KILL2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_KILL3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_KILL1,SAY_KILL2,SAY_KILL3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
|
||||
@@ -71,12 +71,7 @@ struct TRINITY_DLL_DECL boss_void_reaverAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit *victim)
|
||||
{
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
case 2: DoScriptText(SAY_SLAY3, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2,SAY_SLAY3), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit *victim)
|
||||
@@ -106,11 +101,7 @@ struct TRINITY_DLL_DECL boss_void_reaverAI : public ScriptedAI
|
||||
{
|
||||
DoCast(m_creature->getVictim(),SPELL_POUNDING);
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_POUNDING1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_POUNDING2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_POUNDING1,SAY_POUNDING2), m_creature);
|
||||
Pounding_Timer = 15000; //cast time(3000) + cooldown time(12000)
|
||||
}else Pounding_Timer -= diff;
|
||||
|
||||
|
||||
+2
-10
@@ -70,11 +70,7 @@ struct TRINITY_DLL_DECL boss_gatewatcher_iron_handAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -107,11 +103,7 @@ struct TRINITY_DLL_DECL boss_gatewatcher_iron_handAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_HAMMER_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_HAMMER_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_HAMMER_1,SAY_HAMMER_2), m_creature);
|
||||
Jackhammer_Timer = 30000;
|
||||
}else Jackhammer_Timer -= diff;
|
||||
|
||||
|
||||
+2
-10
@@ -83,11 +83,7 @@ struct TRINITY_DLL_DECL boss_nethermancer_sepethreaAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY1,SAY_SLAY2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -126,11 +122,7 @@ struct TRINITY_DLL_DECL boss_nethermancer_sepethreaAI : public ScriptedAI
|
||||
if (rand()%2)
|
||||
return;
|
||||
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_DRAGONS_BREATH_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_DRAGONS_BREATH_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_DRAGONS_BREATH_1,SAY_DRAGONS_BREATH_2), m_creature);
|
||||
}
|
||||
dragons_breath_Timer = 12000 + rand()%10000;
|
||||
}else dragons_breath_Timer -= diff;
|
||||
|
||||
+2
-10
@@ -86,11 +86,7 @@ struct TRINITY_DLL_DECL boss_pathaleon_the_calculatorAI : public ScriptedAI
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_SLAY_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_SLAY_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_SLAY_1,SAY_SLAY_2), m_creature);
|
||||
}
|
||||
|
||||
void JustDied(Unit* Killer)
|
||||
@@ -138,11 +134,7 @@ struct TRINITY_DLL_DECL boss_pathaleon_the_calculatorAI : public ScriptedAI
|
||||
{
|
||||
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1))
|
||||
{
|
||||
switch(rand()%2)
|
||||
{
|
||||
case 0: DoScriptText(SAY_DOMINATION_1, m_creature); break;
|
||||
case 1: DoScriptText(SAY_DOMINATION_2, m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_DOMINATION_1,SAY_DOMINATION_2), m_creature);
|
||||
|
||||
DoCast(target,SPELL_DOMINATION);
|
||||
}
|
||||
|
||||
@@ -571,13 +571,9 @@ struct TRINITY_DLL_DECL npc_injured_patientAI : public ScriptedAI
|
||||
if (caster->GetTypeId() == TYPEID_PLAYER && m_creature->isAlive() && spell->Id == 20804)
|
||||
{
|
||||
if ((CAST_PLR(caster)->GetQuestStatus(6624) == QUEST_STATUS_INCOMPLETE) || (CAST_PLR(caster)->GetQuestStatus(6622) == QUEST_STATUS_INCOMPLETE))
|
||||
{
|
||||
if (Doctorguid)
|
||||
{
|
||||
if (Creature* Doctor = Unit::GetCreature(*m_creature, Doctorguid))
|
||||
CAST_AI(npc_doctorAI, Doctor->AI())->PatientSaved(m_creature, CAST_PLR(caster), Coord);
|
||||
}
|
||||
}
|
||||
|
||||
//make not selectable
|
||||
m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -588,12 +584,7 @@ struct TRINITY_DLL_DECL npc_injured_patientAI : public ScriptedAI
|
||||
//stand up
|
||||
m_creature->SetUInt32Value(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_STAND);
|
||||
|
||||
switch(rand()%3)
|
||||
{
|
||||
case 0: DoScriptText(SAY_DOC1,m_creature); break;
|
||||
case 1: DoScriptText(SAY_DOC2,m_creature); break;
|
||||
case 2: DoScriptText(SAY_DOC3,m_creature); break;
|
||||
}
|
||||
DoScriptText(RAND(SAY_DOC1,SAY_DOC2,SAY_DOC3), m_creature);
|
||||
|
||||
uint32 mobId = m_creature->GetEntry();
|
||||
m_creature->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE);
|
||||
|
||||
Reference in new issue
Block a user