mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2025-11-29 17:38:24 +08:00
Fix the North Portcullis in TOC
This commit is contained in:
@@ -51,6 +51,7 @@ public:
|
|||||||
uint64 NPC_BlackKnightVehicleGUID;
|
uint64 NPC_BlackKnightVehicleGUID;
|
||||||
uint64 NPC_BlackKnightGUID;
|
uint64 NPC_BlackKnightGUID;
|
||||||
uint64 GO_MainGateGUID;
|
uint64 GO_MainGateGUID;
|
||||||
|
uint64 GO_EnterGateGUID;
|
||||||
|
|
||||||
void Initialize()
|
void Initialize()
|
||||||
{
|
{
|
||||||
@@ -74,10 +75,11 @@ public:
|
|||||||
memset(&NPC_GrandChampionMinionsGUID, 0, sizeof(NPC_GrandChampionMinionsGUID));
|
memset(&NPC_GrandChampionMinionsGUID, 0, sizeof(NPC_GrandChampionMinionsGUID));
|
||||||
memset(&NPC_ArgentSoldierGUID, 0, sizeof(NPC_ArgentSoldierGUID));
|
memset(&NPC_ArgentSoldierGUID, 0, sizeof(NPC_ArgentSoldierGUID));
|
||||||
NPC_ArgentChampionGUID = 0;
|
NPC_ArgentChampionGUID = 0;
|
||||||
NPC_MemoryEntry = 0;
|
1 NPC_MemoryEntry = 0;
|
||||||
NPC_BlackKnightVehicleGUID = 0;
|
NPC_BlackKnightVehicleGUID = 0;
|
||||||
NPC_BlackKnightGUID = 0;
|
NPC_BlackKnightGUID = 0;
|
||||||
GO_MainGateGUID = 0;
|
GO_MainGateGUID = 0;
|
||||||
|
GO_EnterGateGUID = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool IsEncounterInProgress() const
|
bool IsEncounterInProgress() const
|
||||||
@@ -195,6 +197,10 @@ public:
|
|||||||
case GO_EAST_PORTCULLIS:
|
case GO_EAST_PORTCULLIS:
|
||||||
HandleGameObject(go->GetGUID(), false, go);
|
HandleGameObject(go->GetGUID(), false, go);
|
||||||
break;
|
break;
|
||||||
|
case GO_NORTH_PORTCULLIS:
|
||||||
|
HandleGameObject(go->GetGUID(), true, go);
|
||||||
|
GO_EnterGateGUID = go->GetGUID();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -417,6 +423,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
HandleGameObject(GO_MainGateGUID, false);
|
HandleGameObject(GO_MainGateGUID, false);
|
||||||
|
HandleGameObject(GO_EnterGateGUID, true);
|
||||||
Counter = 0;
|
Counter = 0;
|
||||||
SaveToDB();
|
SaveToDB();
|
||||||
events.Reset();
|
events.Reset();
|
||||||
@@ -503,6 +510,7 @@ public:
|
|||||||
else
|
else
|
||||||
announcer->AI()->Talk(TEXT_INTRODUCE_PALETRESS);
|
announcer->AI()->Talk(TEXT_INTRODUCE_PALETRESS);
|
||||||
}
|
}
|
||||||
|
HandleGameObject(GO_EnterGateGUID, false);
|
||||||
events.RescheduleEvent(EVENT_START_ARGENT_CHALLENGE_INTRO, 0);
|
events.RescheduleEvent(EVENT_START_ARGENT_CHALLENGE_INTRO, 0);
|
||||||
break;
|
break;
|
||||||
case INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED:
|
case INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED:
|
||||||
@@ -627,6 +635,7 @@ public:
|
|||||||
m_auiEncounter[1] = uiData;
|
m_auiEncounter[1] = uiData;
|
||||||
if( uiData == DONE )
|
if( uiData == DONE )
|
||||||
{
|
{
|
||||||
|
HandleGameObject(GO_EnterGateGUID, true);
|
||||||
InstanceProgress = INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED;
|
InstanceProgress = INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED;
|
||||||
events.ScheduleEvent(EVENT_ARGENT_CHALLENGE_RUN_MIDDLE, 0);
|
events.ScheduleEvent(EVENT_ARGENT_CHALLENGE_RUN_MIDDLE, 0);
|
||||||
}
|
}
|
||||||
@@ -644,9 +653,15 @@ public:
|
|||||||
{
|
{
|
||||||
m_auiEncounter[2] = uiData;
|
m_auiEncounter[2] = uiData;
|
||||||
if (uiData == NOT_STARTED)
|
if (uiData == NOT_STARTED)
|
||||||
|
{
|
||||||
|
HandleGameObject(GO_EnterGateGUID, false);
|
||||||
bAchievIveHadWorse = true;
|
bAchievIveHadWorse = true;
|
||||||
|
}
|
||||||
else if( uiData == DONE )
|
else if( uiData == DONE )
|
||||||
|
{
|
||||||
|
HandleGameObject(GO_EnterGateGUID, true);
|
||||||
InstanceProgress = INSTANCE_PROGRESS_FINISHED;
|
InstanceProgress = INSTANCE_PROGRESS_FINISHED;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DATA_ACHIEV_IVE_HAD_WORSE:
|
case DATA_ACHIEV_IVE_HAD_WORSE:
|
||||||
@@ -802,6 +817,7 @@ public:
|
|||||||
announcer->SetFacingTo(4.714f);
|
announcer->SetFacingTo(4.714f);
|
||||||
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
||||||
tirion->AI()->Talk(TEXT_BEGIN);
|
tirion->AI()->Talk(TEXT_BEGIN);
|
||||||
|
HandleGameObject(GO_EnterGateGUID, false);
|
||||||
}
|
}
|
||||||
for( uint8 i=0; i<3; ++i )
|
for( uint8 i=0; i<3; ++i )
|
||||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionMinionsGUID[1][i]) )
|
if( Creature* c = instance->GetCreature(NPC_GrandChampionMinionsGUID[1][i]) )
|
||||||
@@ -955,6 +971,7 @@ public:
|
|||||||
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
||||||
tirion->AI()->Talk(TEXT_GRATZ_SLAIN_CHAMPIONS);
|
tirion->AI()->Talk(TEXT_GRATZ_SLAIN_CHAMPIONS);
|
||||||
events.PopEvent();
|
events.PopEvent();
|
||||||
|
HandleGameObject(GO_EnterGateGUID, true);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case EVENT_RESTORE_ANNOUNCER_GOSSIP:
|
case EVENT_RESTORE_ANNOUNCER_GOSSIP:
|
||||||
@@ -972,6 +989,7 @@ public:
|
|||||||
{
|
{
|
||||||
announcer->SetFacingToObject(gate);
|
announcer->SetFacingToObject(gate);
|
||||||
HandleGameObject(GO_MainGateGUID, true, gate);
|
HandleGameObject(GO_MainGateGUID, true, gate);
|
||||||
|
HandleGameObject(GO_EnterGateGUID, false, gate);
|
||||||
}
|
}
|
||||||
if( Counter )
|
if( Counter )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -135,6 +135,7 @@ enum eGameObjects
|
|||||||
GO_MAIN_GATE = 195647,
|
GO_MAIN_GATE = 195647,
|
||||||
GO_SOUTH_PORTCULLIS = 195649,
|
GO_SOUTH_PORTCULLIS = 195649,
|
||||||
GO_EAST_PORTCULLIS = 195648,
|
GO_EAST_PORTCULLIS = 195648,
|
||||||
|
GO_NORTH_PORTCULLIS = 195650,
|
||||||
|
|
||||||
GO_CHAMPIONS_LOOT = 195709,
|
GO_CHAMPIONS_LOOT = 195709,
|
||||||
GO_CHAMPIONS_LOOT_H = 195710,
|
GO_CHAMPIONS_LOOT_H = 195710,
|
||||||
|
|||||||
Reference in New Issue
Block a user