|
| instance_blackwing_lair_InstanceMapScript (Map *map) |
|
void | Initialize () override |
|
void | OnCreatureCreate (Creature *creature) override |
|
void | OnGameObjectCreate (GameObject *go) override |
|
void | OnGameObjectRemove (GameObject *go) override |
|
uint32 | GetData (uint32 data) const override |
|
bool | CheckRequiredBosses (uint32 bossId, Player const *) const override |
|
bool | SetBossState (uint32 type, EncounterState state) override |
|
void | SetData (uint32 type, uint32 data) override |
|
ObjectGuid | GetGuidData (uint32 type) const override |
|
void | OnUnitDeath (Unit *unit) override |
|
void | Update (uint32 diff) override |
|
void | ReadSaveDataMore (std::istringstream &data) override |
|
void | WriteSaveDataMore (std::ostringstream &data) 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_blackwing_lair::instance_blackwing_lair_InstanceMapScript::OnCreatureCreate |
( |
Creature * |
creature | ) |
|
|
inlineoverridevirtual |
Reimplemented from InstanceScript.
100 {
101
103 {
104 return;
105 }
106
108
110 {
113 break;
117 {
119 {
120 razorAI->JustSummoned(creature);
121 }
122 }
123 break;
128 {
130 {
131 razorAI->JustSummoned(creature);
132 }
133 }
134 break;
137 break;
140 break;
148 {
150 {
151 nefariusAI->JustSummoned(creature);
152 }
153 }
154 break;
155 default:
156 break;
157 }
158 }
@ DATA_LORD_VICTOR_NEFARIUS
Definition: blackwing_lair.h:41
@ NPC_RED_DRAKONID
Definition: blackwing_lair.h:79
@ NPC_VICTOR_NEFARIUS
Definition: blackwing_lair.h:67
@ NPC_BLACKWING_DRAGON
Definition: blackwing_lair.h:56
@ NPC_CHROMATIC_DRAKONID
Definition: blackwing_lair.h:82
@ NPC_BLUE_DRAKONID
Definition: blackwing_lair.h:78
@ NPC_BLACKWING_GUARDSMAN
Definition: blackwing_lair.h:53
@ NPC_BLACKWING_MAGE
Definition: blackwing_lair.h:60
@ NPC_GREEN_DRAKONID
Definition: blackwing_lair.h:80
@ NPC_BRONZE_DRAKONID
Definition: blackwing_lair.h:77
@ NPC_BLACK_DRAKONID
Definition: blackwing_lair.h:81
@ NPC_RAZORGORE
Definition: blackwing_lair.h:55
@ NPC_BLACKWING_LEGIONAIRE
Definition: blackwing_lair.h:58
@ NPC_NEFARIAN
Definition: blackwing_lair.h:68
Definition: CreatureAI.h:71
Definition: Creature.h:46
uint32 GetEntry() const
Definition: Object.h:112
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:109
TempSummon * ToTempSummon()
Definition: Unit.h:1716
void OnCreatureCreate(Creature *creature) override
Definition: InstanceScript.cpp:58
Creature * GetCreature(uint32 type)
Definition: InstanceScript.cpp:100
Map * instance
Definition: InstanceScript.h:148
Creature * GetCreature(ObjectGuid const guid)
Definition: Map.cpp:3314
GuidList guardList
Definition: instance_blackwing_lair.cpp:457
ObjectGuid nefarianGUID
Definition: instance_blackwing_lair.cpp:450
References addsCount, DATA_LORD_VICTOR_NEFARIUS, Map::GetCreature(), InstanceScript::GetCreature(), Object::GetEntry(), Object::GetGUID(), guardList, InstanceScript::instance, nefarianGUID, NPC_BLACK_DRAKONID, NPC_BLACKWING_DRAGON, NPC_BLACKWING_GUARDSMAN, NPC_BLACKWING_LEGIONAIRE, NPC_BLACKWING_MAGE, NPC_BLUE_DRAKONID, NPC_BRONZE_DRAKONID, NPC_CHROMATIC_DRAKONID, NPC_GREEN_DRAKONID, NPC_NEFARIAN, NPC_RAZORGORE, NPC_RED_DRAKONID, NPC_VICTOR_NEFARIUS, InstanceScript::OnCreatureCreate(), razorgoreGUID, and Unit::ToTempSummon().
void instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::SetData |
( |
uint32 |
type, |
|
|
uint32 |
data |
|
) |
| |
|
inlineoverridevirtual |
Reimplemented from ZoneScript.
263 {
265 {
266 switch (data)
267 {
270 break;
273 break;
279 break;
285
287 {
289 }
290
292
294 {
296 }
297
298 break;
303 {
305 {
307 razor->RemoveAurasDueToSpell(19832);
309 }
312 }
313 break;
314 }
315 }
316
318 {
320 }
321
323 {
325 }
326 }
@ IN_PROGRESS
Definition: InstanceScript.h:58
@ SPECIAL
Definition: InstanceScript.h:61
@ EVENT_RAZOR_PHASE_TWO
Definition: blackwing_lair.h:104
@ DATA_GRETHOK
Definition: blackwing_lair.h:42
void CancelEvent(uint32 eventId)
Definition: EventMap.cpp:190
void DoRemoveAurasDueToSpellOnPlayers(uint32 spell)
Definition: InstanceScript.cpp:639
void DoRespawnCreature(ObjectGuid guid, bool force=false)
Definition: InstanceScript.cpp:561
void DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn=MINUTE)
Definition: InstanceScript.cpp:535
void SetData(uint32 type, uint32 data) override
Definition: instance_blackwing_lair.cpp:262
References _events, addsCount, EventMap::CancelEvent(), DATA_EGG_EVENT, DATA_GRETHOK, DATA_NEFARIAN_LEFT_TUNNEL, DATA_NEFARIAN_RIGHT_TUNNEL, DONE, InstanceScript::DoRemoveAurasDueToSpellOnPlayers(), InstanceScript::DoRespawnCreature(), InstanceScript::DoRespawnGameObject(), EggCount, EggEvent, EggList, EVENT_RAZOR_PHASE_TWO, EVENT_RAZOR_SPAWN, FAIL, Map::GetCreature(), guardList, IN_PROGRESS, InstanceScript::instance, NefarianLeftTunnel, NefarianRightTunnel, NOT_STARTED, razorgoreGUID, EventMap::ScheduleEvent(), SetData(), and SPECIAL.
Referenced by SetData().
void instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::Update |
( |
uint32 |
diff | ) |
|
|
inlineoverridevirtual |
Reimplemented from InstanceScript.
366 {
368 return;
369
371
373 {
374 switch (eventId)
375 {
378 {
379 bool spawnMoreAdds = true;
381 {
385
386
387 if (dragonkinsCount >= 12)
388 {
389
390 if (orcsCount >= 40)
391 {
392 spawnMoreAdds = false;
393 break;
394 }
395
397 {
398 continue;
399 }
400 }
401
403 {
404 continue;
405 }
406
408 {
409 summon->AI()->DoZoneInCombat();
410 }
411 }
412
413 if (spawnMoreAdds)
414 {
416 }
417 }
418 break;
423 break;
426 {
427 nefarius->SetPhaseMask(1, true);
428 nefarius->setActive(true);
429 nefarius->Respawn();
430 nefarius->GetMotionMaster()->MoveTargetedHome();
431 }
432 break;
433 }
434 }
435 }
uint32 urand(uint32 min, uint32 max)
Definition: Random.cpp:44
std::uint8_t uint8
Definition: Define.h:109
std::uint32_t uint32
Definition: Define.h:107
Position const SummonPosition[8]
Definition: instance_blackwing_lair.cpp:60
uint32 const Entry[3]
Definition: instance_blackwing_lair.cpp:72
@ ACTION_PHASE_TWO
Definition: blackwing_lair.h:111
uint32 ExecuteEvent()
Definition: EventMap.cpp:114
void Update(uint32 time)
Definition: EventMap.h:54
bool Empty() const
Definition: EventMap.h:96
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:2163
References _events, ACTION_PHASE_TWO, addsCount, EventMap::CancelEvent(), DATA_LORD_VICTOR_NEFARIUS, EggEvent, EventMap::Empty(), Entry, EVENT_RAZOR_PHASE_TWO, EVENT_RAZOR_SPAWN, EVENT_RESPAWN_NEFARIUS, EventMap::ExecuteEvent(), Map::GetCreature(), InstanceScript::GetCreature(), IN_PROGRESS, InstanceScript::instance, NPC_BLACKWING_DRAGON, razorgoreGUID, EventMap::ScheduleEvent(), Map::SummonCreature(), SummonPosition, EventMap::Update(), and urand().