AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
boss_viscidus.cpp File Reference
#include "CreatureScript.h"
#include "Player.h"
#include "ScriptedCreature.h"
#include "SpellScript.h"
#include "SpellScriptLoader.h"
#include "temple_of_ahnqiraj.h"

Go to the source code of this file.

Classes

struct  boss_viscidus
 
struct  boss_glob_of_viscidus
 
struct  npc_toxic_slime
 
class  spell_explode_trigger
 
class  spell_summon_toxin_slime
 

Enumerations

enum  Spells {
  SPELL_POISON_SHOCK = 25993 ,
  SPELL_POISONBOLT_VOLLEY = 25991 ,
  SPELL_SUMMON_TOXIN_SLIME = 26584 ,
  SPELL_SUMMON_TOXIN_SLIME_2 = 26577 ,
  SPELL_VISCIDUS_SLOWED = 26034 ,
  SPELL_VISCIDUS_SLOWED_MORE = 26036 ,
  SPELL_VISCIDUS_FREEZE = 25937 ,
  SPELL_REJOIN_VISCIDUS = 25896 ,
  SPELL_EXPLODE_TRIGGER = 25938 ,
  SPELL_VISCIDUS_SHRINKS = 25893 ,
  SPELL_INVIS_SELF = 25905 ,
  SPELL_VISCIDUS_GROWS = 25897 ,
  SPELL_STUN_SELF = 25900 ,
  SPELL_TOXIN = 26575
}
 
enum  Events {
  EVENT_POISONBOLT_VOLLEY = 1 ,
  EVENT_POISON_SHOCK = 2 ,
  EVENT_TOXIN = 3 ,
  EVENT_RESET_PHASE = 4
}
 
enum  Phases {
  PHASE_FROST = 1 ,
  PHASE_MELEE = 2 ,
  PHASE_GLOB = 3
}
 
enum  Emotes {
  EMOTE_SLOW = 0 ,
  EMOTE_FREEZE = 1 ,
  EMOTE_FROZEN = 2 ,
  EMOTE_CRACK = 3 ,
  EMOTE_SHATTER = 4 ,
  EMOTE_EXPLODE = 5
}
 
enum  HitCounter {
  HITCOUNTER_SLOW = 100 ,
  HITCOUNTER_SLOW_MORE = 150 ,
  HITCOUNTER_FREEZE = 200 ,
  HITCOUNTER_CRACK = 50 ,
  HITCOUNTER_SHATTER = 100 ,
  HITCOUNTER_EXPLODE = 150
}
 
enum  MovePoints { ROOM_CENTER = 1 }
 
enum  Misc { MAX_GLOB_SPAWN = 20 }
 

Functions

void AddSC_boss_viscidus ()
 

Variables

Position const roomCenter = { -7992.36f, 908.19f, -52.62f, 1.68f }
 
Position const resetPoint = { -7992.0f, 1041.0f, -23.84f }
 
std::array< uint32, MAX_GLOB_SPAWN > const spawnGlobSpells = { 25865, 25866, 25867, 25868, 25869, 25870, 25871, 25872, 25873, 25874, 25875, 25876, 25877, 25878, 25879, 25880, 25881, 25882, 25883, 25884 }
 

Enumeration Type Documentation

◆ Emotes

enum Emotes
Enumerator
EMOTE_SLOW 
EMOTE_FREEZE 
EMOTE_FROZEN 
EMOTE_CRACK 
EMOTE_SHATTER 
EMOTE_EXPLODE 
62{
63 EMOTE_SLOW = 0,
64 EMOTE_FREEZE = 1,
65 EMOTE_FROZEN = 2,
66
67 EMOTE_CRACK = 3,
68 EMOTE_SHATTER = 4,
70};
@ EMOTE_SLOW
Definition boss_viscidus.cpp:63
@ EMOTE_CRACK
Definition boss_viscidus.cpp:67
@ EMOTE_FREEZE
Definition boss_viscidus.cpp:64
@ EMOTE_FROZEN
Definition boss_viscidus.cpp:65
@ EMOTE_EXPLODE
Definition boss_viscidus.cpp:69
@ EMOTE_SHATTER
Definition boss_viscidus.cpp:68

◆ Events

enum Events
Enumerator
EVENT_POISONBOLT_VOLLEY 
EVENT_POISON_SHOCK 
EVENT_TOXIN 
EVENT_RESET_PHASE 
47{
50 EVENT_TOXIN = 3,
52};
@ EVENT_POISONBOLT_VOLLEY
Definition boss_viscidus.cpp:48
@ EVENT_POISON_SHOCK
Definition boss_viscidus.cpp:49
@ EVENT_RESET_PHASE
Definition boss_viscidus.cpp:51
@ EVENT_TOXIN
Definition boss_viscidus.cpp:50

◆ HitCounter

enum HitCounter
Enumerator
HITCOUNTER_SLOW 
HITCOUNTER_SLOW_MORE 
HITCOUNTER_FREEZE 
HITCOUNTER_CRACK 
HITCOUNTER_SHATTER 
HITCOUNTER_EXPLODE 
73{
74 HITCOUNTER_SLOW = 100,
77
81};
@ HITCOUNTER_CRACK
Definition boss_viscidus.cpp:78
@ HITCOUNTER_SLOW
Definition boss_viscidus.cpp:74
@ HITCOUNTER_EXPLODE
Definition boss_viscidus.cpp:80
@ HITCOUNTER_SLOW_MORE
Definition boss_viscidus.cpp:75
@ HITCOUNTER_SHATTER
Definition boss_viscidus.cpp:79
@ HITCOUNTER_FREEZE
Definition boss_viscidus.cpp:76

