AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
zone_wintergrasp.cpp File Reference
#include "AchievementCriteriaScript.h"
#include "Battlefield.h"
#include "BattlefieldMgr.h"
#include "BattlefieldWG.h"
#include "CombatAI.h"
#include "CreatureScript.h"
#include "GameGraveyard.h"
#include "GameObjectAI.h"
#include "GameObjectScript.h"
#include "GameTime.h"
#include "ObjectMgr.h"
#include "Player.h"
#include "PoolMgr.h"
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
#include "SpellScript.h"
#include "SpellScriptLoader.h"
#include "Vehicle.h"
#include "World.h"
#include <cmath>

Go to the source code of this file.

Classes

class  npc_wg_demolisher_engineer
 
class  npc_wg_spirit_guide
 
struct  npc_wg_spirit_guide::npc_wg_spirit_guideAI
 
class  npc_wg_queue
 
struct  npc_wg_queue::npc_wg_queueAI
 
class  npc_wg_quest_giver
 
class  npc_wg_siege_machine
 
struct  npc_wg_siege_machine::npc_wg_siege_machineAI
 
class  go_wg_vehicle_teleporter
 
struct  go_wg_vehicle_teleporter::go_wg_vehicle_teleporterAI
 
class  spell_wintergrasp_force_building
 
class  spell_wintergrasp_create_vehicle
 
class  spell_wintergrasp_rp_gg
 
class  spell_wintergrasp_portal
 
class  spell_wintergrasp_water
 
class  spell_wintergrasp_hide_small_elementals_aura
 
class  spell_wg_reduce_damage_by_distance
 
class  achievement_wg_didnt_stand_a_chance
 
class  achievement_wg_vehicular_gnomeslaughter
 
class  achievement_wg_within_our_grasp
 

Enumerations

enum  eWGqueuenpctext {
  WG_NPCQUEUE_TEXT_H_NOWAR = 14775 ,
  WG_NPCQUEUE_TEXT_H_QUEUE = 14790 ,
  WG_NPCQUEUE_TEXT_H_WAR = 14777 ,
  WG_NPCQUEUE_TEXT_A_NOWAR = 14782 ,
  WG_NPCQUEUE_TEXT_A_QUEUE = 14791 ,
  WG_NPCQUEUE_TEXT_A_WAR = 14781 ,
  WG_NPCQUEUE_TEXTOPTION_JOIN = -1850507 ,
  WG_GOSSIP_MENU_QUEUE = 10662
}
 
enum  Spells {
  SPELL_BUILD_SIEGE_VEHICLE_FORCE_HORDE = 61409 ,
  SPELL_BUILD_SIEGE_VEHICLE_FORCE_ALLIANCE = 56662 ,
  SPELL_BUILD_CATAPULT_FORCE = 56664 ,
  SPELL_BUILD_DEMOLISHER_FORCE = 56659 ,
  SPELL_ACTIVATE_CONTROL_ARMS = 49899 ,
  SPELL_VEHICLE_TELEPORT = 49759 ,
  SPELL_CHANNEL_SPIRIT_HEAL = 22011 ,
  SPELL_RP_GG_TRIGGER_MISSILE = 49769 ,
  SPELL_TELEPORT_TO_FORTRESS = 59096
}
 
enum  CreatureIds {
  NPC_GOBLIN_MECHANIC = 30400 ,
  NPC_GNOMISH_ENGINEER = 30499 ,
  NPC_WINTERGRASP_CONTROL_ARMS = 27852 ,
  NPC_WORLD_TRIGGER_LARGE_AOI_NOT_IMMUNE_PC_NPC = 23742
}
 
enum  QuestIds {
  QUEST_BONES_AND_ARROWS_HORDE_ATT = 13199 ,
  QUEST_JINXING_THE_WALLS_HORDE_ATT = 13202 ,
  QUEST_SLAY_THEM_ALL_HORDE_ATT = 13180 ,
  QUEST_FUELING_THE_DEMOLISHERS_HORDE_ATT = 13200 ,
  QUEST_HEALING_WITH_ROSES_HORDE_ATT = 13201 ,
  QUEST_DEFEND_THE_SIEGE_HORDE_ATT = 13223 ,
  QUEST_BONES_AND_ARROWS_HORDE_DEF = 13193 ,
  QUEST_WARDING_THE_WALLS_HORDE_DEF = 13192 ,
  QUEST_SLAY_THEM_ALL_HORDE_DEF = 13178 ,
  QUEST_FUELING_THE_DEMOLISHERS_HORDE_DEF = 13191 ,
  QUEST_HEALING_WITH_ROSES_HORDE_DEF = 13194 ,
  QUEST_TOPPLING_THE_TOWERS_HORDE_DEF = 13539 ,
  QUEST_STOP_THE_SIEGE_HORDE_DEF = 13185 ,
  QUEST_BONES_AND_ARROWS_ALLIANCE_ATT = 13196 ,
  QUEST_WARDING_THE_WARRIORS_ALLIANCE_ATT = 13198 ,
  QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_ATT = 13179 ,
  QUEST_DEFEND_THE_SIEGE_ALLIANCE_ATT = 13222 ,
  QUEST_A_RARE_HERB_ALLIANCE_ATT = 13195 ,
  QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_ATT = 13197 ,
  QUEST_BONES_AND_ARROWS_ALLIANCE_DEF = 13154 ,
  QUEST_WARDING_THE_WARRIORS_ALLIANCE_DEF = 13153 ,
  QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_DEF = 13177 ,
  QUEST_SHOUTHERN_SABOTAGE_ALLIANCE_DEF = 13538 ,
  QUEST_STOP_THE_SIEGE_ALLIANCE_DEF = 13186 ,
  QUEST_A_RARE_HERB_ALLIANCE_DEF = 13156 ,
  QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_DEF = 236
}
 
