AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
boss_rotface.cpp File Reference
#include "CreatureScript.h"
#include "GridNotifiers.h"
#include "ObjectMgr.h"
#include "ScriptedCreature.h"
#include "SpellAuras.h"
#include "SpellScriptLoader.h"
#include "icecrown_citadel.h"

Go to the source code of this file.

Classes

struct  RotfaceHeightCheck
 
class  boss_rotface
 
struct  boss_rotface::boss_rotfaceAI
 
class  npc_little_ooze
 
struct  npc_little_ooze::npc_little_oozeAI
 
class  npc_big_ooze
 
struct  npc_big_ooze::npc_big_oozeAI
 
class  spell_rotface_mutated_infection
 
class  spell_rotface_mutated_infection_aura
 
class  spell_rotface_little_ooze_combine
 
class  spell_rotface_large_ooze_combine
 
class  spell_rotface_large_ooze_buff_combine
 
class  spell_rotface_unstable_ooze_explosion_init
 
class  spell_rotface_unstable_ooze_explosion
 
class  spell_rotface_unstable_ooze_explosion_suicide_aura
 
class  npc_precious_icc
 
struct  npc_precious_icc::npc_precious_iccAI
 

Macros

#define MUTATED_INFECTION   RAID_MODE<int32>(69674, 71224, 73022, 73023)
 

Enumerations

enum  Texts {
  SAY_PRECIOUS_DIES = 0 ,
  SAY_AGGRO = 1 ,
  EMOTE_SLIME_SPRAY = 2 ,
  SAY_SLIME_SPRAY = 3 ,
  EMOTE_UNSTABLE_EXPLOSION = 4 ,
  SAY_UNSTABLE_EXPLOSION = 5 ,
  SAY_KILL = 6 ,
  SAY_BERSERK = 7 ,
  SAY_DEATH = 8 ,
  EMOTE_MUTATED_INFECTION = 9 ,
  SAY_ROTFACE_OOZE_FLOOD = 2 ,
  EMOTE_PRECIOUS_ZOMBIES = 0
}
 
enum  Spells {
  SPELL_SLIME_SPRAY = 69508 ,
  SPELL_MUTATED_INFECTION = 69674 ,
  SPELL_VILE_GAS_H = 69240 ,
  SPELL_OOZE_FLOOD_VISUAL = 69785 ,
  SPELL_OOZE_FLOOD_PERIODIC = 69788 ,
  SPELL_LITTLE_OOZE_COMBINE = 69537 ,
  SPELL_LARGE_OOZE_COMBINE = 69552 ,
  SPELL_LARGE_OOZE_BUFF_COMBINE = 69611 ,
  SPELL_OOZE_MERGE = 69889 ,
  SPELL_WEAK_RADIATING_OOZE = 69750 ,
  SPELL_RADIATING_OOZE = 69760 ,
  SPELL_UNSTABLE_OOZE = 69558 ,
  SPELL_GREEN_ABOMINATION_HITTIN__YA_PROC = 70001 ,
  SPELL_UNSTABLE_OOZE_EXPLOSION = 69839 ,
  SPELL_STICKY_OOZE = 69774 ,
  SPELL_UNSTABLE_OOZE_EXPLOSION_TRIGGER = 69832 ,
  SPELL_MORTAL_WOUND = 71127 ,
  SPELL_DECIMATE = 71123 ,
  SPELL_AWAKEN_PLAGUED_ZOMBIES = 71159
}
 
enum  Events {
  EVENT_NONE ,
  EVENT_UNROOT ,
  EVENT_SLIME_SPRAY ,
  EVENT_HASTEN_INFECTIONS ,
  EVENT_MUTATED_INFECTION ,
  EVENT_ROTFACE_OOZE_FLOOD ,
  EVENT_ROTFACE_VILE_GAS ,
  EVENT_STICKY_OOZE ,
  EVENT_DECIMATE ,
  EVENT_MORTAL_WOUND ,
  EVENT_SUMMON_ZOMBIES
}
 

Functions

uint32 getOozeFloodSpellIndex (uint32 id)
 
void AddSC_boss_rotface ()
 

Variables

uint32 const oozeFloodSpells [4] = {69782, 69796, 69798, 69801}
 

Macro Definition Documentation

◆ MUTATED_INFECTION

#define MUTATED_INFECTION   RAID_MODE<int32>(69674, 71224, 73022, 73023)

Enumeration Type Documentation

◆ Events

