TrinityCore
culling_of_stratholme.cpp File Reference
#include "culling_of_stratholme.h"
#include "AreaBoundary.h"
#include "EventMap.h"
#include "DB2Structure.h"
#include "GameObject.h"
#include "GameTime.h"
#include "InstanceScript.h"
#include "Map.h"
#include "MotionMaster.h"
#include "ObjectAccessor.h"
#include "PassiveAI.h"
#include "Player.h"
#include "QuestDef.h"
#include "ScriptedGossip.h"
#include "ScriptMgr.h"
#include "SpellInfo.h"
#include "SplineChainMovementGenerator.h"
#include "StringFormat.h"
#include "TemporarySummon.h"
#include <unordered_map>
+ Include dependency graph for culling_of_stratholme.cpp:

Go to the source code of this file.

Classes

class  npc_hearthsinger_forresten_cot
 
struct  npc_hearthsinger_forresten_cot::npc_hearthsinger_forresten_cotAI
 
class  at_stratholme_inn_stairs_cot
 
class  npc_chromie_start
 
struct  npc_chromie_start::npc_chromie_startAI
 
class  npc_chromie_middle
 
struct  npc_chromie_middle::npc_chromie_middleAI
 
struct  npc_martha_goslin
 
struct  npc_martha_goslin::npc_martha_goslinAI
 
struct  npc_jena_anderson
 
struct  npc_jena_anderson::npc_jena_andersonAI
 
struct  npc_bartleby_battson
 
struct  npc_bartleby_battson::npc_bartleby_battsonAI
 
struct  npc_malcolm_moore
 
struct  npc_malcolm_moore::npc_malcolm_mooreAI
 
struct  npc_sergeant_morigan
 
struct  npc_sergeant_morigan::npc_sergeant_moriganAI
 
struct  npc_roger_owens
 
struct  npc_roger_owens::npc_roger_owensAI
 
class  npc_crate_helper
 
struct  npc_crate_helper::npc_crate_helperAI
 

Enumerations

enum  InnEventEntries {
  NPC_FORREST = 30551 , NPC_BELFAST = 30571 , NPC_JAMES = 30553 , NPC_FRAS = 30552 ,
  NPC_MAL = 31017 , NPC_GRYAN = 30561
}
 
enum  InnEventEvents {
  EVENT_FORREST_1 = 1 , EVENT_JAMES_1 , EVENT_FRAS_1 , EVENT_BELFAST_MOVE = 100 ,
  EVENT_BELFAST_1 , EVENT_MAL_1 , EVENT_GRYAN_1 , EVENT_MAL_2 ,
  EVENT_MAL_3 , EVENT_JAMES_2 , EVENT_FORREST_2 , EVENT_FRAS_2
}
 
enum  InnEventLines {
  LINE_JAMES_1 = 0 , LINE_JAMES_2 = 1 , LINE_FRAS_1 = 0 , LINE_FRAS_2 = 1 ,
  LINE_MAL_1 = 0 , LINE_MAL_2 = 1 , LINE_MAL_3 = 2 , LINE_FORREST_1 = 0 ,
  LINE_FORREST_2 = 1 , LINE_BELFAST_0 = 0 , LINE_BELFAST_1 = 1 , LINE_GRYAN_1 = 0
}
 
enum  InnEventMisc { DATA_REQUEST_FACING = 0 , DATA_REACHED_WP = 1 }
 
