From d8d55645eecc10ca26cca26147ad9b275559f860 Mon Sep 17 00:00:00 2001 From: Andrew <47818697+Nyeriah@users.noreply.github.com> Date: Sun, 16 Nov 2025 08:29:14 -0300 Subject: [PATCH] fix(Scripts/Oculus): Implement crossfaction support for drakes (#23704) --- .../Northrend/Nexus/Oculus/instance_oculus.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp index 25a253a64..fcf59ae2e 100644 --- a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp +++ b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp @@ -63,23 +63,27 @@ public: memset(&m_auiEncounter, 0, sizeof(m_auiEncounter)); } - void OnCreatureCreate(Creature* pCreature) override + void OnCreatureCreate(Creature* creature) override { - switch (pCreature->GetEntry()) + switch (creature->GetEntry()) { case NPC_DRAKOS: - uiDrakosGUID = pCreature->GetGUID(); + uiDrakosGUID = creature->GetGUID(); break; case NPC_VAROS: - uiVarosGUID = pCreature->GetGUID(); + uiVarosGUID = creature->GetGUID(); break; case NPC_UROM: - uiUromGUID = pCreature->GetGUID(); + uiUromGUID = creature->GetGUID(); break; case NPC_EREGOS: - uiEregosGUID = pCreature->GetGUID(); + uiEregosGUID = creature->GetGUID(); break; } + + if (sWorld->getBoolConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_GROUP)) + if (creature->EntryEquals(NPC_AMBER_DRAKE, NPC_EMERALD_DRAKE, NPC_RUBY_DRAKE)) + creature->SetFaction(FACTION_FRIENDLY); // Friendly faction to allow interaction from both factions } void OnGameObjectCreate(GameObject* pGo) override