enum Events
Enumerator
EVENT_NONE 
EVENT_UNROOT 
EVENT_SLIME_SPRAY 
EVENT_HASTEN_INFECTIONS 
EVENT_MUTATED_INFECTION 
EVENT_ROTFACE_OOZE_FLOOD 
EVENT_ROTFACE_VILE_GAS 
EVENT_STICKY_OOZE 
EVENT_DECIMATE 
EVENT_MORTAL_WOUND 
EVENT_SUMMON_ZOMBIES 
78{
80 // Rotface
87
89
90 // Precious
94};
@ EVENT_ROTFACE_OOZE_FLOOD
Definition boss_rotface.cpp:85
@ EVENT_SUMMON_ZOMBIES
Definition boss_rotface.cpp:93
@ EVENT_SLIME_SPRAY
Definition boss_rotface.cpp:82
@ EVENT_ROTFACE_VILE_GAS
Definition boss_rotface.cpp:86
@ EVENT_MORTAL_WOUND
Definition boss_rotface.cpp:92
@ EVENT_NONE
Definition boss_rotface.cpp:79
@ EVENT_STICKY_OOZE
Definition boss_rotface.cpp:88
@ EVENT_MUTATED_INFECTION
Definition boss_rotface.cpp:84
@ EVENT_HASTEN_INFECTIONS
Definition boss_rotface.cpp:83
@ EVENT_DECIMATE
Definition boss_rotface.cpp:91
@ EVENT_UNROOT
Definition boss_rotface.cpp:81

◆ Spells

enum Spells
Enumerator
SPELL_SLIME_SPRAY 
SPELL_MUTATED_INFECTION 
SPELL_VILE_GAS_H 
SPELL_OOZE_FLOOD_VISUAL 
SPELL_OOZE_FLOOD_PERIODIC 
SPELL_LITTLE_OOZE_COMBINE 
SPELL_LARGE_OOZE_COMBINE 
SPELL_LARGE_OOZE_BUFF_COMBINE 
SPELL_OOZE_MERGE 
SPELL_WEAK_RADIATING_OOZE 
SPELL_RADIATING_OOZE 
SPELL_UNSTABLE_OOZE 
SPELL_GREEN_ABOMINATION_HITTIN__YA_PROC 
SPELL_UNSTABLE_OOZE_EXPLOSION 
SPELL_STICKY_OOZE 
SPELL_UNSTABLE_OOZE_EXPLOSION_TRIGGER 
SPELL_MORTAL_WOUND 
SPELL_DECIMATE 
SPELL_AWAKEN_PLAGUED_ZOMBIES 
45{
46 // Rotface
47 SPELL_SLIME_SPRAY = 69508, // every 20 seconds
48 SPELL_MUTATED_INFECTION = 69674, // hastens every 1:30
49
50 SPELL_VILE_GAS_H = 69240,
51
52 // Ooze Flood
55
56 // Oozes
57 SPELL_LITTLE_OOZE_COMBINE = 69537, // combine 2 Small Oozes
58 SPELL_LARGE_OOZE_COMBINE = 69552, // combine 2 Large Oozes
59 SPELL_LARGE_OOZE_BUFF_COMBINE = 69611, // combine Large and Small Ooze
60 SPELL_OOZE_MERGE = 69889, // 2 Small Oozes summon a Large Ooze
61 SPELL_WEAK_RADIATING_OOZE = 69750, // passive damage aura - small
62 SPELL_RADIATING_OOZE = 69760, // passive damage aura - large
63 SPELL_UNSTABLE_OOZE = 69558, // damage boost and counter for explosion
64 SPELL_GREEN_ABOMINATION_HITTIN__YA_PROC = 70001, // prevents getting hit by infection
66 SPELL_STICKY_OOZE = 69774,
68
69 // Precious
70 SPELL_MORTAL_WOUND = 71127,
71 SPELL_DECIMATE = 71123,
73};
@ SPELL_MUTATED_INFECTION
Definition boss_rotface.cpp:48
@ SPELL_OOZE_FLOOD_VISUAL
Definition boss_rotface.cpp:53
@ SPELL_LARGE_OOZE_COMBINE
Definition boss_rotface.cpp:58
@ SPELL_UNSTABLE_OOZE_EXPLOSION
Definition boss_rotface.cpp:65
@ SPELL_UNSTABLE_OOZE
Definition boss_rotface.cpp:63
@ SPELL_UNSTABLE_OOZE_EXPLOSION_TRIGGER
Definition boss_rotface.cpp:67
@ SPELL_RADIATING_OOZE
Definition boss_rotface.cpp:62
@ SPELL_AWAKEN_PLAGUED_ZOMBIES
Definition boss_rotface.cpp:72
@ SPELL_SLIME_SPRAY
Definition boss_rotface.cpp:47
@ SPELL_WEAK_RADIATING_OOZE
Definition boss_rotface.cpp:61
@ SPELL_OOZE_FLOOD_PERIODIC
Definition boss_rotface.cpp:54
@ SPELL_DECIMATE
Definition boss_rotface.cpp:71
@ SPELL_VILE_GAS_H
Definition boss_rotface.cpp:50
@ SPELL_STICKY_OOZE
Definition boss_rotface.cpp:66
@ SPELL_LITTLE_OOZE_COMBINE
Definition boss_rotface.cpp:57
@ SPELL_MORTAL_WOUND
Definition boss_rotface.cpp:70
@ SPELL_GREEN_ABOMINATION_HITTIN__YA_PROC
Definition boss_rotface.cpp:64
@ SPELL_LARGE_OOZE_BUFF_COMBINE
Definition boss_rotface.cpp:59
@ SPELL_OOZE_MERGE
Definition boss_rotface.cpp:60

