fix(Core/Instances): Ensure team is acquired before spawning creatures (#21221)

This commit is contained in:
Andrew
2025-01-21 20:13:22 -03:00
committed by GitHub
parent 0733c30471
commit d851f97f40
3 changed files with 14 additions and 20 deletions

View File

@@ -3020,6 +3020,15 @@ bool InstanceMap::AddPlayerToMap(Player* player)
m_resetAfterUnload = false;
m_unloadWhenEmpty = false;
if (instance_data && instance_data->IsTwoFactionInstance()
&& instance_data->GetTeamIdInInstance() == TEAM_NEUTRAL)
{
instance_data->SetTeamIdInInstance(player->GetTeamId());
if (Group* group = player->GetGroup())
if (Player* leader = ObjectAccessor::FindConnectedPlayer(group->GetLeaderGUID()))
instance_data->SetTeamIdInInstance(leader->GetTeamId());
}
// this will acquire the same mutex so it cannot be in the previous block
Map::AddPlayerToMap(player);