enum  eWgQueue {
  EVENT_ARCANIST_BRAEDIN_YELL = 1 ,
  EVENT_MAGISTER_SURDIEL_YELL = 2 ,
  EVENT_SPELL_FROST_ARMOR = 3 ,
  SAY_ARCANIST_BRAEDIN = 0 ,
  SAY_MAGISTER_SURDIEL = 0 ,
  NPC_ARCANIST_BRAEDIN = 32169 ,
  NPC_MAGISTER_SURDIEL = 32170 ,
  SPELL_FROST_ARMOR = 12544
}
 

Functions

void AddSC_wintergrasp ()
 

Variables

uint8 const MAX_WINTERGRASP_VEHICLES = 4
 
uint32 const vehiclesList [MAX_WINTERGRASP_VEHICLES]
 

Enumeration Type Documentation

◆ CreatureIds

Enumerator
NPC_GOBLIN_MECHANIC 
NPC_GNOMISH_ENGINEER 
NPC_WINTERGRASP_CONTROL_ARMS 
NPC_WORLD_TRIGGER_LARGE_AOI_NOT_IMMUNE_PC_NPC 
74{
75 NPC_GOBLIN_MECHANIC = 30400,
77
79
81};
@ NPC_GOBLIN_MECHANIC
Definition zone_wintergrasp.cpp:75
@ NPC_WINTERGRASP_CONTROL_ARMS
Definition zone_wintergrasp.cpp:78
@ NPC_WORLD_TRIGGER_LARGE_AOI_NOT_IMMUNE_PC_NPC
Definition zone_wintergrasp.cpp:80
@ NPC_GNOMISH_ENGINEER
Definition zone_wintergrasp.cpp:76

◆ eWgQueue

enum eWgQueue
Enumerator
EVENT_ARCANIST_BRAEDIN_YELL 
EVENT_MAGISTER_SURDIEL_YELL 
EVENT_SPELL_FROST_ARMOR 
SAY_ARCANIST_BRAEDIN 
SAY_MAGISTER_SURDIEL 
NPC_ARCANIST_BRAEDIN 
NPC_MAGISTER_SURDIEL 
SPELL_FROST_ARMOR 
271{
275
278
279 NPC_ARCANIST_BRAEDIN = 32169,
280 NPC_MAGISTER_SURDIEL = 32170,
281
282 SPELL_FROST_ARMOR = 12544
283};
@ SAY_ARCANIST_BRAEDIN
Definition zone_wintergrasp.cpp:276
@ EVENT_SPELL_FROST_ARMOR
Definition zone_wintergrasp.cpp:274
@ EVENT_ARCANIST_BRAEDIN_YELL
Definition zone_wintergrasp.cpp:272
@ SPELL_FROST_ARMOR
Definition zone_wintergrasp.cpp:282
@ NPC_ARCANIST_BRAEDIN
Definition zone_wintergrasp.cpp:279
@ NPC_MAGISTER_SURDIEL
Definition zone_wintergrasp.cpp:280
@ SAY_MAGISTER_SURDIEL
Definition zone_wintergrasp.cpp:277
@ EVENT_MAGISTER_SURDIEL_YELL
Definition zone_wintergrasp.cpp:273

◆ eWGqueuenpctext