enum  Chromie1Gossip {
  GOSSIP_OFFSET_EXPLAIN = 0 , GOSSIP_OFFSET_SKIP , GOSSIP_OFFSET_TELEPORT , GOSSIP_OFFSET_EXPLAIN_1 ,
  GOSSIP_OFFSET_EXPLAIN_2 , GOSSIP_OFFSET_SKIP_1 , GOSSIP_OFFSET_OPEN_GM_MENU , GOSSIP_OFFSET_GM_INITIAL ,
  GOSSIP_MENU_INITIAL = 9586 , GOSSIP_TEXT_INITIAL = 12939 , GOSSIP_OPTION_EXPLAIN = 0 , GOSSIP_OPTION_SKIP = 2 ,
  GOSSIP_TEXT_TELEPORT = 13470 , GOSSIP_OPTION_TELEPORT = 1 , GOSSIP_MENU_EXPLAIN_1 = 9594 , GOSSIP_TEXT_EXPLAIN_1 = 12949 ,
  GOSSIP_OPTION_EXPLAIN_1 = 0 , GOSSIP_MENU_EXPLAIN_2 = 9595 , GOSSIP_TEXT_EXPLAIN_2 = 12950 , GOSSIP_OPTION_EXPLAIN_2 = 0 ,
  GOSSIP_MENU_EXPLAIN_3 = 9596 , GOSSIP_TEXT_EXPLAIN_3 = 12952 , GOSSIP_MENU_SKIP_1 = 11277 , GOSSIP_TEXT_SKIP_1 = 15704 ,
  GOSSIP_OPTION_SKIP_1 = 0
}
 
enum  Chromie1Misc {
  ITEM_ARCANE_DISRUPTOR = 37888 , QUEST_DISPELLING_ILLUSIONS = 13149 , SPELL_TELEPORT_PLAYER = 53435 , SPELL_SUMMON_ARCANE_DISRUPTOR = 49591 ,
  ACHIEVEMENT_NORMAL = 479 , ACHIEVEMENT_HEROIC = 500
}
 
enum  Chromie2Gossip {
  GOSSIP_OFFSET_STEP1 = 0 , GOSSIP_OFFSET_STEP2 , GOSSIP_OFFSET_STEP3 , GOSSIP_MENU_STEP1 = 9610 ,
  GOSSIP_TEXT_STEP1 = 12992 , GOSSIP_OPTION_STEP1 = 0 , GOSSIP_MENU_STEP2 = 9611 , GOSSIP_TEXT_STEP2 = 12993 ,
  GOSSIP_OPTION_STEP2 = 0 , GOSSIP_MENU_STEP3 = 9612 , GOSSIP_TEXT_STEP3 = 12994 , GOSSIP_OPTION_STEP3 = 0 ,
  GOSSIP_MENU_STEP4 = 9613 , GOSSIP_TEXT_STEP4 = 12995
}
 
enum  Chromie2Misc { WHISPER_CRATES_DONE = 0 , WHISPER_COME_TALK = 1 }
 
enum  CrateGenericMisc {
  MOVEID_EVENT1 = 4200 , MOVEID_EVENT2 , MOVEID_EVENT3 , MOVEID_EVENT4 ,
  MOVEID_EVENT5 , ACTION_START_FLUFF = 9001
}
 
enum  CrateEvent1Misc {
  NPC_MARTHA = 27884 , NPC_JENA = 27885 , EVENT_MARTHA_IDLE1 = 1 , EVENT_MARTHA_IDLE2 ,
  EVENT_JENA_IDLE1 , EVENT_JENA_IDLE2 , EVENT_JENA_START , EVENT_MARTHA1 ,
  EVENT_JENA7 , EVENT_JENA_MOVE2 , EVENT_JENA8 , EVENT_JENA_LEAVE ,
  LINE_JENA1 = 0 , LINE_JENA2 = 1 , LINE_JENA3 = 2 , LINE_JENA4 = 3 ,
  LINE_JENA5 = 4 , LINE_JENA6 = 5 , LINE_JENA7 = 6 , LINE_JENA8 = 7 ,
  LINE_JENA9 = 8 , LINE_MARTHA1 = 0 , LINE_MARTHA2 = 1 , CHAIN_MARTHA_IDLE1 = 1 ,
  CHAIN_MARTHA_IDLE2 = 2 , CHAIN_JENA_INITIAL = 1 , CHAIN_JENA_IDLE1 = 3 , CHAIN_JENA_IDLE2 = 2 ,
  CHAIN_JENA_MOVE1 = 70 , CHAIN_JENA_MOVE2 = 71 , CHAIN_JENA_LEAVE = 72
}
 
