AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
boss_razorscale.cpp File Reference
#include "AchievementCriteriaScript.h"
#include "CreatureScript.h"
#include "GameObjectScript.h"
#include "PassiveAI.h"
#include "Player.h"
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
#include "SpellAuras.h"
#include "SpellScript.h"
#include "WaypointMgr.h"
#include "ulduar.h"

Go to the source code of this file.

Classes

struct  boss_razorscale
 
class  npc_ulduar_expedition_commander
 
struct  npc_ulduar_expedition_commander::npc_ulduar_expedition_commanderAI
 
struct  npc_ulduar_harpoonfirestate
 
struct  npc_ulduar_expedition_engineer
 
class  go_ulduar_working_harpoon
 
struct  npc_ulduar_dark_rune_guardian
 
struct  npc_ulduar_dark_rune_watcher
 
struct  npc_ulduar_dark_rune_sentinel
 
class  achievement_quick_shave
 
class  achievement_iron_dwarf_medium_rare
 

Macros

#define REQ_CHAIN_COUNT   RAID_MODE(2, 4)
 

Enumerations

enum  Spells {
  SPELL_FLAMEBUFFET = 64016 ,
  SPELL_FIREBALL = 63815 ,
  SPELL_WINGBUFFET = 62666 ,
  SPELL_FLAMEBREATH = 63317 ,
  SPELL_FUSEARMOR = 64771 ,
  SPELL_FUSED_ARMOR = 64774 ,
  SPELL_DEVOURINGFLAME = 63236 ,
  SPELL_BERSERK = 47008 ,
  SPELL_CHAIN_1 = 49679 ,
  SPELL_CHAIN_2 = 49682 ,
  SPELL_CHAIN_3 = 49683 ,
  SPELL_CHAIN_4 = 49684 ,
  SPELL_WHIRLWIND = 63808 ,
  SPELL_BATTLE_SHOUT = 46763 ,
  SPELL_STORMSTRIKE_DMG = 65971 ,
  SPELL_STORMSTRIKE_DEBUFF = 64757 ,
  SPELL_LIGHTINGBOLT = 63809 ,
  SPELL_CHAINLIGHTNING = 64758
}
 
enum  NPCs {
  NPC_DARK_RUNE_SENTINEL = 33846 ,
  NPC_DARK_RUNE_GUARDIAN = 33388 ,
  NPC_DARK_RUNE_WATCHER = 33453 ,
  NPC_EXPEDITION_ENGINEER = 33287 ,
  NPC_EXPEDITION_COMMANDER = 33210 ,
  NPC_RAZORSCALE_CONTROLLER = 33233
}
 
enum  GOs {
  GO_DRILL = 195305 ,
  GO_HARPOON_GUN_1 = 194519 ,
  GO_HARPOON_GUN_2 = 194541 ,
  GO_HARPOON_GUN_3 = 194542 ,
  GO_HARPOON_GUN_4 = 194543 ,
  GO_BROKEN_HARPOON = 194565
}
 
enum  eEvents {
  EVENT_NONE = 0 ,
  EVENT_COMMANDER_SAY_AGGRO ,
  EVENT_EE_SAY_MOVE_OUT ,
  EVENT_ENRAGE ,
  EVENT_SPELL_FIREBALL ,
  EVENT_SPELL_DEVOURING_FLAME ,
  EVENT_SUMMON_MOLE_MACHINES ,
  EVENT_SUMMON_ADDS ,
  EVENT_WARN_DEEP_BREATH ,
  EVENT_PHASE2_FLAME_BREATH ,
  EVENT_FLY_UP ,
  EVENT_RESUME_FIXING ,
  EVENT_SPELL_FLAME_BREATH ,
  EVENT_SPELL_DEVOURING_FLAME_GROUND ,
  EVENT_SPELL_FUSE_ARMOR ,
  EVENT_SPELL_FLAME_BUFFET
}
 
enum  Texts {
  EMOTE_PERMA_GROUND = 0 ,
  EMOTE_BREATH = 1 ,
  EMOTE_BERSERK = 2 ,
  SAY_COMMANDER_AGGRO = 0 ,
  SAY_COMMANDER_GROUND_PHASE = 1 ,
  SAY_COMMANDER_ENGINEERS_DEAD = 2 ,
  SAY_EE_AGGRO = 0 ,
  SAY_EE_START_REPAIR = 1 ,
  SAY_EE_REBUILD_TURRETS = 2 ,
  EMOTE_HARPOON = 0
}
 
