aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-07-19 23:18:19 +0200
committerShauren <shauren.trinity@gmail.com>2022-07-19 23:18:19 +0200
commit073a036d84365dae60a70064eb67e68f0447bd72 (patch)
treeb9c74a852d8135c26e3d952e26ade11155c65f29 /src/server/game/Entities
parent83b32667940844a257059965711284c9ab38ce44 (diff)
Core/Battlefields: Refactor Battlefield creation to be linked to host map creation instead of having globally accessible objects
Diffstat (limited to 'src/server/game/Entities')
-rw-r--r--src/server/game/Entities/Object/Object.cpp2
-rw-r--r--src/server/game/Entities/Player/Player.cpp4
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp2
3 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp
index 71a85d3d3f3..d4c8b8aec40 100644
--- a/src/server/game/Entities/Object/Object.cpp
+++ b/src/server/game/Entities/Object/Object.cpp
@@ -1901,7 +1901,7 @@ ZoneScript* WorldObject::FindZoneScript() const
return reinterpret_cast<ZoneScript*>(instanceMap->GetInstanceScript());
else if (!map->IsBattlegroundOrArena())
{
- if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(GetZoneId()))
+ if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(map, GetZoneId()))
return bf;
else
return sOutdoorPvPMgr->GetOutdoorPvPToZoneId(map, GetZoneId());
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 2f176ea74a4..6d428abf54e 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -4769,7 +4769,7 @@ void Player::RepopAtGraveyard()
ClosestGrave = bg->GetClosestGraveyard(this);
else
{
- if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(GetZoneId()))
+ if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(GetMap(), GetZoneId()))
ClosestGrave = bf->GetClosestGraveyard(this);
else
ClosestGrave = sObjectMgr->GetClosestGraveyard(*this, GetTeam(), this);
@@ -26736,7 +26736,7 @@ bool Player::IsAreaThatActivatesPvpTalents(uint32 areaID) const
if (area->Flags[0] & AREA_FLAG_ARENA)
return true;
- if (sBattlefieldMgr->GetBattlefieldToZoneId(area->ID))
+ if (sBattlefieldMgr->IsWorldPvpArea(area->ID))
return true;
area = sAreaTableStore.LookupEntry(area->ParentAreaID);
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index bf816e5409c..d42751dcbf0 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -10813,7 +10813,7 @@ void Unit::SetMeleeAnimKitId(uint16 animKitId)
if (OutdoorPvP* pvp = player->GetOutdoorPvP())
pvp->HandleKill(player, victim);
- if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(player->GetZoneId()))
+ if (Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(player->GetMap(), player->GetZoneId()))
bf->HandleKill(player, victim);
}