enum  CrateEvent2Misc {
  NPC_BARTLEBY = 27907 , EVENT_BARTLEBY_IDLE = 1 , EVENT_BARTLEBY1 , EVENT_BARTLEBY2 ,
  EVENT_BARTLEBY2_2 , EVENT_BARTLEBY3 , LINE_BARTLEBY_IDLE = 0 , LINE_BARTLEBY1 = 1 ,
  LINE_BARTLEBY2 = 2 , LINE_BARTLEBY3 = 3 , CHAIN_BARTLEBY1 = 1 , CHAIN_BARTLEBY2 = 2
}
 
enum  CrateEvent3Misc {
  NPC_MALCOLM = 27891 , NPC_SCRUFFY = 27892 , EVENT_SCRUFFY1 = 1 , EVENT_MALCOLM2 ,
  EVENT_SCRUFFY_MOVE , EVENT_MALCOLM_MOVE , EVENT_MALCOLM_FACE3 , EVENT_SCRUFFY_EMOTE ,
  EVENT_MALCOLM3 , EVENT_MALCOLM4 , EVENT_MALCOLM_MOVE2 , LINE_MALCOLM1 = 0 ,
  LINE_SCRUFFY1 = 0 , LINE_MALCOLM2 = 1 , LINE_MALCOLM3 = 2 , LINE_MALCOLM4 = 3 ,
  CHAIN_MALCOLM1 = 1 , CHAIN_MALCOLM2 = 2 , CHAIN_MALCOLM3 = 3 , CHAIN_MALCOLM4 = 4 ,
  CHAIN_SCRUFFY1 = 1 , CHAIN_SCRUFFY2 = 2
}
 
enum  CrateEvent4Misc {
  NPC_SERGEANT = 27877 , NPC_PERELLI = 27876 , EVENT_SERGEANT_IDLE1 , EVENT_SERGEANT_IDLE2 ,
  EVENT_SERGEANT_CHAIN1 , EVENT_SERGEANT1 , EVENT_SERGEANT_STAND , EVENT_PERELLI1 ,
  EVENT_SERGEANT2 , EVENT_PERELLI2 , EVENT_SERGEANT3 , EVENT_SERGEANT_LEAVE ,
  LINE_SERGEANT_ASK_NO = 0 , LINE_SERGEANT_ASK_YES = 1 , LINE_SERGEANT_START = 2 , LINE_SERGEANT1 = 3 ,
  LINE_SERGEANT2 = 4 , LINE_SERGEANT3 = 5 , LINE_PERELLI_NO = 0 , LINE_PERELLI_YES = 1 ,
  LINE_PERELLI1 = 2 , LINE_PERELLI2 = 3 , CHAIN_SERGEANT1 = 1 , CHAIN_SERGEANT2 = 2
}
 
enum  CrateEvent5Misc {
  NPC_ROGER = 27903 , EVENT_ROGER_START = 1 , EVENT_ROGER_MOVE1 , EVENT_ROGER_FACE3 ,
  EVENT_ROGER3 , EVENT_ROGER_FACE4 , EVENT_ROGER4 , EVENT_ROGER_MOVE2 ,
  EVENT_ROGER5_2 , EVENT_ROGER_LEAVE , LINE_ROGER1 = 0 , LINE_ROGER2 = 1 ,
  LINE_ROGER3 = 2 , LINE_ROGER4 = 3 , LINE_ROGER5 = 4 , CHAIN_ROGER1 = 1 ,
  CHAIN_ROGER2 = 2 , CHAIN_ROGER3 = 3
}
 