◆ Texts

enum Texts
Enumerator
SAY_PRECIOUS_DIES 
SAY_AGGRO 
EMOTE_SLIME_SPRAY 
SAY_SLIME_SPRAY 
EMOTE_UNSTABLE_EXPLOSION 
SAY_UNSTABLE_EXPLOSION 
SAY_KILL 
SAY_BERSERK 
SAY_DEATH 
EMOTE_MUTATED_INFECTION 
SAY_ROTFACE_OOZE_FLOOD 
EMOTE_PRECIOUS_ZOMBIES 
27{
29 SAY_AGGRO = 1,
34 SAY_KILL = 6,
35 SAY_BERSERK = 7,
36 SAY_DEATH = 8,
38
39 SAY_ROTFACE_OOZE_FLOOD = 2, // professor
40
42};
@ EMOTE_MUTATED_INFECTION
Definition boss_rotface.cpp:37
@ SAY_DEATH
Definition boss_rotface.cpp:36
@ EMOTE_SLIME_SPRAY
Definition boss_rotface.cpp:30
@ SAY_UNSTABLE_EXPLOSION
Definition boss_rotface.cpp:33
@ SAY_AGGRO
Definition boss_rotface.cpp:29
@ SAY_KILL
Definition boss_rotface.cpp:34
@ SAY_SLIME_SPRAY
Definition boss_rotface.cpp:31
@ EMOTE_PRECIOUS_ZOMBIES
Definition boss_rotface.cpp:41
@ EMOTE_UNSTABLE_EXPLOSION
Definition boss_rotface.cpp:32
@ SAY_ROTFACE_OOZE_FLOOD
Definition boss_rotface.cpp:39
@ SAY_BERSERK
Definition boss_rotface.cpp:35
@ SAY_PRECIOUS_DIES
Definition boss_rotface.cpp:28

Function Documentation

◆ AddSC_boss_rotface()

void AddSC_boss_rotface ( )
902{
903 new boss_rotface();
904 new npc_little_ooze();
905 new npc_big_ooze();
913
914 new npc_precious_icc();
915}
#define RegisterSpellAndAuraScriptPair(script_1, script_2)
Definition SpellScriptLoader.h:90
#define RegisterSpellScript(spell_script)
Definition SpellScriptLoader.h:88
Definition boss_rotface.cpp:124
Definition boss_rotface.cpp:425
Definition boss_rotface.cpp:341
Definition boss_rotface.cpp:811
Definition boss_rotface.cpp:678
Definition boss_rotface.cpp:606
Definition boss_rotface.cpp:576
Definition boss_rotface.cpp:561
Definition boss_rotface.cpp:510
Definition boss_rotface.cpp:735
Definition boss_rotface.cpp:762

References RegisterSpellAndAuraScriptPair, and RegisterSpellScript.

Referenced by AddNorthrendScripts().

◆ getOozeFloodSpellIndex()

uint32 getOozeFloodSpellIndex ( uint32  id)
98{
99 switch (id)
100 {
101 case 69782:
102 return 0;
103 case 69796:
104 return 1;
105 case 69798:
106 return 2;
107 case 69801:
108 return 3;
109 }
110 return 0;
111}

Referenced by boss_rotface::boss_rotfaceAI::SpellHitTarget().

Variable Documentation

◆ oozeFloodSpells

uint32 const oozeFloodSpells[4] = {69782, 69796, 69798, 69801}
96{69782, 69796, 69798, 69801};

Referenced by boss_rotface::boss_rotfaceAI::UpdateAI().