enum  Misc {
  POINT_RAZORSCALE_INIT = 1 ,
  REPAIR_POINTS = 25 ,
  GOSSIP_MENU_START_ENCOUNTER = 10314 ,
  NPC_TEXT_COMMANDER = 40100
}
 

Functions

void AddSC_boss_razorscale ()
 

Variables

const Position CORDS_GROUND = {588.0f, -166.0f, 391.1f}
 
const Position CORDS_AIR = {588.0f, -178.0f, 490.0f}
 

Macro Definition Documentation

◆ REQ_CHAIN_COUNT

#define REQ_CHAIN_COUNT   RAID_MODE(2, 4)

Enumeration Type Documentation

◆ eEvents

enum eEvents
Enumerator
EVENT_NONE 
EVENT_COMMANDER_SAY_AGGRO 
EVENT_EE_SAY_MOVE_OUT 
EVENT_ENRAGE 
EVENT_SPELL_FIREBALL 
EVENT_SPELL_DEVOURING_FLAME 
EVENT_SUMMON_MOLE_MACHINES 
EVENT_SUMMON_ADDS 
EVENT_WARN_DEEP_BREATH 
EVENT_PHASE2_FLAME_BREATH 
EVENT_FLY_UP 
EVENT_RESUME_FIXING 
EVENT_SPELL_FLAME_BREATH 
EVENT_SPELL_DEVOURING_FLAME_GROUND 
EVENT_SPELL_FUSE_ARMOR 
EVENT_SPELL_FLAME_BUFFET 
84{
85 EVENT_NONE = 0,
101};
@ EVENT_SPELL_FLAME_BREATH
Definition boss_razorscale.cpp:97
@ EVENT_FLY_UP
Definition boss_razorscale.cpp:95
@ EVENT_SPELL_FIREBALL
Definition boss_razorscale.cpp:89
@ EVENT_PHASE2_FLAME_BREATH
Definition boss_razorscale.cpp:94
@ EVENT_COMMANDER_SAY_AGGRO
Definition boss_razorscale.cpp:86
@ EVENT_ENRAGE
Definition boss_razorscale.cpp:88
@ EVENT_SPELL_FLAME_BUFFET
Definition boss_razorscale.cpp:100
@ EVENT_SUMMON_MOLE_MACHINES
Definition boss_razorscale.cpp:91
@ EVENT_SPELL_DEVOURING_FLAME_GROUND
Definition boss_razorscale.cpp:98
@ EVENT_NONE
Definition boss_razorscale.cpp:85
@ EVENT_SUMMON_ADDS
Definition boss_razorscale.cpp:92
@ EVENT_RESUME_FIXING
Definition boss_razorscale.cpp:96
@ EVENT_SPELL_DEVOURING_FLAME
Definition boss_razorscale.cpp:90
@ EVENT_SPELL_FUSE_ARMOR
Definition boss_razorscale.cpp:99
@ EVENT_EE_SAY_MOVE_OUT
Definition boss_razorscale.cpp:87
@ EVENT_WARN_DEEP_BREATH
Definition boss_razorscale.cpp:93

◆ GOs

enum GOs
Enumerator
GO_DRILL 
GO_HARPOON_GUN_1 
GO_HARPOON_GUN_2 
GO_HARPOON_GUN_3 
GO_HARPOON_GUN_4 
GO_BROKEN_HARPOON 
74{
75 GO_DRILL = 195305,
76 GO_HARPOON_GUN_1 = 194519,
77 GO_HARPOON_GUN_2 = 194541,
78 GO_HARPOON_GUN_3 = 194542,
79 GO_HARPOON_GUN_4 = 194543,
80 GO_BROKEN_HARPOON = 194565,
81};
@ GO_HARPOON_GUN_1
Definition boss_razorscale.cpp:76
@ GO_BROKEN_HARPOON
Definition boss_razorscale.cpp:80
@ GO_HARPOON_GUN_2
Definition boss_razorscale.cpp:77
@ GO_HARPOON_GUN_3
Definition boss_razorscale.cpp:78
@ GO_DRILL
Definition boss_razorscale.cpp:75
@ GO_HARPOON_GUN_4
Definition boss_razorscale.cpp:79