enum  CrateMisc {
  GO_SUSPICIOUS_CRATE = 190094 , GO_CRATE_HIGHLIGHT = 190117 , GO_PLAGUED_CRATE = 190095 , SPELL_ARCANE_DISRUPTION = 49590 ,
  SPELL_CRATES_CREDIT = 58109
}
 

Functions

void AddSC_culling_of_stratholme ()
 

Variables

static constexpr float marthaIdleOrientation1 = 3.159046f
 
static constexpr float marthaIdleOrientation2 = 4.764749f
 
static constexpr Position malcolmSpawn = { 1605.2420f, 805.4160f, 122.9956f, 5.284148f }
 
static constexpr Position scruffySpawn = { 1601.1030f, 805.3391f, 123.7677f, 5.471561f }
 
static constexpr float scruffyFacing2 = 5.734883f
 
static constexpr float malcolmFacing3 = 2.303835f
 
static constexpr float scruffyFacing4 = 5.445427f
 

Enumeration Type Documentation

◆ Chromie1Gossip

Enumerator
GOSSIP_OFFSET_EXPLAIN 
GOSSIP_OFFSET_SKIP 
GOSSIP_OFFSET_TELEPORT 
GOSSIP_OFFSET_EXPLAIN_1 
GOSSIP_OFFSET_EXPLAIN_2 
GOSSIP_OFFSET_SKIP_1 
GOSSIP_OFFSET_OPEN_GM_MENU 
GOSSIP_OFFSET_GM_INITIAL 
GOSSIP_MENU_INITIAL 
GOSSIP_TEXT_INITIAL 
GOSSIP_OPTION_EXPLAIN 
GOSSIP_OPTION_SKIP 
GOSSIP_TEXT_TELEPORT 
GOSSIP_OPTION_TELEPORT 
GOSSIP_MENU_EXPLAIN_1 
GOSSIP_TEXT_EXPLAIN_1 
GOSSIP_OPTION_EXPLAIN_1 
GOSSIP_MENU_EXPLAIN_2 
GOSSIP_TEXT_EXPLAIN_2 
GOSSIP_OPTION_EXPLAIN_2 
GOSSIP_MENU_EXPLAIN_3 
GOSSIP_TEXT_EXPLAIN_3 
GOSSIP_MENU_SKIP_1 
GOSSIP_TEXT_SKIP_1 
GOSSIP_OPTION_SKIP_1 

Definition at line 234 of file culling_of_stratholme.cpp.

◆ Chromie1Misc

Enumerator
ITEM_ARCANE_DISRUPTOR 
QUEST_DISPELLING_ILLUSIONS 
SPELL_TELEPORT_PLAYER 
SPELL_SUMMON_ARCANE_DISRUPTOR 
ACHIEVEMENT_NORMAL 
ACHIEVEMENT_HEROIC 

Definition at line 270 of file culling_of_stratholme.cpp.

◆ Chromie2Gossip

Enumerator
GOSSIP_OFFSET_STEP1 
GOSSIP_OFFSET_STEP2 
GOSSIP_OFFSET_STEP3 
GOSSIP_MENU_STEP1 
GOSSIP_TEXT_STEP1 
GOSSIP_OPTION_STEP1 
GOSSIP_MENU_STEP2 
GOSSIP_TEXT_STEP2 
GOSSIP_OPTION_STEP2 
GOSSIP_MENU_STEP3 
GOSSIP_TEXT_STEP3 
GOSSIP_OPTION_STEP3 
GOSSIP_MENU_STEP4 
GOSSIP_TEXT_STEP4 

Definition at line 430 of file culling_of_stratholme.cpp.

◆ Chromie2Misc

Enumerator
WHISPER_CRATES_DONE 
WHISPER_COME_TALK 

Definition at line 453 of file culling_of_stratholme.cpp.

◆ CrateEvent1Misc