◆ Misc

enum Misc
Enumerator
MAX_GLOB_SPAWN 
89{
90 MAX_GLOB_SPAWN = 20,
91};
@ MAX_GLOB_SPAWN
Definition boss_viscidus.cpp:90

◆ MovePoints

enum MovePoints
Enumerator
ROOM_CENTER 
84{
85 ROOM_CENTER = 1
86};
@ ROOM_CENTER
Definition boss_viscidus.cpp:85

◆ Phases

enum Phases
Enumerator
PHASE_FROST 
PHASE_MELEE 
PHASE_GLOB 
55{
56 PHASE_FROST = 1,
57 PHASE_MELEE = 2,
58 PHASE_GLOB = 3
59};
@ PHASE_GLOB
Definition boss_viscidus.cpp:58
@ PHASE_MELEE
Definition boss_viscidus.cpp:57
@ PHASE_FROST
Definition boss_viscidus.cpp:56

◆ Spells

enum Spells
Enumerator
SPELL_POISON_SHOCK 
SPELL_POISONBOLT_VOLLEY 
SPELL_SUMMON_TOXIN_SLIME 
SPELL_SUMMON_TOXIN_SLIME_2 
SPELL_VISCIDUS_SLOWED 
SPELL_VISCIDUS_SLOWED_MORE 
SPELL_VISCIDUS_FREEZE 
SPELL_REJOIN_VISCIDUS 
SPELL_EXPLODE_TRIGGER 
SPELL_VISCIDUS_SHRINKS 
SPELL_INVIS_SELF 
SPELL_VISCIDUS_GROWS 
SPELL_STUN_SELF 
SPELL_TOXIN 
26{
27 // Viscidus - Glob of Viscidus
28 SPELL_POISON_SHOCK = 25993,
37 SPELL_VISCIDUS_SHRINKS = 25893, // Server-side
38 SPELL_INVIS_SELF = 25905,
40 SPELL_STUN_SELF = 25900,
41
42 // Toxic slime
43 SPELL_TOXIN = 26575,
44};
@ SPELL_INVIS_SELF
Definition boss_viscidus.cpp:38
@ SPELL_POISON_SHOCK
Definition boss_viscidus.cpp:28
@ SPELL_EXPLODE_TRIGGER
Definition boss_viscidus.cpp:36
@ SPELL_VISCIDUS_SLOWED_MORE
Definition boss_viscidus.cpp:33
@ SPELL_POISONBOLT_VOLLEY
Definition boss_viscidus.cpp:29
@ SPELL_VISCIDUS_GROWS
Definition boss_viscidus.cpp:39
@ SPELL_VISCIDUS_SHRINKS
Definition boss_viscidus.cpp:37
@ SPELL_VISCIDUS_FREEZE
Definition boss_viscidus.cpp:34
@ SPELL_SUMMON_TOXIN_SLIME_2
Definition boss_viscidus.cpp:31
@ SPELL_TOXIN
Definition boss_viscidus.cpp:43
@ SPELL_VISCIDUS_SLOWED
Definition boss_viscidus.cpp:32
@ SPELL_REJOIN_VISCIDUS
Definition boss_viscidus.cpp:35
@ SPELL_SUMMON_TOXIN_SLIME
Definition boss_viscidus.cpp:30
@ SPELL_STUN_SELF
Definition boss_viscidus.cpp:40

Function Documentation

◆ AddSC_boss_viscidus()

void AddSC_boss_viscidus ( )
416{
422}
#define RegisterSpellScript(spell_script)
Definition SpellScriptLoader.h:88
Definition boss_viscidus.cpp:381
Definition boss_viscidus.cpp:400
Definition boss_viscidus.cpp:322
Definition boss_viscidus.cpp:100
Definition boss_viscidus.cpp:361
#define RegisterTempleOfAhnQirajCreatureAI(ai_name)
Definition temple_of_ahnqiraj.h:114

References RegisterSpellScript, and RegisterTempleOfAhnQirajCreatureAI.

Referenced by AddKalimdorScripts().

Variable Documentation

◆ resetPoint

Position const resetPoint = { -7992.0f, 1041.0f, -23.84f }
95{ -7992.0f, 1041.0f, -23.84f };

Referenced by boss_viscidus::CheckInRoom().

◆ roomCenter

Position const roomCenter = { -7992.36f, 908.19f, -52.62f, 1.68f }
93{ -7992.36f, 908.19f, -52.62f, 1.68f };

Referenced by boss_viscidus::DamageTaken(), and boss_glob_of_viscidus::InitializeAI().

◆ spawnGlobSpells

std::array<uint32, MAX_GLOB_SPAWN> const spawnGlobSpells = { 25865, 25866, 25867, 25868, 25869, 25870, 25871, 25872, 25873, 25874, 25875, 25876, 25877, 25878, 25879, 25880, 25881, 25882, 25883, 25884 }
97{ 25865, 25866, 25867, 25868, 25869, 25870, 25871, 25872, 25873, 25874, 25875, 25876, 25877, 25878, 25879, 25880, 25881, 25882, 25883, 25884 };

Referenced by spell_explode_trigger::HandleOnHit().