◆ Misc

enum Misc
Enumerator
POINT_RAZORSCALE_INIT 
REPAIR_POINTS 
GOSSIP_MENU_START_ENCOUNTER 
NPC_TEXT_COMMANDER 
125{
127 REPAIR_POINTS = 25,
128
129 // Expedition Commander Gossip
131 NPC_TEXT_COMMANDER = 40100,
132};
@ POINT_RAZORSCALE_INIT
Definition boss_razorscale.cpp:126
@ GOSSIP_MENU_START_ENCOUNTER
Definition boss_razorscale.cpp:130
@ NPC_TEXT_COMMANDER
Definition boss_razorscale.cpp:131
@ REPAIR_POINTS
Definition boss_razorscale.cpp:127

◆ NPCs

enum NPCs
Enumerator
NPC_DARK_RUNE_SENTINEL 
NPC_DARK_RUNE_GUARDIAN 
NPC_DARK_RUNE_WATCHER 
NPC_EXPEDITION_ENGINEER 
NPC_EXPEDITION_COMMANDER 
NPC_RAZORSCALE_CONTROLLER 
64{
70 NPC_RAZORSCALE_CONTROLLER = 33233, // Trigger Creature
71};
@ NPC_DARK_RUNE_SENTINEL
Definition boss_razorscale.cpp:65
@ NPC_DARK_RUNE_GUARDIAN
Definition boss_razorscale.cpp:66
@ NPC_EXPEDITION_COMMANDER
Definition boss_razorscale.cpp:69
@ NPC_RAZORSCALE_CONTROLLER
Definition boss_razorscale.cpp:70
@ NPC_DARK_RUNE_WATCHER
Definition boss_razorscale.cpp:67
@ NPC_EXPEDITION_ENGINEER
Definition boss_razorscale.cpp:68

◆ Spells

enum Spells
Enumerator
SPELL_FLAMEBUFFET 
SPELL_FIREBALL 
SPELL_WINGBUFFET 
SPELL_FLAMEBREATH 
SPELL_FUSEARMOR 
SPELL_FUSED_ARMOR 
SPELL_DEVOURINGFLAME 
SPELL_BERSERK 
SPELL_CHAIN_1 
SPELL_CHAIN_2 
SPELL_CHAIN_3 
SPELL_CHAIN_4 
SPELL_WHIRLWIND 
SPELL_BATTLE_SHOUT 
SPELL_STORMSTRIKE_DMG 
SPELL_STORMSTRIKE_DEBUFF 
SPELL_LIGHTINGBOLT 
SPELL_CHAINLIGHTNING 
31{
32 // Razorscale
33 SPELL_FLAMEBUFFET = 64016,
34 SPELL_FIREBALL = 63815,
35 SPELL_WINGBUFFET = 62666,
36 SPELL_FLAMEBREATH = 63317,
37 SPELL_FUSEARMOR = 64771,
38 SPELL_FUSED_ARMOR = 64774, // Applied on 5th stack of SPELL_FUSEARMOR
40 SPELL_BERSERK = 47008,
41
42 // Haproons
43 SPELL_CHAIN_1 = 49679,
44 SPELL_CHAIN_2 = 49682,
45 SPELL_CHAIN_3 = 49683,
46 SPELL_CHAIN_4 = 49684,
47
48 // Dark Rune Sentinel
49 SPELL_WHIRLWIND = 63808,
50 SPELL_BATTLE_SHOUT = 46763,
51
52 // Dark Rune Guardian
55
56 // Dark Rune Watcher
57 SPELL_LIGHTINGBOLT = 63809,
59};
@ SPELL_CHAIN_2
Definition boss_razorscale.cpp:44
@ SPELL_DEVOURINGFLAME
Definition boss_razorscale.cpp:39
@ SPELL_CHAIN_3
Definition boss_razorscale.cpp:45
@ SPELL_FUSEARMOR
Definition boss_razorscale.cpp:37
@ SPELL_LIGHTINGBOLT
Definition boss_razorscale.cpp:57
@ SPELL_BATTLE_SHOUT
Definition boss_razorscale.cpp:50
@ SPELL_FLAMEBREATH
Definition boss_razorscale.cpp:36
@ SPELL_CHAIN_1
Definition boss_razorscale.cpp:43
@ SPELL_FIREBALL
Definition boss_razorscale.cpp:34
@ SPELL_FLAMEBUFFET
Definition boss_razorscale.cpp:33
@ SPELL_FUSED_ARMOR
Definition boss_razorscale.cpp:38
@ SPELL_STORMSTRIKE_DEBUFF
Definition boss_razorscale.cpp:54
@ SPELL_CHAINLIGHTNING
Definition boss_razorscale.cpp:58
@ SPELL_BERSERK
Definition boss_razorscale.cpp:40
@ SPELL_CHAIN_4
Definition boss_razorscale.cpp:46
@ SPELL_WHIRLWIND
Definition boss_razorscale.cpp:49
@ SPELL_STORMSTRIKE_DMG
Definition boss_razorscale.cpp:53
@ SPELL_WINGBUFFET
Definition boss_razorscale.cpp:35

