|
| 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 | OnPlayerLeave (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 | DoRespawnGameObject (uint32 type) |
|
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 () |
|
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 (WorldPackets::WorldState::InitWorldStates &) |
|
uint32 | GetEncounterCount () const |
|
void | MarkAreaTriggerDone (uint32 id) |
|
void | ResetAreaTriggerDone (uint32 id) |
|
bool | IsAreaTriggerDone (uint32 id) const |
|
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 |
|
TeamId | GetTeamIdInInstance () const |
|
void | SetTeamIdInInstance (TeamId teamId) |
|
bool | IsTwoFactionInstance () const |
|
| ZoneScript () |
|
virtual | ~ZoneScript () |
|
virtual uint32 | GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data) |
|
virtual uint32 | GetGameObjectEntry (ObjectGuid::LowType, uint32 entry) |
|
virtual void | OnCreatureEvade (Creature *) |
|
virtual uint64 | GetData64 (uint32) const |
|
virtual void | SetData64 (uint32, uint64) |
|
virtual void | ProcessEvent (WorldObject *, uint32) |
|
void instance_karazhan::instance_karazhan_InstanceMapScript::OnCreatureCreate |
( |
Creature * |
creature | ) |
|
|
inlineoverridevirtual |
Reimplemented from ZoneScript.
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 }
@ DONE
Definition InstanceScript.h:61
void SetInCombatWithZone()
Set in combat all units in the dungeon/raid. Affect only units with IsAIEnabled.
Definition Creature.cpp:2828
void Respawn(bool force=false)
Definition Creature.cpp:2044
void OnCreatureCreate(Creature *creature) override
Definition InstanceScript.cpp:70
EncounterState GetBossState(uint32 id) const
Definition InstanceScript.h:242
uint32 GetEntry() const
Definition Object.h:115
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:112
uint32 GetMaxHealth() const
Definition Unit.h:1039
bool IsAlive() const
Definition Unit.h:1707
void SetHealth(uint32 val)
Definition Unit.cpp:15530
@ 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
ObjectGuid m_uiRelayGUID
Definition instance_karazhan.cpp:492
GuidSet _chessPiecesGUID
Definition instance_karazhan.cpp:497
ObjectGuid _barnesGUID
Definition instance_karazhan.cpp:493
GuidSet _medivhCheatFiresGUID
Definition instance_karazhan.cpp:498
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 ZoneScript.
334 {
336 {
339 break;
344 break;
349 break;
352 break;
357 else
359 break;
362 break;
366 else
368 break;
371 break;
375 break;
380 break;
385 break;
386 default:
387 break;
388 }
389
391 }
@ GO_STATE_ACTIVE
Definition GameObjectData.h:689
@ IN_PROGRESS
Definition InstanceScript.h:59
@ GO_FLAG_LOCKED
Definition SharedDefines.h:1604
void SetGoState(GOState state)
Definition GameObject.cpp:2462
void SetGameObjectFlag(GameObjectFlags flags)
Definition GameObject.h:217
void RemoveGameObjectFlag(GameObjectFlags flags)
Definition GameObject.h:218
void OnGameObjectCreate(GameObject *go) override
Definition InstanceScript.cpp:85
@ 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
GuidVector _operaDecorations[EVENT_RAJ]
Definition instance_karazhan.cpp:496
ObjectGuid m_uiGamesmansExitDoor
Definition instance_karazhan.cpp:489
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 }
@ TO_BE_DECIDED
Definition InstanceScript.h:63
void PermBindAllPlayers()
Definition Map.cpp:2336
Map * instance
Definition InstanceScript.h:149
InstanceMap * ToInstanceMap()
Definition Map.h:393
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
Creature * ToCreature()
Definition Object.h:205
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
bool SetBossState(uint32 type, EncounterState state) override
Definition instance_karazhan.cpp:298
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();
273 piece->SetHealth(piece->GetMaxHealth());
276 piece->AI()->Reset();
277 }
278 }
279
281 {
283 {
284 fire->DespawnOrUnsummon();
285 }
286 }
287
289 break;
292 break;
293 default:
294 break;
295 }
296 }
constexpr auto DAY
Definition Common.h:49
@ SPECIAL
Definition InstanceScript.h:62
@ TEAM_ALLIANCE
Definition SharedDefines.h:760
@ TEAM_HORDE
Definition SharedDefines.h:761
@ UNIT_NPC_FLAG_GOSSIP
Definition UnitDefines.h:315
void DoCastSpellOnPlayers(uint32 spell)
Definition InstanceScript.cpp:694
void DoRemoveAurasDueToSpellOnPlayers(uint32 spell)
Definition InstanceScript.cpp:683
void DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn=MINUTE)
Definition InstanceScript.cpp:573
Creature * GetCreature(ObjectGuid const guid)
Definition Map.cpp:2498
Definition ObjectGuid.h:118
@ 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
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, JustRespawned, 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.