fix(Scripts/Karazhan): Implement the side entrance door area trigger … (#17556)

fix(Scripts/Karazhan): Implement the side entrance door area trigger handling
This commit is contained in:
Andrew
2023-10-21 22:52:07 -03:00
committed by GitHub
parent 945d7c6afe
commit 4e41a02be2
3 changed files with 35 additions and 7 deletions

View File

@@ -562,8 +562,32 @@ public:
};
};
class at_karazhan_side_entrance : public OnlyOnceAreaTriggerScript
{
public:
at_karazhan_side_entrance() : OnlyOnceAreaTriggerScript("at_karazhan_side_entrance") { }
bool _OnTrigger(Player* player, AreaTrigger const* /*at*/) override
{
if (InstanceScript* instance = player->GetInstanceScript())
{
if (instance->GetBossState(DATA_OPERA_PERFORMANCE) == DONE)
{
if (GameObject* door = instance->GetGameObject(DATA_GO_SIDE_ENTRANCE_DOOR))
{
instance->HandleGameObject(ObjectGuid::Empty, true, door);
door->RemoveGameObjectFlag(GO_FLAG_LOCKED);
}
}
}
return false;
}
};
void AddSC_karazhan()
{
new npc_barnes();
new npc_image_of_medivh();
new at_karazhan_side_entrance();
}