Enumerator
NPC_MARTHA 
NPC_JENA 
EVENT_MARTHA_IDLE1 
EVENT_MARTHA_IDLE2 
EVENT_JENA_IDLE1 
EVENT_JENA_IDLE2 
EVENT_JENA_START 
EVENT_MARTHA1 
EVENT_JENA7 
EVENT_JENA_MOVE2 
EVENT_JENA8 
EVENT_JENA_LEAVE 
LINE_JENA1 
LINE_JENA2 
LINE_JENA3 
LINE_JENA4 
LINE_JENA5 
LINE_JENA6 
LINE_JENA7 
LINE_JENA8 
LINE_JENA9 
LINE_MARTHA1 
LINE_MARTHA2 
CHAIN_MARTHA_IDLE1 
CHAIN_MARTHA_IDLE2 
CHAIN_JENA_INITIAL 
CHAIN_JENA_IDLE1 
CHAIN_JENA_IDLE2 
CHAIN_JENA_MOVE1 
CHAIN_JENA_MOVE2 
CHAIN_JENA_LEAVE 

Definition at line 574 of file culling_of_stratholme.cpp.

◆ CrateEvent2Misc

Enumerator
NPC_BARTLEBY 
EVENT_BARTLEBY_IDLE 
EVENT_BARTLEBY1 
EVENT_BARTLEBY2 
EVENT_BARTLEBY2_2 
EVENT_BARTLEBY3 
LINE_BARTLEBY_IDLE 
LINE_BARTLEBY1 
LINE_BARTLEBY2 
LINE_BARTLEBY3 
CHAIN_BARTLEBY1 
CHAIN_BARTLEBY2 

Definition at line 841 of file culling_of_stratholme.cpp.

◆ CrateEvent3Misc

Enumerator
NPC_MALCOLM 
NPC_SCRUFFY 
EVENT_SCRUFFY1 
EVENT_MALCOLM2 
EVENT_SCRUFFY_MOVE 
EVENT_MALCOLM_MOVE 
EVENT_MALCOLM_FACE3 
EVENT_SCRUFFY_EMOTE 
EVENT_MALCOLM3 
EVENT_MALCOLM4 
EVENT_MALCOLM_MOVE2 
LINE_MALCOLM1 
LINE_SCRUFFY1 
LINE_MALCOLM2 
LINE_MALCOLM3 
LINE_MALCOLM4 
CHAIN_MALCOLM1 
CHAIN_MALCOLM2 
CHAIN_MALCOLM3 
CHAIN_MALCOLM4 
CHAIN_SCRUFFY1 
CHAIN_SCRUFFY2 

Definition at line 951 of file culling_of_stratholme.cpp.

◆ CrateEvent4Misc

Enumerator
NPC_SERGEANT 
NPC_PERELLI 
EVENT_SERGEANT_IDLE1 
EVENT_SERGEANT_IDLE2 
EVENT_SERGEANT_CHAIN1 
EVENT_SERGEANT1 
EVENT_SERGEANT_STAND 
EVENT_PERELLI1 
EVENT_SERGEANT2 
EVENT_PERELLI2 
EVENT_SERGEANT3 
EVENT_SERGEANT_LEAVE 
LINE_SERGEANT_ASK_NO 
LINE_SERGEANT_ASK_YES 
LINE_SERGEANT_START 
LINE_SERGEANT1 
LINE_SERGEANT2 
LINE_SERGEANT3 
LINE_PERELLI_NO 
LINE_PERELLI_YES 
LINE_PERELLI1 
LINE_PERELLI2 
CHAIN_SERGEANT1 
CHAIN_SERGEANT2 

Definition at line 1107 of file culling_of_stratholme.cpp.

◆ CrateEvent5Misc

Enumerator
NPC_ROGER 
EVENT_ROGER_START 
EVENT_ROGER_MOVE1 
EVENT_ROGER_FACE3 
EVENT_ROGER3 
EVENT_ROGER_FACE4 
EVENT_ROGER4 
EVENT_ROGER_MOVE2 
EVENT_ROGER5_2 
EVENT_ROGER_LEAVE 
LINE_ROGER1 
LINE_ROGER2 
LINE_ROGER3 
LINE_ROGER4 
LINE_ROGER5 
CHAIN_ROGER1 
CHAIN_ROGER2 
CHAIN_ROGER3 

