From d9d011727b7744920638a9f20fdb3147e015e7dc Mon Sep 17 00:00:00 2001 From: Andrew <47818697+Nyeriah@users.noreply.github.com> Date: Tue, 26 May 2026 21:42:43 -0300 Subject: [PATCH] fix(Scripts/Wintergrasp): Use TeamId for vehicle teleporter (#25988) Co-authored-by: Claude Opus 4.7 (1M context) --- src/server/scripts/Northrend/zone_wintergrasp.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/server/scripts/Northrend/zone_wintergrasp.cpp b/src/server/scripts/Northrend/zone_wintergrasp.cpp index 68c2917bd0..dd7b2a568d 100644 --- a/src/server/scripts/Northrend/zone_wintergrasp.cpp +++ b/src/server/scripts/Northrend/zone_wintergrasp.cpp @@ -28,7 +28,6 @@ #include "ObjectMgr.h" #include "Player.h" #include "PoolMgr.h" -#include "RaceMgr.h" #include "ScriptedCreature.h" #include "ScriptedGossip.h" #include "SpellScript.h" @@ -860,8 +859,12 @@ public: bool IsFriendly(Unit* passenger) { - return ((me->GetUInt32Value(GAMEOBJECT_FACTION) == WintergraspFaction[TEAM_HORDE] && passenger->getRaceMask() & sRaceMgr->GetHordeRaceMask()) || - (me->GetUInt32Value(GAMEOBJECT_FACTION) == WintergraspFaction[TEAM_ALLIANCE] && passenger->getRaceMask() & sRaceMgr->GetAllianceRaceMask())); + Player* player = passenger->ToPlayer(); + if (!player) + return false; + + TeamId goTeam = me->GetUInt32Value(GAMEOBJECT_FACTION) == WintergraspFaction[TEAM_HORDE] ? TEAM_HORDE : TEAM_ALLIANCE; + return player->GetTeamId() == goTeam; } Creature* IsValidVehicle(Creature* cVeh)