diff options
author | Shauren <none@none> | 2010-05-22 21:15:25 +0200 |
---|---|---|
committer | Shauren <none@none> | 2010-05-22 21:15:25 +0200 |
commit | eb1c55f13aec84fc138849a2165d9c7f7c98b271 (patch) | |
tree | c027c5106a4db00d0ecb8d66cf6cad3c55c05fad | |
parent | bccd6fa6525b67dda008a9198fae723545e80d99 (diff) |
Fixed line endings in some files
--HG--
branch : trunk
-rw-r--r-- | src/scripts/kalimdor/onyxias_lair/instance_onyxias_lair.cpp | 498 | ||||
-rw-r--r-- | src/scripts/kalimdor/onyxias_lair/onyxias_lair.h | 130 |
2 files changed, 314 insertions, 314 deletions
diff --git a/src/scripts/kalimdor/onyxias_lair/instance_onyxias_lair.cpp b/src/scripts/kalimdor/onyxias_lair/instance_onyxias_lair.cpp index c230e28cc9d..cfd66bf80f4 100644 --- a/src/scripts/kalimdor/onyxias_lair/instance_onyxias_lair.cpp +++ b/src/scripts/kalimdor/onyxias_lair/instance_onyxias_lair.cpp @@ -1,249 +1,249 @@ -/* Copyright (C) 2008 - 2010 Trinity <http://www.trinitycore.org/>
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* ScriptData
-SDName: Instance_Onyxias_Lair
-SD%Complete: 100
-SDComment:
-SDCategory: Onyxia's Lair
-EndScriptData */
-
-#include "ScriptedPch.h"
-#include "onyxias_lair.h"
-
-struct instance_onyxias_lair : public ScriptedInstance
-{
- instance_onyxias_lair(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
-
- //Eruption is a BFS graph problem
- //One map to remember all floor, one map to keep floor that still need to erupt and one queue to know what needs to be removed
- std::map<uint64,uint32> FloorEruptionGUID[2];
- std::queue<uint64> FloorEruptionGUIDQueue;
-
- uint64 m_uiOnyxiasGUID;
- uint32 m_uiOnyxiaLiftoffTimer;
- uint32 m_uiManyWhelpsCounter;
- uint32 m_uiEruptTimer;
-
- uint8 m_auiEncounter[MAX_ENCOUNTER];
-
- bool m_bAchievManyWhelpsHandleIt;
- bool m_bAchievSheDeepBreathMore;
-
- void Initialize()
- {
- memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
-
- m_uiOnyxiasGUID = 0;
- m_uiOnyxiaLiftoffTimer = 0;
- m_uiManyWhelpsCounter = 0;
- m_bAchievManyWhelpsHandleIt = false;
- m_bAchievSheDeepBreathMore = true;
-
- m_uiEruptTimer = 0;
- }
-
- void OnCreatureCreate(Creature* pCreature, bool add)
- {
- switch (pCreature->GetEntry())
- {
- case NPC_ONYXIA:
- m_uiOnyxiasGUID = pCreature->GetGUID();
- break;
- }
- }
-
- void OnGameObjectCreate(GameObject* pGo, bool add)
- {
- if ((pGo->GetGOInfo()->displayId == 4392 || pGo->GetGOInfo()->displayId == 4472) && pGo->GetGOInfo()->trap.spellId == 17731)
- {
- if (add)
- FloorEruptionGUID[0].insert(std::make_pair(pGo->GetGUID(),0));
- else
- FloorEruptionGUID[0].erase(pGo->GetGUID());
- return;
- }
-
- switch(pGo->GetEntry())
- {
- case GO_WHELP_SPAWNER:
- Position pGoPos;
- pGo->GetPosition(&pGoPos);
- if (Creature* pTemp = pGo->SummonCreature(NPC_WHELP,pGoPos,TEMPSUMMON_CORPSE_DESPAWN))
- {
- pTemp->SetInCombatWithZone();
- ++m_uiManyWhelpsCounter;
- }
- break;
- }
- }
-
- void FloorEruption(uint64 floorEruptedGUID)
- {
- if (GameObject *pFloorEruption = instance->GetGameObject(floorEruptedGUID))
- {
- //THIS GOB IS A TRAP - What shall i do? =(
- //Cast it spell? Copyed Heigan method
- pFloorEruption->SendCustomAnim();
- pFloorEruption->CastSpell(NULL, Difficulty(instance->GetSpawnMode()) == RAID_DIFFICULTY_10MAN_NORMAL ? 17731 : 69294); //pFloorEruption->GetGOInfo()->trap.spellId
-
- //Get all immediatly nearby floors
- std::list<GameObject*> nearFloorList;
- Trinity::GameObjectInRangeCheck check(pFloorEruption->GetPositionX(), pFloorEruption->GetPositionY(), pFloorEruption->GetPositionZ(), 15);
- Trinity::GameObjectListSearcher<Trinity::GameObjectInRangeCheck> searcher(pFloorEruption, nearFloorList, check);
- pFloorEruption->VisitNearbyGridObject(999, searcher);
- //remove all that are not present on FloorEruptionGUID[1] and update treeLen on each GUID
- for (std::list<GameObject*>::const_iterator itr = nearFloorList.begin(); itr != nearFloorList.end(); ++itr)
- {
- if (((*itr)->GetGOInfo()->displayId == 4392 || (*itr)->GetGOInfo()->displayId == 4472) && (*itr)->GetGOInfo()->trap.spellId == 17731)
- {
- uint64 nearFloorGUID = (*itr)->GetGUID();
- if (FloorEruptionGUID[1].find(nearFloorGUID) != FloorEruptionGUID[1].end() && (*FloorEruptionGUID[1].find(nearFloorGUID)).second == 0)
- {
- (*FloorEruptionGUID[1].find(nearFloorGUID)).second = (*FloorEruptionGUID[1].find(floorEruptedGUID)).second+1;
- FloorEruptionGUIDQueue.push(nearFloorGUID);
- }
- }
- }
- }
- FloorEruptionGUID[1].erase(floorEruptedGUID);
- }
-
- void SetData(uint32 uiType, uint32 uiData)
- {
- switch(uiType)
- {
- case DATA_ONYXIA:
- m_auiEncounter[0] = uiData;
- if (uiData == IN_PROGRESS)
- SetData(DATA_SHE_DEEP_BREATH_MORE, IN_PROGRESS);
- break;
- case DATA_ONYXIA_PHASE:
- if (uiData == PHASE_BREATH) //Used to mark the liftoff phase
- {
- m_bAchievManyWhelpsHandleIt = false;
- m_uiManyWhelpsCounter = 0;
- m_uiOnyxiaLiftoffTimer = 10*IN_MILISECONDS;
- }
- break;
- case DATA_SHE_DEEP_BREATH_MORE:
- if (uiData == IN_PROGRESS)
- {
- m_bAchievSheDeepBreathMore = true;
- }
- else if (uiData == FAIL)
- {
- m_bAchievSheDeepBreathMore = false;
- }
- break;
- }
-
- if (uiType < MAX_ENCOUNTER && uiData == DONE)
- SaveToDB();
- }
-
- void SetData64(uint32 uiType, uint64 uiData)
- {
- switch(uiType)
- {
- case DATA_FLOOR_ERUPTION_GUID:
- FloorEruptionGUID[1] = FloorEruptionGUID[0];
- FloorEruptionGUIDQueue.push(uiData);
- m_uiEruptTimer = 2500;
- break;
- }
- }
-
- uint32 GetData(uint32 uiType)
- {
- switch(uiType)
- {
- case DATA_ONYXIA:
- return m_auiEncounter[0];
- }
-
- return 0;
- }
-
- uint64 GetData64(uint32 uiData)
- {
- switch(uiData)
- {
- case DATA_ONYXIA_GUID:
- return m_uiOnyxiasGUID;
- }
-
- return 0;
- }
-
- void Update(uint32 uiDiff)
- {
- if (GetData(DATA_ONYXIA) == IN_PROGRESS)
- {
- if (m_uiOnyxiaLiftoffTimer && m_uiOnyxiaLiftoffTimer <= uiDiff)
- {
- m_uiOnyxiaLiftoffTimer = 0;
- if (m_uiManyWhelpsCounter >= 50)
- m_bAchievManyWhelpsHandleIt = true;
- } else m_uiOnyxiaLiftoffTimer -= uiDiff;
- }
-
- if (!FloorEruptionGUIDQueue.empty())
- {
- if (m_uiEruptTimer <= uiDiff)
- {
- uint32 treeHeight = 0;
- do
- {
- treeHeight = (*FloorEruptionGUID[1].find(FloorEruptionGUIDQueue.front())).second;
- FloorEruption(FloorEruptionGUIDQueue.front());
- FloorEruptionGUIDQueue.pop();
- } while (!FloorEruptionGUIDQueue.empty() && (*FloorEruptionGUID[1].find(FloorEruptionGUIDQueue.front())).second == treeHeight);
- m_uiEruptTimer = 1000;
- }
- else
- m_uiEruptTimer -= uiDiff;
- }
- }
-
- bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* source, Unit const* target = NULL, uint32 miscvalue1 = 0)
- {
- switch(criteria_id)
- {
- case ACHIEV_CRITERIA_MANY_WHELPS_10_PLAYER: // Criteria for achievement 4403: Many Whelps! Handle It! (10 player) Hatch 50 eggs in 10s
- case ACHIEV_CRITERIA_MANY_WHELPS_25_PLAYER: // Criteria for achievement 4406: Many Whelps! Handle It! (25 player) Hatch 50 eggs in 10s
- return m_bAchievManyWhelpsHandleIt;
- case ACHIEV_CRITERIA_DEEP_BREATH_10_PLAYER: // Criteria for achievement 4404: She Deep Breaths More (10 player) Everybody evade Deep Breath
- case ACHIEV_CRITERIA_DEEP_BREATH_25_PLAYER: // Criteria for achievement 4407: She Deep Breaths More (25 player) Everybody evade Deep Breath
- return m_bAchievSheDeepBreathMore;
- }
- return false;
- }
-};
-
-InstanceData* GetInstanceData_instance_onyxias_lair(Map* pMap)
-{
- return new instance_onyxias_lair(pMap);
-}
-
-void AddSC_instance_onyxias_lair()
-{
- Script *newscript;
- newscript = new Script;
- newscript->Name = "instance_onyxias_lair";
- newscript->GetInstanceData = &GetInstanceData_instance_onyxias_lair;
- newscript->RegisterSelf();
-}
+/* Copyright (C) 2008 - 2010 Trinity <http://www.trinitycore.org/> + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* ScriptData +SDName: Instance_Onyxias_Lair +SD%Complete: 100 +SDComment: +SDCategory: Onyxia's Lair +EndScriptData */ + +#include "ScriptedPch.h" +#include "onyxias_lair.h" + +struct instance_onyxias_lair : public ScriptedInstance +{ + instance_onyxias_lair(Map* pMap) : ScriptedInstance(pMap) {Initialize();}; + + //Eruption is a BFS graph problem + //One map to remember all floor, one map to keep floor that still need to erupt and one queue to know what needs to be removed + std::map<uint64,uint32> FloorEruptionGUID[2]; + std::queue<uint64> FloorEruptionGUIDQueue; + + uint64 m_uiOnyxiasGUID; + uint32 m_uiOnyxiaLiftoffTimer; + uint32 m_uiManyWhelpsCounter; + uint32 m_uiEruptTimer; + + uint8 m_auiEncounter[MAX_ENCOUNTER]; + + bool m_bAchievManyWhelpsHandleIt; + bool m_bAchievSheDeepBreathMore; + + void Initialize() + { + memset(&m_auiEncounter, 0, sizeof(m_auiEncounter)); + + m_uiOnyxiasGUID = 0; + m_uiOnyxiaLiftoffTimer = 0; + m_uiManyWhelpsCounter = 0; + m_bAchievManyWhelpsHandleIt = false; + m_bAchievSheDeepBreathMore = true; + + m_uiEruptTimer = 0; + } + + void OnCreatureCreate(Creature* pCreature, bool add) + { + switch (pCreature->GetEntry()) + { + case NPC_ONYXIA: + m_uiOnyxiasGUID = pCreature->GetGUID(); + break; + } + } + + void OnGameObjectCreate(GameObject* pGo, bool add) + { + if ((pGo->GetGOInfo()->displayId == 4392 || pGo->GetGOInfo()->displayId == 4472) && pGo->GetGOInfo()->trap.spellId == 17731) + { + if (add) + FloorEruptionGUID[0].insert(std::make_pair(pGo->GetGUID(),0)); + else + FloorEruptionGUID[0].erase(pGo->GetGUID()); + return; + } + + switch(pGo->GetEntry()) + { + case GO_WHELP_SPAWNER: + Position pGoPos; + pGo->GetPosition(&pGoPos); + if (Creature* pTemp = pGo->SummonCreature(NPC_WHELP,pGoPos,TEMPSUMMON_CORPSE_DESPAWN)) + { + pTemp->SetInCombatWithZone(); + ++m_uiManyWhelpsCounter; + } + break; + } + } + + void FloorEruption(uint64 floorEruptedGUID) + { + if (GameObject *pFloorEruption = instance->GetGameObject(floorEruptedGUID)) + { + //THIS GOB IS A TRAP - What shall i do? =( + //Cast it spell? Copyed Heigan method + pFloorEruption->SendCustomAnim(); + pFloorEruption->CastSpell(NULL, Difficulty(instance->GetSpawnMode()) == RAID_DIFFICULTY_10MAN_NORMAL ? 17731 : 69294); //pFloorEruption->GetGOInfo()->trap.spellId + + //Get all immediatly nearby floors + std::list<GameObject*> nearFloorList; + Trinity::GameObjectInRangeCheck check(pFloorEruption->GetPositionX(), pFloorEruption->GetPositionY(), pFloorEruption->GetPositionZ(), 15); + Trinity::GameObjectListSearcher<Trinity::GameObjectInRangeCheck> searcher(pFloorEruption, nearFloorList, check); + pFloorEruption->VisitNearbyGridObject(999, searcher); + //remove all that are not present on FloorEruptionGUID[1] and update treeLen on each GUID + for (std::list<GameObject*>::const_iterator itr = nearFloorList.begin(); itr != nearFloorList.end(); ++itr) + { + if (((*itr)->GetGOInfo()->displayId == 4392 || (*itr)->GetGOInfo()->displayId == 4472) && (*itr)->GetGOInfo()->trap.spellId == 17731) + { + uint64 nearFloorGUID = (*itr)->GetGUID(); + if (FloorEruptionGUID[1].find(nearFloorGUID) != FloorEruptionGUID[1].end() && (*FloorEruptionGUID[1].find(nearFloorGUID)).second == 0) + { + (*FloorEruptionGUID[1].find(nearFloorGUID)).second = (*FloorEruptionGUID[1].find(floorEruptedGUID)).second+1; + FloorEruptionGUIDQueue.push(nearFloorGUID); + } + } + } + } + FloorEruptionGUID[1].erase(floorEruptedGUID); + } + + void SetData(uint32 uiType, uint32 uiData) + { + switch(uiType) + { + case DATA_ONYXIA: + m_auiEncounter[0] = uiData; + if (uiData == IN_PROGRESS) + SetData(DATA_SHE_DEEP_BREATH_MORE, IN_PROGRESS); + break; + case DATA_ONYXIA_PHASE: + if (uiData == PHASE_BREATH) //Used to mark the liftoff phase + { + m_bAchievManyWhelpsHandleIt = false; + m_uiManyWhelpsCounter = 0; + m_uiOnyxiaLiftoffTimer = 10*IN_MILISECONDS; + } + break; + case DATA_SHE_DEEP_BREATH_MORE: + if (uiData == IN_PROGRESS) + { + m_bAchievSheDeepBreathMore = true; + } + else if (uiData == FAIL) + { + m_bAchievSheDeepBreathMore = false; + } + break; + } + + if (uiType < MAX_ENCOUNTER && uiData == DONE) + SaveToDB(); + } + + void SetData64(uint32 uiType, uint64 uiData) + { + switch(uiType) + { + case DATA_FLOOR_ERUPTION_GUID: + FloorEruptionGUID[1] = FloorEruptionGUID[0]; + FloorEruptionGUIDQueue.push(uiData); + m_uiEruptTimer = 2500; + break; + } + } + + uint32 GetData(uint32 uiType) + { + switch(uiType) + { + case DATA_ONYXIA: + return m_auiEncounter[0]; + } + + return 0; + } + + uint64 GetData64(uint32 uiData) + { + switch(uiData) + { + case DATA_ONYXIA_GUID: + return m_uiOnyxiasGUID; + } + + return 0; + } + + void Update(uint32 uiDiff) + { + if (GetData(DATA_ONYXIA) == IN_PROGRESS) + { + if (m_uiOnyxiaLiftoffTimer && m_uiOnyxiaLiftoffTimer <= uiDiff) + { + m_uiOnyxiaLiftoffTimer = 0; + if (m_uiManyWhelpsCounter >= 50) + m_bAchievManyWhelpsHandleIt = true; + } else m_uiOnyxiaLiftoffTimer -= uiDiff; + } + + if (!FloorEruptionGUIDQueue.empty()) + { + if (m_uiEruptTimer <= uiDiff) + { + uint32 treeHeight = 0; + do + { + treeHeight = (*FloorEruptionGUID[1].find(FloorEruptionGUIDQueue.front())).second; + FloorEruption(FloorEruptionGUIDQueue.front()); + FloorEruptionGUIDQueue.pop(); + } while (!FloorEruptionGUIDQueue.empty() && (*FloorEruptionGUID[1].find(FloorEruptionGUIDQueue.front())).second == treeHeight); + m_uiEruptTimer = 1000; + } + else + m_uiEruptTimer -= uiDiff; + } + } + + bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* source, Unit const* target = NULL, uint32 miscvalue1 = 0) + { + switch(criteria_id) + { + case ACHIEV_CRITERIA_MANY_WHELPS_10_PLAYER: // Criteria for achievement 4403: Many Whelps! Handle It! (10 player) Hatch 50 eggs in 10s + case ACHIEV_CRITERIA_MANY_WHELPS_25_PLAYER: // Criteria for achievement 4406: Many Whelps! Handle It! (25 player) Hatch 50 eggs in 10s + return m_bAchievManyWhelpsHandleIt; + case ACHIEV_CRITERIA_DEEP_BREATH_10_PLAYER: // Criteria for achievement 4404: She Deep Breaths More (10 player) Everybody evade Deep Breath + case ACHIEV_CRITERIA_DEEP_BREATH_25_PLAYER: // Criteria for achievement 4407: She Deep Breaths More (25 player) Everybody evade Deep Breath + return m_bAchievSheDeepBreathMore; + } + return false; + } +}; + +InstanceData* GetInstanceData_instance_onyxias_lair(Map* pMap) +{ + return new instance_onyxias_lair(pMap); +} + +void AddSC_instance_onyxias_lair() +{ + Script *newscript; + newscript = new Script; + newscript->Name = "instance_onyxias_lair"; + newscript->GetInstanceData = &GetInstanceData_instance_onyxias_lair; + newscript->RegisterSelf(); +} diff --git a/src/scripts/kalimdor/onyxias_lair/onyxias_lair.h b/src/scripts/kalimdor/onyxias_lair/onyxias_lair.h index cfbbc11e396..cadd5b5a2d5 100644 --- a/src/scripts/kalimdor/onyxias_lair/onyxias_lair.h +++ b/src/scripts/kalimdor/onyxias_lair/onyxias_lair.h @@ -1,65 +1,65 @@ -/* Copyright (C) 2008 - 2010 Trinity <http://www.trinitycore.org/>
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DEF_ONYXIAS_LAIR_H
-#define DEF_ONYXIAS_LAIR_H
-
-enum eData64
-{
- DATA_ONYXIA_GUID,
- DATA_FLOOR_ERUPTION_GUID
-};
-
-enum eInstanceData
-{
- DATA_ONYXIA,
- MAX_ENCOUNTER,
-
- DATA_ONYXIA_PHASE,
- DATA_SHE_DEEP_BREATH_MORE,
- DATA_MANY_WHELPS_COUNT
-};
-
-enum eCreatures
-{
- NPC_WHELP = 11262,
- NPC_LAIRGUARD = 36561,
-
- NPC_ONYXIA = 10184
-};
-
-enum eOnyxiaPhases
-{
- PHASE_START = 1,
- PHASE_BREATH = 2,
- PHASE_END = 3
-};
-
-enum eGameObjects
-{
- GO_WHELP_SPAWNER = 176510,
- GO_WHELP_EGG = 176511
-};
-
-enum eAchievementData
-{
- ACHIEV_CRITERIA_MANY_WHELPS_10_PLAYER = 12565, // Criteria for achievement 4403: Many Whelps! Handle It! (10 player) Hatch 50 eggs in 10s
- ACHIEV_CRITERIA_MANY_WHELPS_25_PLAYER = 12568, // Criteria for achievement 4406: Many Whelps! Handle It! (25 player) Hatch 50 eggs in 10s
- ACHIEV_CRITERIA_DEEP_BREATH_10_PLAYER = 12566, // Criteria for achievement 4404: She Deep Breaths More (10 player) Everybody evade Deep Breath
- ACHIEV_CRITERIA_DEEP_BREATH_25_PLAYER = 12569, // Criteria for achievement 4407: She Deep Breaths More (25 player) Everybody evade Deep Breath
- ACHIEV_TIMED_START_EVENT = 6601, // Timed event for achievement 4402, 4005: More Dots! (10,25 player) 5 min kill
-};
-#endif
+/* Copyright (C) 2008 - 2010 Trinity <http://www.trinitycore.org/> + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef DEF_ONYXIAS_LAIR_H +#define DEF_ONYXIAS_LAIR_H + +enum eData64 +{ + DATA_ONYXIA_GUID, + DATA_FLOOR_ERUPTION_GUID +}; + +enum eInstanceData +{ + DATA_ONYXIA, + MAX_ENCOUNTER, + + DATA_ONYXIA_PHASE, + DATA_SHE_DEEP_BREATH_MORE, + DATA_MANY_WHELPS_COUNT +}; + +enum eCreatures +{ + NPC_WHELP = 11262, + NPC_LAIRGUARD = 36561, + + NPC_ONYXIA = 10184 +}; + +enum eOnyxiaPhases +{ + PHASE_START = 1, + PHASE_BREATH = 2, + PHASE_END = 3 +}; + +enum eGameObjects +{ + GO_WHELP_SPAWNER = 176510, + GO_WHELP_EGG = 176511 +}; + +enum eAchievementData +{ + ACHIEV_CRITERIA_MANY_WHELPS_10_PLAYER = 12565, // Criteria for achievement 4403: Many Whelps! Handle It! (10 player) Hatch 50 eggs in 10s + ACHIEV_CRITERIA_MANY_WHELPS_25_PLAYER = 12568, // Criteria for achievement 4406: Many Whelps! Handle It! (25 player) Hatch 50 eggs in 10s + ACHIEV_CRITERIA_DEEP_BREATH_10_PLAYER = 12566, // Criteria for achievement 4404: She Deep Breaths More (10 player) Everybody evade Deep Breath + ACHIEV_CRITERIA_DEEP_BREATH_25_PLAYER = 12569, // Criteria for achievement 4407: She Deep Breaths More (25 player) Everybody evade Deep Breath + ACHIEV_TIMED_START_EVENT = 6601, // Timed event for achievement 4402, 4005: More Dots! (10,25 player) 5 min kill +}; +#endif |