◆ Texts

enum Texts
Enumerator
EMOTE_PERMA_GROUND 
EMOTE_BREATH 
EMOTE_BERSERK 
SAY_COMMANDER_AGGRO 
SAY_COMMANDER_GROUND_PHASE 
SAY_COMMANDER_ENGINEERS_DEAD 
SAY_EE_AGGRO 
SAY_EE_START_REPAIR 
SAY_EE_REBUILD_TURRETS 
EMOTE_HARPOON 
104{
105 // Razorscale
107 EMOTE_BREATH = 1,
108 EMOTE_BERSERK = 2,
109
110 // Expedition Commander
113 SAY_COMMANDER_ENGINEERS_DEAD = 2, // Should be called when all engineers are dead, currently unused
114
115 // Expedition Engineer
116 SAY_EE_AGGRO = 0,
119
120 // Harpoon
121 EMOTE_HARPOON = 0,
122};
@ EMOTE_PERMA_GROUND
Definition boss_razorscale.cpp:106
@ SAY_COMMANDER_AGGRO
Definition boss_razorscale.cpp:111
@ SAY_COMMANDER_GROUND_PHASE
Definition boss_razorscale.cpp:112
@ EMOTE_HARPOON
Definition boss_razorscale.cpp:121
@ SAY_EE_REBUILD_TURRETS
Definition boss_razorscale.cpp:118
@ EMOTE_BREATH
Definition boss_razorscale.cpp:107
@ SAY_EE_START_REPAIR
Definition boss_razorscale.cpp:117
@ EMOTE_BERSERK
Definition boss_razorscale.cpp:108
@ SAY_COMMANDER_ENGINEERS_DEAD
Definition boss_razorscale.cpp:113
@ SAY_EE_AGGRO
Definition boss_razorscale.cpp:116

Function Documentation

◆ AddSC_boss_razorscale()

void AddSC_boss_razorscale ( )
1028{
1039}
Definition boss_razorscale.cpp:1017
Definition boss_razorscale.cpp:1006
Definition boss_razorscale.cpp:842
Definition boss_razorscale.cpp:563
Definition boss_razorscale.cpp:138
Definition boss_razorscale.cpp:882
Definition boss_razorscale.cpp:963
Definition boss_razorscale.cpp:918
Definition boss_razorscale.cpp:747
Definition boss_razorscale.cpp:657
#define RegisterUlduarCreatureAI(ai_name)
Definition ulduar.h:377

References RegisterUlduarCreatureAI.

Referenced by AddNorthrendScripts().

Variable Documentation

◆ CORDS_AIR

const Position CORDS_AIR = {588.0f, -178.0f, 490.0f}
135{588.0f, -178.0f, 490.0f};

Referenced by npc_ulduar_expedition_commander::OnGossipSelect(), and boss_razorscale::UpdateAI().

◆ CORDS_GROUND

const Position CORDS_GROUND = {588.0f, -166.0f, 391.1f}
134{588.0f, -166.0f, 391.1f};

Referenced by boss_razorscale::SpellHit().