|
| instance_karazhan_InstanceMapScript (Map *map) |
|
void | OnCreatureCreate (Creature *creature) override |
|
void | OnUnitDeath (Unit *unit) override |
|
void | SetData (uint32 type, uint32 data) override |
|
bool | SetBossState (uint32 type, EncounterState state) override |
|
void | SetGuidData (uint32 type, ObjectGuid data) override |
|
void | OnGameObjectCreate (GameObject *go) override |
|
uint32 | GetData (uint32 type) const override |
|
void | DoAction (int32 actionId) override |
|
ObjectGuid | GetGuidData (uint32 data) const override |
|
| InstanceScript (Map *map) |
|
| ~InstanceScript () override |
|
virtual void | Initialize () |
|
virtual void | Load (char const *data) |
|
virtual void | CreatureLooted (Creature *, LootType) |
|
virtual std::string | GetSaveData () |
|
void | SaveToDB () |
|
virtual void | Update (uint32) |
|
virtual bool | IsEncounterInProgress () const |
|
void | OnCreatureCreate (Creature *creature) override |
|
void | OnCreatureRemove (Creature *creature) override |
|
void | OnGameObjectCreate (GameObject *go) override |
|
void | OnGameObjectRemove (GameObject *go) override |
|
ObjectGuid | GetObjectGuid (uint32 type) const |
|
ObjectGuid | GetGuidData (uint32 type) const override |
|
Creature * | GetCreature (uint32 type) |
|
GameObject * | GetGameObject (uint32 type) |
|
virtual void | OnPlayerEnter (Player *) |
|
virtual void | OnPlayerAreaUpdate (Player *, uint32, uint32) |
|
virtual void | OnPlayerInWaterStateUpdate (Player *, bool) |
|
void | HandleGameObject (ObjectGuid guid, bool open, GameObject *go=nullptr) |
|
void | DoUseDoorOrButton (ObjectGuid guid, uint32 withRestoreTime=0, bool useAlternativeState=false) |
|
void | DoRespawnGameObject (ObjectGuid guid, uint32 timeToDespawn=MINUTE) |
|
void | DoRespawnCreature (ObjectGuid guid, bool force=false) |
|
void | DoRespawnCreature (uint32 type, bool force=false) |
|
void | DoUpdateWorldState (uint32 worldstateId, uint32 worldstateValue) |
|
void | DoSendNotifyToInstance (char const *format,...) |
|
void | DoUpdateAchievementCriteria (AchievementCriteriaTypes type, uint32 miscValue1=0, uint32 miscValue2=0, Unit *unit=nullptr) |
|
void | DoStartTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry) |
|
void | DoStopTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry) |
|
void | DoRemoveAurasDueToSpellOnPlayers (uint32 spell) |
|
void | DoCastSpellOnPlayers (uint32 spell) |
|
void | DoCastSpellOnPlayer (Player *player, uint32 spell, bool includePets, bool includeControlled) |
|
bool | ServerAllowsTwoSideGroups () |
|
virtual bool | SetBossState (uint32 id, EncounterState state) |
|
EncounterState | GetBossState (uint32 id) const |
|
CreatureBoundary const * | GetBossBoundary (uint32 id) const |
|
BossInfo const * | GetBossInfo (uint32 id) const |
|
uint32 | GetPersistentData (uint32 index) const |
|
void | StorePersistentData (uint32 index, uint32 data) |
|
virtual bool | CheckAchievementCriteriaMeet (uint32, Player const *, Unit const *=nullptr, uint32=0) |
|
virtual bool | CheckRequiredBosses (uint32, Player const *=nullptr) const |
|
void | SetCompletedEncountersMask (uint32 newMask, bool save) |
|
uint32 | GetCompletedEncounterMask () const |
|
void | SendEncounterUnit (uint32 type, Unit *unit=nullptr, uint8 param1=0, uint8 param2=0) |
|
virtual void | FillInitialWorldStates (WorldPacket &) |
|
uint32 | GetEncounterCount () const |
|
void | MarkAreaTriggerDone (uint32 id) |
|
void | ResetAreaTriggerDone (uint32 id) |
|
bool | IsAreaTriggerDone (uint32 id) const |
|
virtual void | DoAction (int32) |
|
void | DoForAllMinions (uint32 id, std::function< void(Creature *)> exec) |
|
void | StoreGameObjectState (ObjectGuid::LowType spawnId, uint8 state) |
|
uint8 | GetStoredGameObjectState (ObjectGuid::LowType spawnId) const |
|
void | LoadInstanceSavedGameobjectStateData () |
|
bool | IsBossDone (uint32 bossId) const |
|
bool | AllBossesDone () const |
|
bool | AllBossesDone (std::initializer_list< uint32 > bossIds) const |
|
| ZoneScript () |
|
virtual | ~ZoneScript () |
|
virtual uint32 | GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data) |
|
virtual uint32 | GetGameObjectEntry (ObjectGuid::LowType, uint32 entry) |
|
virtual void | OnCreatureCreate (Creature *) |
|
virtual void | OnCreatureRemove (Creature *) |
|
virtual void | OnGameObjectCreate (GameObject *) |
|
virtual void | OnGameObjectRemove (GameObject *) |
|
virtual void | OnUnitDeath (Unit *) |
|
virtual void | OnCreatureEvade (Creature *) |
|
virtual ObjectGuid | GetGuidData (uint32) const |
|
virtual void | SetGuidData (uint32, ObjectGuid) |
|
virtual uint64 | GetData64 (uint32) const |
|
virtual void | SetData64 (uint32, uint64) |
|
virtual uint32 | GetData (uint32) const |
|
virtual void | SetData (uint32, uint32) |
|
virtual void | ProcessEvent (WorldObject *, uint32) |
|
void instance_karazhan::instance_karazhan_InstanceMapScript::OnCreatureCreate |
( |
Creature * |
creature | ) |
|
|
inlineoverridevirtual |
Reimplemented from InstanceScript.
97 {
99 {
102 break;
105 break;
109 {
111 }
112 break;
127 break;
130 break;
133 break;
136 {
137 if (terestrian->AI())
138 {
139 terestrian->AI()->JustSummoned(creature);
141 }
142 }
143 break;
144 default:
145 break;
146 }
147
149 }
@ NPC_ECHO_OF_MEDIVH
Definition: karazhan.h:121
@ NPC_QUEEN_H
Definition: karazhan.h:126
@ NPC_ROOK_A
Definition: karazhan.h:131
@ NPC_KNIGHT_H
Definition: karazhan.h:124
@ NPC_KING_A
Definition: karazhan.h:133
@ NPC_PAWN_H
Definition: karazhan.h:122
@ NPC_PAWN_A
Definition: karazhan.h:123
@ NPC_FIENDISH_IMP
Definition: karazhan.h:118
@ NPC_ROOK_H
Definition: karazhan.h:130
@ NPC_NIGHTBANE
Definition: karazhan.h:96
@ NPC_BARNES
Definition: karazhan.h:110
@ NPC_KING_H
Definition: karazhan.h:132
@ NPC_QUEEN_A
Definition: karazhan.h:127
@ NPC_BISHOP_H
Definition: karazhan.h:128
@ NPC_CHESS_EVENT_MEDIVH_CHEAT_FIRES
Definition: karazhan.h:134
@ NPC_BISHOP_A
Definition: karazhan.h:129
@ NPC_RELAY
Definition: karazhan.h:109
@ NPC_KNIGHT_A
Definition: karazhan.h:125
@ DATA_TERESTIAN
Definition: karazhan.h:37
@ DONE
Definition: InstanceScript.h:60
void SetInCombatWithZone()
Set in combat all units in the dungeon/raid. Affect only units with IsAIEnabled.
Definition: Creature.cpp:2811
void Respawn(bool force=false)
Definition: Creature.cpp:2035
uint32 GetEntry() const
Definition: Object.h:115
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:112
uint32 GetMaxHealth() const
Definition: Unit.h:1030
bool IsAlive() const
Definition: Unit.h:1654
void SetHealth(uint32 val)
Definition: Unit.cpp:15478
void OnCreatureCreate(Creature *creature) override
Definition: InstanceScript.cpp:58
EncounterState GetBossState(uint32 id) const
Definition: InstanceScript.h:235
ObjectGuid m_uiRelayGUID
Definition: instance_karazhan.cpp:495
GuidSet _chessPiecesGUID
Definition: instance_karazhan.cpp:500
ObjectGuid _barnesGUID
Definition: instance_karazhan.cpp:496
GuidSet _medivhCheatFiresGUID
Definition: instance_karazhan.cpp:501
References _barnesGUID, _chessPiecesGUID, _echoOfMedivhGUID, _medivhCheatFiresGUID, DATA_OPERA_PERFORMANCE, DATA_TERESTIAN, DONE, InstanceScript::GetBossState(), InstanceScript::GetCreature(), Object::GetEntry(), Object::GetGUID(), Unit::GetMaxHealth(), Unit::IsAlive(), m_uiNightBaneGUID, m_uiRelayGUID, NPC_BARNES, NPC_BISHOP_A, NPC_BISHOP_H, NPC_CHESS_EVENT_MEDIVH_CHEAT_FIRES, NPC_ECHO_OF_MEDIVH, NPC_FIENDISH_IMP, NPC_KING_A, NPC_KING_H, NPC_KNIGHT_A, NPC_KNIGHT_H, NPC_NIGHTBANE, NPC_PAWN_A, NPC_PAWN_H, NPC_QUEEN_A, NPC_QUEEN_H, NPC_RELAY, NPC_ROOK_A, NPC_ROOK_H, InstanceScript::OnCreatureCreate(), Creature::Respawn(), Unit::SetHealth(), and Creature::SetInCombatWithZone().
void instance_karazhan::instance_karazhan_InstanceMapScript::OnGameObjectCreate |
( |
GameObject * |
go | ) |
|
|
inlineoverridevirtual |
Reimplemented from InstanceScript.
337 {
339 {
342 break;
347 break;
352 break;
355 break;
360 else
362 break;
365 break;
369 else
371 break;
374 break;
378 break;
383 break;
388 break;
389 default:
390 break;
391 }
392
394 }
@ EVENT_HOOD
Definition: karazhan.h:82
@ DATA_ARAN
Definition: karazhan.h:36
@ GO_HOOD_BACKDROP
Definition: karazhan.h:160
@ GO_HOOD_HOUSE
Definition: karazhan.h:162
@ GO_STAGE_DOOR_RIGHT
Definition: karazhan.h:146
@ GO_STAGE_CURTAIN
Definition: karazhan.h:144
@ GO_RAJ_MOON
Definition: karazhan.h:164
@ GO_OZ_HAY
Definition: karazhan.h:159
@ GO_PRIVATE_LIBRARY_DOOR
Definition: karazhan.h:147
@ GO_RAJ_BACKDROP
Definition: karazhan.h:163
@ GO_MASSIVE_DOOR
Definition: karazhan.h:148
@ GO_RAJ_BALCONY
Definition: karazhan.h:165
@ GO_STAGE_DOOR_LEFT
Definition: karazhan.h:145
@ GO_GAMESMAN_HALL_EXIT_DOOR
Definition: karazhan.h:150
@ GO_HOOD_TREE
Definition: karazhan.h:161
@ GO_SIDE_ENTRANCE_DOOR
Definition: karazhan.h:154
@ GO_DUST_COVERED_CHEST
Definition: karazhan.h:155
@ GO_OZ_BACKDROP
Definition: karazhan.h:158
@ GO_FLAG_LOCKED
Definition: SharedDefines.h:1604
@ IN_PROGRESS
Definition: InstanceScript.h:58
@ GO_STATE_ACTIVE
Definition: GameObjectData.h:689
void SetGoState(GOState state)
Definition: GameObject.cpp:2479
void SetGameObjectFlag(GameObjectFlags flags)
Definition: GameObject.h:218
void RemoveGameObjectFlag(GameObjectFlags flags)
Definition: GameObject.h:219
void OnGameObjectCreate(GameObject *go) override
Definition: InstanceScript.cpp:73
GuidVector _operaDecorations[EVENT_RAJ]
Definition: instance_karazhan.cpp:499
ObjectGuid m_uiGamesmansExitDoor
Definition: instance_karazhan.cpp:492
References _operaDecorations, DATA_ARAN, DATA_OPERA_PERFORMANCE, DONE, DustCoveredChest, EVENT_HOOD, EVENT_OZ, EVENT_RAJ, InstanceScript::GetBossState(), Object::GetEntry(), Object::GetGUID(), GO_DUST_COVERED_CHEST, GO_FLAG_LOCKED, GO_GAMESMAN_HALL_EXIT_DOOR, GO_HOOD_BACKDROP, GO_HOOD_HOUSE, GO_HOOD_TREE, GO_MASSIVE_DOOR, GO_OZ_BACKDROP, GO_OZ_HAY, GO_PRIVATE_LIBRARY_DOOR, GO_RAJ_BACKDROP, GO_RAJ_BALCONY, GO_RAJ_MOON, GO_SIDE_ENTRANCE_DOOR, GO_STAGE_CURTAIN, GO_STAGE_DOOR_LEFT, GO_STAGE_DOOR_RIGHT, GO_STATE_ACTIVE, IN_PROGRESS, m_uiCurtainGUID, m_uiGamesmansExitDoor, m_uiLibraryDoor, m_uiMassiveDoor, m_uiStageDoorLeftGUID, m_uiStageDoorRightGUID, InstanceScript::OnGameObjectCreate(), GameObject::RemoveGameObjectFlag(), GameObject::SetGameObjectFlag(), and GameObject::SetGoState().
void instance_karazhan::instance_karazhan_InstanceMapScript::OnUnitDeath |
( |
Unit * |
unit | ) |
|
|
inlineoverridevirtual |
Reimplemented from ZoneScript.
152 {
154 if (!creature)
155 return;
156
158 {
168 {
171 {
173 {
176 break;
179 break;
182 break;
183 }
184 }
185 }
186 break;
192 break;
193 default:
194 break;
195 }
196 }
const Position OptionalSpawn[]
Definition: instance_karazhan.cpp:29
@ NPC_VAMPIRIC_SHADOWBAT
Definition: karazhan.h:103
@ NPC_PHASE_HOUND
Definition: karazhan.h:105
@ NPC_GREATER_SHADOWBAT
Definition: karazhan.h:104
@ NPC_SHADOWBEAST
Definition: karazhan.h:107
@ NPC_ROKAD_THE_RAVAGER
Definition: karazhan.h:89
@ NPC_SHADOWBAT
Definition: karazhan.h:102
@ NPC_HYAKISS_THE_LURKER
Definition: karazhan.h:88
@ NPC_SHADIKITH_THE_GLIDER
Definition: karazhan.h:90
@ NPC_DREADBEAST
Definition: karazhan.h:106
@ NPC_COLDMIST_WIDOW
Definition: karazhan.h:100
@ NPC_COLDMIST_STALKER
Definition: karazhan.h:101
@ OPTIONAL_BOSS_REQUIRED_DEATH_COUNT
Definition: karazhan.h:170
@ DATA_OPTIONAL_BOSS
Definition: karazhan.h:33
@ TO_BE_DECIDED
Definition: InstanceScript.h:62
Creature * ToCreature()
Definition: Object.h:205
Map * instance
Definition: InstanceScript.h:148
InstanceMap * ToInstanceMap()
Definition: Map.h:544
TempSummon * SummonCreature(uint32 entry, Position const &pos, SummonPropertiesEntry const *properties=nullptr, uint32 duration=0, WorldObject *summoner=nullptr, uint32 spellId=0, uint32 vehId=0, bool visibleBySummonerOnly=false)
Definition: Object.cpp:2174
void PermBindAllPlayers()
Definition: Map.cpp:3155
bool SetBossState(uint32 type, EncounterState state) override
Definition: instance_karazhan.cpp:301
References DATA_OPTIONAL_BOSS, DONE, InstanceScript::GetBossState(), Object::GetEntry(), InstanceScript::instance, NPC_COLDMIST_STALKER, NPC_COLDMIST_WIDOW, NPC_DREADBEAST, NPC_GREATER_SHADOWBAT, NPC_HYAKISS_THE_LURKER, NPC_PHASE_HOUND, NPC_ROKAD_THE_RAVAGER, NPC_SHADIKITH_THE_GLIDER, NPC_SHADOWBAT, NPC_SHADOWBEAST, NPC_VAMPIRIC_SHADOWBAT, OPTIONAL_BOSS_REQUIRED_DEATH_COUNT, OptionalBossCount, OptionalSpawn, InstanceMap::PermBindAllPlayers(), SetBossState(), Map::SummonCreature(), TO_BE_DECIDED, Object::ToCreature(), Map::ToInstanceMap(), and urand().
void instance_karazhan::instance_karazhan_InstanceMapScript::SetData |
( |
uint32 |
type, |
|
|
uint32 |
data |
|
) |
| |
|
inlineoverridevirtual |
Reimplemented from ZoneScript.
199 {
200 switch (type)
201 {
207 break;
209 {
211 {
213 }
214
215 break;
216 }
218 {
220
221 switch (data)
222 {
225 {
228 {
230 {
232 {
234 {
236 }
237 }
239 {
241 {
243 }
244 }
245 else
246 {
248 }
249 }
250 }
251 break;
255 break;
256 }
257 default:
259 break;
260 }
261 break;
262 }
265 break;
268 {
270 {
271 piece->RemoveAllAuras();
272 piece->setDeathState(DeathState::JustRespawned);
273 piece->SetHealth(piece->GetMaxHealth());
274 float x, y, z, o;
275 piece->GetHomePosition(x, y, z, o);
276 piece->NearTeleportTo(x, y, z, o);
279 piece->AI()->Reset();
280 }
281 }
282
284 {
286 {
287 fire->DespawnOrUnsummon();
288 }
289 }
290
292 break;
295 break;
296 default:
297 break;
298 }
299 }
constexpr auto DAY
Definition: Common.h:49
@ CHESS_FACTION_HORDE
Definition: karazhan.h:200
@ CHESS_FACTION_ALLIANCE
Definition: karazhan.h:201
@ SPELL_GAME_IN_SESSION
Definition: karazhan.h:182
@ ACTION_CHESS_PIECE_RESET_ORIENTATION
Definition: karazhan.h:172
@ DATA_SPAWN_OPERA_DECORATIONS
Definition: karazhan.h:58
@ DATA_CHESS_REINIT_PIECES
Definition: karazhan.h:63
@ TEAM_ALLIANCE
Definition: SharedDefines.h:760
@ TEAM_HORDE
Definition: SharedDefines.h:761
@ SPECIAL
Definition: InstanceScript.h:61
@ UNIT_NPC_FLAG_GOSSIP
Definition: UnitDefines.h:294
Definition: ObjectGuid.h:118
void DoCastSpellOnPlayers(uint32 spell)
Definition: InstanceScript.cpp:676
void DoRemoveAurasDueToSpellOnPlayers(uint32 spell)
Definition: InstanceScript.cpp:665
void DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn=MINUTE)
Definition: InstanceScript.cpp:561
Creature * GetCreature(ObjectGuid const guid)
Definition: Map.cpp:3317
References _chessEvent, _chessGamePhase, _chessPiecesGUID, _chessTeam, _medivhCheatFiresGUID, _operaDecorations, ACTION_CHESS_PIECE_RESET_ORIENTATION, CHESS_EVENT_TEAM, CHESS_FACTION_ALLIANCE, CHESS_FACTION_HORDE, DATA_CHESS_EVENT, DATA_CHESS_GAME_PHASE, DATA_CHESS_REINIT_PIECES, DATA_OPERA_OZ_DEATHCOUNT, DATA_SPAWN_OPERA_DECORATIONS, DAY, InstanceScript::DoCastSpellOnPlayers(), DONE, InstanceScript::DoRemoveAurasDueToSpellOnPlayers(), InstanceScript::DoRespawnGameObject(), Map::GetCreature(), InstanceScript::HandleGameObject(), IN_PROGRESS, InstanceScript::instance, m_uiGamesmansExitDoor, OzDeathCount, InstanceMap::PermBindAllPlayers(), SPECIAL, SPELL_GAME_IN_SESSION, TEAM_ALLIANCE, TEAM_HORDE, Map::ToInstanceMap(), UNIT_FLAG_NOT_SELECTABLE, and UNIT_NPC_FLAG_GOSSIP.