aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarbenium <carbenium@outlook.com>2020-06-21 00:52:28 +0200
committerPeter Keresztes Schmidt <carbenium@outlook.com>2020-06-24 15:09:57 +0200
commit7b3d691c0b17b1f164bb0d8e0d4a0d5e146d4d4e (patch)
tree835b34ff5c4a96fe7153fdd2eac07b7e586b2b55 /src
parent22c12e7123d76ea584ea8542be3feea57069e997 (diff)
Entities/WorldObject: Add IsInWorldPvpZone to keep API similar to master
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Object/Object.cpp11
-rw-r--r--src/server/game/Entities/Object/Object.h1
-rw-r--r--src/server/game/Entities/Player/Player.cpp4
3 files changed, 14 insertions, 2 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp
index 3e078ebbbb5..44fdec8c563 100644
--- a/src/server/game/Entities/Object/Object.cpp
+++ b/src/server/game/Entities/Object/Object.cpp
@@ -1089,6 +1089,17 @@ void WorldObject::RemoveFromWorld()
Object::RemoveFromWorld();
}
+bool WorldObject::IsInWorldPvpZone() const
+{
+ switch (GetZoneId())
+ {
+ case AREA_WINTERGRASP: // Wintergrasp
+ return true;
+ default:
+ return false;
+ }
+}
+
InstanceScript* WorldObject::GetInstanceScript() const
{
Map* map = GetMap();
diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h
index d800c4283f9..7b735e5b2c7 100644
--- a/src/server/game/Entities/Object/Object.h
+++ b/src/server/game/Entities/Object/Object.h
@@ -317,6 +317,7 @@ class TC_GAME_API WorldObject : public Object, public WorldLocation
uint32 GetZoneId() const { return m_zoneId; }
uint32 GetAreaId() const { return m_areaId; }
void GetZoneAndAreaId(uint32& zoneid, uint32& areaid) const { zoneid = m_zoneId, areaid = m_areaId; }
+ bool IsInWorldPvpZone() const;
bool IsOutdoors() const { return m_outdoors; }
ZLiquidStatus GetLiquidStatus() const { return m_liquidStatus; }
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index d862339c13b..9bb1bf8976b 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -8327,8 +8327,8 @@ bool Player::CheckAmmoCompatibility(ItemTemplate const* ammo_proto) const
Called by remove insignia spell effect */
void Player::RemovedInsignia(Player* looterPlr)
{
- // If player is not in battleground and not in wintergrasp
- if (!GetBattlegroundId() && GetZoneId() != AREA_WINTERGRASP)
+ // If player is not in battleground and not in worldpvpzone
+ if (!GetBattlegroundId() && !IsInWorldPvpZone())
return;
// If not released spirit, do it !