Enumerator
WG_NPCQUEUE_TEXT_H_NOWAR 
WG_NPCQUEUE_TEXT_H_QUEUE 
WG_NPCQUEUE_TEXT_H_WAR 
WG_NPCQUEUE_TEXT_A_NOWAR 
WG_NPCQUEUE_TEXT_A_QUEUE 
WG_NPCQUEUE_TEXT_A_WAR 
WG_NPCQUEUE_TEXTOPTION_JOIN 
WG_GOSSIP_MENU_QUEUE 
40{
48
50};
@ WG_NPCQUEUE_TEXT_H_WAR
Definition zone_wintergrasp.cpp:43
@ WG_NPCQUEUE_TEXTOPTION_JOIN
Definition zone_wintergrasp.cpp:47
@ WG_NPCQUEUE_TEXT_H_NOWAR
Definition zone_wintergrasp.cpp:41
@ WG_NPCQUEUE_TEXT_A_WAR
Definition zone_wintergrasp.cpp:46
@ WG_GOSSIP_MENU_QUEUE
Definition zone_wintergrasp.cpp:49
@ WG_NPCQUEUE_TEXT_A_QUEUE
Definition zone_wintergrasp.cpp:45
@ WG_NPCQUEUE_TEXT_H_QUEUE
Definition zone_wintergrasp.cpp:42
@ WG_NPCQUEUE_TEXT_A_NOWAR
Definition zone_wintergrasp.cpp:44

◆ QuestIds

enum QuestIds
Enumerator
QUEST_BONES_AND_ARROWS_HORDE_ATT 
QUEST_JINXING_THE_WALLS_HORDE_ATT 
QUEST_SLAY_THEM_ALL_HORDE_ATT 
QUEST_FUELING_THE_DEMOLISHERS_HORDE_ATT 
QUEST_HEALING_WITH_ROSES_HORDE_ATT 
QUEST_DEFEND_THE_SIEGE_HORDE_ATT 
QUEST_BONES_AND_ARROWS_HORDE_DEF 
QUEST_WARDING_THE_WALLS_HORDE_DEF 
QUEST_SLAY_THEM_ALL_HORDE_DEF 
QUEST_FUELING_THE_DEMOLISHERS_HORDE_DEF 
QUEST_HEALING_WITH_ROSES_HORDE_DEF 
QUEST_TOPPLING_THE_TOWERS_HORDE_DEF 
QUEST_STOP_THE_SIEGE_HORDE_DEF 
QUEST_BONES_AND_ARROWS_ALLIANCE_ATT 
QUEST_WARDING_THE_WARRIORS_ALLIANCE_ATT 
QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_ATT 
QUEST_DEFEND_THE_SIEGE_ALLIANCE_ATT 
QUEST_A_RARE_HERB_ALLIANCE_ATT 
QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_ATT 
QUEST_BONES_AND_ARROWS_ALLIANCE_DEF 
QUEST_WARDING_THE_WARRIORS_ALLIANCE_DEF 
QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_DEF 
QUEST_SHOUTHERN_SABOTAGE_ALLIANCE_DEF 
QUEST_STOP_THE_SIEGE_ALLIANCE_DEF 
QUEST_A_RARE_HERB_ALLIANCE_DEF 
QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_DEF 
84{
91
99
106
114};
@ QUEST_HEALING_WITH_ROSES_HORDE_DEF
Definition zone_wintergrasp.cpp:96
@ QUEST_DEFEND_THE_SIEGE_HORDE_ATT
Definition zone_wintergrasp.cpp:90
@ QUEST_SHOUTHERN_SABOTAGE_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:110
@ QUEST_SLAY_THEM_ALL_HORDE_DEF
Definition zone_wintergrasp.cpp:94
@ QUEST_FUELING_THE_DEMOLISHERS_HORDE_DEF
Definition zone_wintergrasp.cpp:95
@ QUEST_A_RARE_HERB_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:112
@ QUEST_FUELING_THE_DEMOLISHERS_HORDE_ATT
Definition zone_wintergrasp.cpp:88
@ QUEST_SLAY_THEM_ALL_HORDE_ATT
Definition zone_wintergrasp.cpp:87
@ QUEST_STOP_THE_SIEGE_HORDE_DEF
Definition zone_wintergrasp.cpp:98
@ QUEST_WARDING_THE_WALLS_HORDE_DEF
Definition zone_wintergrasp.cpp:93
@ QUEST_BONES_AND_ARROWS_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:107
@ QUEST_A_RARE_HERB_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:104
@ QUEST_HEALING_WITH_ROSES_HORDE_ATT
Definition zone_wintergrasp.cpp:89
@ QUEST_BONES_AND_ARROWS_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:100
@ QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:102
@ QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:105
@ QUEST_STOP_THE_SIEGE_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:111
@ QUEST_NO_MERCY_FOR_THE_MERCILESS_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:109
@ QUEST_WARDING_THE_WARRIORS_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:101
@ QUEST_TOPPLING_THE_TOWERS_HORDE_DEF
Definition zone_wintergrasp.cpp:97
@ QUEST_BONES_AND_ARROWS_HORDE_DEF
Definition zone_wintergrasp.cpp:92
@ QUEST_WARDING_THE_WARRIORS_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:108
@ QUEST_FUELING_THE_DEMOLISHERS_ALLIANCE_DEF
Definition zone_wintergrasp.cpp:113
@ QUEST_BONES_AND_ARROWS_HORDE_ATT
Definition zone_wintergrasp.cpp:85
@ QUEST_DEFEND_THE_SIEGE_ALLIANCE_ATT
Definition zone_wintergrasp.cpp:103
@ QUEST_JINXING_THE_WALLS_HORDE_ATT
Definition zone_wintergrasp.cpp:86