Definition at line 1263 of file culling_of_stratholme.cpp.

◆ CrateGenericMisc

Enumerator
MOVEID_EVENT1 
MOVEID_EVENT2 
MOVEID_EVENT3 
MOVEID_EVENT4 
MOVEID_EVENT5 
ACTION_START_FLUFF 

Definition at line 562 of file culling_of_stratholme.cpp.

◆ CrateMisc

enum CrateMisc
Enumerator
GO_SUSPICIOUS_CRATE 
GO_CRATE_HIGHLIGHT 
GO_PLAGUED_CRATE 
SPELL_ARCANE_DISRUPTION 
SPELL_CRATES_CREDIT 

Definition at line 1388 of file culling_of_stratholme.cpp.

◆ InnEventEntries

Enumerator
NPC_FORREST 
NPC_BELFAST 
NPC_JAMES 
NPC_FRAS 
NPC_MAL 
NPC_GRYAN 

Definition at line 39 of file culling_of_stratholme.cpp.

◆ InnEventEvents

Enumerator
EVENT_FORREST_1 
EVENT_JAMES_1 
EVENT_FRAS_1 
EVENT_BELFAST_MOVE 
EVENT_BELFAST_1 
EVENT_MAL_1 
EVENT_GRYAN_1 
EVENT_MAL_2 
EVENT_MAL_3 
EVENT_JAMES_2 
EVENT_FORREST_2 
EVENT_FRAS_2 

Definition at line 49 of file culling_of_stratholme.cpp.

◆ InnEventLines

Enumerator
LINE_JAMES_1 
LINE_JAMES_2 
LINE_FRAS_1 
LINE_FRAS_2 
LINE_MAL_1 
LINE_MAL_2 
LINE_MAL_3 
LINE_FORREST_1 
LINE_FORREST_2 
LINE_BELFAST_0 
LINE_BELFAST_1 
LINE_GRYAN_1 

Definition at line 65 of file culling_of_stratholme.cpp.

◆ InnEventMisc

Enumerator
DATA_REQUEST_FACING 
DATA_REACHED_WP 

Definition at line 85 of file culling_of_stratholme.cpp.

Function Documentation

◆ AddSC_culling_of_stratholme()

void AddSC_culling_of_stratholme ( )

Definition at line 1468 of file culling_of_stratholme.cpp.

+ Here is the caller graph for this function:

Variable Documentation

◆ malcolmFacing3

constexpr float malcolmFacing3 = 2.303835f
staticconstexpr

Definition at line 984 of file culling_of_stratholme.cpp.

◆ malcolmSpawn

constexpr Position malcolmSpawn = { 1605.2420f, 805.4160f, 122.9956f, 5.284148f }
staticconstexpr

Definition at line 981 of file culling_of_stratholme.cpp.

◆ marthaIdleOrientation1

constexpr float marthaIdleOrientation1 = 3.159046f
staticconstexpr

Definition at line 612 of file culling_of_stratholme.cpp.

◆ marthaIdleOrientation2

constexpr float marthaIdleOrientation2 = 4.764749f
staticconstexpr

Definition at line 613 of file culling_of_stratholme.cpp.

◆ scruffyFacing2

constexpr float scruffyFacing2 = 5.734883f
staticconstexpr

Definition at line 983 of file culling_of_stratholme.cpp.

◆ scruffyFacing4

constexpr float scruffyFacing4 = 5.445427f
staticconstexpr

Definition at line 985 of file culling_of_stratholme.cpp.

◆ scruffySpawn

constexpr Position scruffySpawn = { 1601.1030f, 805.3391f, 123.7677f, 5.471561f }
staticconstexpr

Definition at line 982 of file culling_of_stratholme.cpp.