diff options
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 | ||||
| -rw-r--r-- | src/server/game/Entities/Player/Player.h | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index a64db2be2f6..ea3cfdb1b8b 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -22259,7 +22259,7 @@ uint32 Player::GetBGTeam() const return m_bgData.bgTeam ? m_bgData.bgTeam : GetTeam(); } -void Player::LeaveBattleground(bool teleportToEntryPoint /*= true*/) +void Player::LeaveBattleground(bool teleportToEntryPoint /*= true*/, bool withoutDeserterDebuff /*= false*/) { Battleground* bg = GetBattleground(); if (!bg) @@ -22270,7 +22270,7 @@ void Player::LeaveBattleground(bool teleportToEntryPoint /*= true*/) // call after remove to be sure that player resurrected for correct cast if (bg->isBattleground() && sWorld->getBoolConfig(CONFIG_BATTLEGROUND_CAST_DESERTER)) { - if (!GetSession()->HasPermission(rbac::RBAC_PERM_NO_BATTLEGROUND_DESERTER_DEBUFF)) + if (!withoutDeserterDebuff && !GetSession()->HasPermission(rbac::RBAC_PERM_NO_BATTLEGROUND_DESERTER_DEBUFF)) { if (bg->GetStatus() == STATUS_IN_PROGRESS || bg->GetStatus() == STATUS_WAIT_JOIN) { diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index 2b5b12c6413..b36b6440e65 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -1936,7 +1936,7 @@ class TC_GAME_API Player : public Unit, public GridObject<Player> void SetBGTeam(uint32 team); uint32 GetBGTeam() const; - void LeaveBattleground(bool teleportToEntryPoint = true); + void LeaveBattleground(bool teleportToEntryPoint = true, bool withoutDeserterDebuff = false); bool CanJoinToBattleground(Battleground const* bg) const; bool CanReportAfkDueToLimit(); void ReportedAfkBy(Player* reporter); |
