Merge remote-tracking branch 'Treeston/3.3.5-kelthuzad' into 3.3.5 (PR #16634)

(cherry picked from commit 47a9cb1e56)

...Huh. Wonder how this one didn't make travis complain on the PR.
(cherry picked from commit 93a68d5881)

Was Travis completely napping on this one?
(cherry picked from commit 2d7dec0d39)
This commit is contained in:
treeston
2016-08-24 18:17:50 +02:00
committed by joschiwald
parent 41ed592d05
commit df0d32be81
6 changed files with 1050 additions and 663 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -97,6 +97,7 @@ ObjectData const objectData[] =
{ GO_NAXX_PORTAL_CONSTRUCT, DATA_NAXX_PORTAL_CONSTRUCT },
{ GO_NAXX_PORTAL_PLAGUE, DATA_NAXX_PORTAL_PLAGUE },
{ GO_NAXX_PORTAL_MILITARY, DATA_NAXX_PORTAL_MILITARY },
{ GO_KELTHUZAD_THRONE, DATA_KELTHUZAD_THRONE },
{ 0, 0, }
};
@@ -115,7 +116,6 @@ class instance_naxxramas : public InstanceMapScript
LoadDoorData(doorData);
LoadObjectData(nullptr, objectData);
AbominationCount = 0;
hadAnubRekhanGreet = false;
hadFaerlinaGreet = false;
hadThaddiusGreet = false;
@@ -230,6 +230,10 @@ class instance_naxxramas : public InstanceMapScript
if (GetBossState(BOSS_HORSEMEN) == DONE)
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
break;
case GO_KELTHUZAD_THRONE:
if (GetBossState(BOSS_KELTHUZAD) == DONE)
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
break;
case GO_BIRTH:
if (hadSapphironBirth || GetBossState(BOSS_SAPPHIRON) == DONE)
{
@@ -270,9 +274,6 @@ class instance_naxxramas : public InstanceMapScript
if (GameObject* gate = instance->GetGameObject(GothikGateGUID))
gate->SetGoState(GOState(value));
break;
case DATA_ABOMINATION_KILLED:
AbominationCount = value;
break;
case DATA_HAD_ANUBREKHAN_GREET:
hadAnubRekhanGreet = (value == 1u);
break;
@@ -294,8 +295,6 @@ class instance_naxxramas : public InstanceMapScript
{
switch (id)
{
case DATA_ABOMINATION_KILLED:
return AbominationCount;
case DATA_HAD_ANUBREKHAN_GREET:
return hadAnubRekhanGreet ? 1u : 0u;
case DATA_HAD_FAERLINA_GREET:
@@ -418,6 +417,12 @@ class instance_naxxramas : public InstanceMapScript
case BOSS_SAPPHIRON:
if (state == DONE)
events.ScheduleEvent(EVENT_DIALOGUE_SAPPHIRON_KELTHUZAD, Seconds(6));
HandleGameObject(KelthuzadDoorGUID, false);
break;
case BOSS_KELTHUZAD:
if (state == DONE)
if (GameObject* throne = GetGameObject(DATA_KELTHUZAD_THRONE))
throne->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
break;
default:
break;
@@ -493,7 +498,6 @@ class instance_naxxramas : public InstanceMapScript
case EVENT_DIALOGUE_SAPPHIRON_KELTHUZAD:
if (Creature* kelthuzad = instance->GetCreature(KelthuzadGUID))
kelthuzad->AI()->Talk(SAY_DIALOGUE_SAPPHIRON_KELTHUZAD);
HandleGameObject(KelthuzadDoorGUID, false);
events.ScheduleEvent(EVENT_DIALOGUE_SAPPHIRON_LICHKING, Seconds(6));
break;
case EVENT_DIALOGUE_SAPPHIRON_LICHKING:
@@ -614,7 +618,6 @@ class instance_naxxramas : public InstanceMapScript
ObjectGuid PortalsGUID[4];
ObjectGuid KelthuzadDoorGUID;
ObjectGuid LichKingGUID;
uint8 AbominationCount;
bool hadAnubRekhanGreet;
bool hadFaerlinaGreet;
bool hadThaddiusGreet;

View File

@@ -50,12 +50,12 @@ enum NAXData
DATA_HAD_SAPPHIRON_BIRTH,
DATA_HORSEMEN_CHECK_ACHIEVEMENT_CREDIT,
DATA_ABOMINATION_KILLED,
DATA_NAXX_PORTAL_ARACHNID,
DATA_NAXX_PORTAL_CONSTRUCT,
DATA_NAXX_PORTAL_PLAGUE,
DATA_NAXX_PORTAL_MILITARY
DATA_NAXX_PORTAL_MILITARY,
DATA_KELTHUZAD_THRONE
};
enum NAXData64
@@ -121,6 +121,7 @@ enum NAXGameObjectsIds
GO_KELTHUZAD_PORTAL03 = 181404,
GO_KELTHUZAD_PORTAL04 = 181405,
GO_KELTHUZAD_TRIGGER = 181444,
GO_KELTHUZAD_THRONE = 181640,
GO_ROOM_ANUBREKHAN = 181126,
GO_PASSAGE_ANUBREKHAN = 181195,
GO_PASSAGE_FAERLINA = 194022,
@@ -138,14 +139,20 @@ enum NAXGameObjectsIds
GO_ROOM_HORSEMEN = 181119,
GO_PASSAGE_SAPPHIRON = 181225,
GO_ROOM_KELTHUZAD = 181228,
// End of wing portals
GO_ARAC_PORTAL = 181575,
GO_PLAG_PORTAL = 181577,
GO_MILI_PORTAL = 181578,
GO_CONS_PORTAL = 181576,
// "Glow" effect on center-side portal
GO_ARAC_EYE_RAMP = 181212,
GO_PLAG_EYE_RAMP = 181211,
GO_MILI_EYE_RAMP = 181210,
GO_CONS_EYE_RAMP = 181213,
// "Glow" effect on boss-side portal
GO_ARAC_EYE_RAMP_BOSS = 181233,
GO_PLAG_EYE_RAMP_BOSS = 181231,
GO_MILI_EYE_RAMP_BOSS = 181230,