◆ Spells

enum Spells
Enumerator
SPELL_BUILD_SIEGE_VEHICLE_FORCE_HORDE 
SPELL_BUILD_SIEGE_VEHICLE_FORCE_ALLIANCE 
SPELL_BUILD_CATAPULT_FORCE 
SPELL_BUILD_DEMOLISHER_FORCE 
SPELL_ACTIVATE_CONTROL_ARMS 
SPELL_VEHICLE_TELEPORT 
SPELL_CHANNEL_SPIRIT_HEAL 
SPELL_RP_GG_TRIGGER_MISSILE 
SPELL_TELEPORT_TO_FORTRESS 
53{
54 // Demolisher engineers spells
56 SPELL_BUILD_SIEGE_VEHICLE_FORCE_ALLIANCE = 56662, // Which faction uses which ?
60
62
63 // Spirit guide
65
66 // RP-GG
68
69 // Teleport to fortress
71};
@ SPELL_BUILD_DEMOLISHER_FORCE
Definition zone_wintergrasp.cpp:58
@ SPELL_VEHICLE_TELEPORT
Definition zone_wintergrasp.cpp:61
@ SPELL_ACTIVATE_CONTROL_ARMS
Definition zone_wintergrasp.cpp:59
@ SPELL_CHANNEL_SPIRIT_HEAL
Definition zone_wintergrasp.cpp:64
@ SPELL_BUILD_SIEGE_VEHICLE_FORCE_ALLIANCE
Definition zone_wintergrasp.cpp:56
@ SPELL_BUILD_SIEGE_VEHICLE_FORCE_HORDE
Definition zone_wintergrasp.cpp:55
@ SPELL_RP_GG_TRIGGER_MISSILE
Definition zone_wintergrasp.cpp:67
@ SPELL_TELEPORT_TO_FORTRESS
Definition zone_wintergrasp.cpp:70
@ SPELL_BUILD_CATAPULT_FORCE
Definition zone_wintergrasp.cpp:57

Function Documentation

◆ AddSC_wintergrasp()

void AddSC_wintergrasp ( )
1167{
1168 // NPCs
1169 new npc_wg_queue();
1170 new npc_wg_spirit_guide();
1172 new npc_wg_quest_giver();
1174
1175 // GOs
1177
1178 // SPELLs
1186
1187 // ACHIEVEMENTs
1191}
#define RegisterSpellScript(spell_script)
Definition SpellScriptLoader.h:88
Definition zone_wintergrasp.cpp:1108
Definition zone_wintergrasp.cpp:1132
Definition zone_wintergrasp.cpp:1152
Definition zone_wintergrasp.cpp:849
Definition zone_wintergrasp.cpp:131
Definition zone_wintergrasp.cpp:405
Definition zone_wintergrasp.cpp:286
Definition zone_wintergrasp.cpp:792
Definition zone_wintergrasp.cpp:212
Definition zone_wintergrasp.cpp:1082
Definition zone_wintergrasp.cpp:940
Definition zone_wintergrasp.cpp:909
Definition zone_wintergrasp.cpp:1060
Definition zone_wintergrasp.cpp:1013
Definition zone_wintergrasp.cpp:982
Definition zone_wintergrasp.cpp:1040

References RegisterSpellScript.

Referenced by AddNorthrendScripts().

Variable Documentation

◆ MAX_WINTERGRASP_VEHICLES

uint8 const MAX_WINTERGRASP_VEHICLES = 4

◆ vehiclesList

uint32 const vehiclesList[MAX_WINTERGRASP_VEHICLES]
Initial value:
=
{
}
@ NPC_WINTERGRASP_SIEGE_ENGINE_HORDE
Definition BattlefieldWG.h:201
@ NPC_WINTERGRASP_CATAPULT
Definition BattlefieldWG.h:202
@ NPC_WINTERGRASP_DEMOLISHER
Definition BattlefieldWG.h:203
@ NPC_WINTERGRASP_SIEGE_ENGINE_ALLIANCE
Definition BattlefieldWG.h:200

Referenced by go_wg_vehicle_teleporter::go_wg_vehicle_teleporterAI::UpdateAI().