aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Combat/CombatManager.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-03-04 00:05:35 +0100
committerShauren <shauren.trinity@gmail.com>2024-03-04 00:05:35 +0100
commit1369b8708458fb5020b6ab7a9608123459d4eb26 (patch)
tree005298c2db7f1b5067f8e1746f74541cf1b9c9d8 /src/server/game/Combat/CombatManager.h
parent74ec1d3cfb3172a7bb3c2d2317396ff82245418e (diff)
Core/Creatures: Implemented CREATURE_STATIC_FLAG_2_IGNORE_SANCTUARY (ignore SPELL_EFFECT_SANCTUARY, used by Vanish)
Diffstat (limited to 'src/server/game/Combat/CombatManager.h')
-rw-r--r--src/server/game/Combat/CombatManager.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/game/Combat/CombatManager.h b/src/server/game/Combat/CombatManager.h
index 1dfd926fa0f..d44aff87e1c 100644
--- a/src/server/game/Combat/CombatManager.h
+++ b/src/server/game/Combat/CombatManager.h
@@ -120,12 +120,15 @@ class TC_GAME_API CombatManager
bool IsInCombatWith(Unit const* who) const;
void InheritCombatStatesFrom(Unit const* who);
void EndCombatBeyondRange(float range, bool includingPvP = false);
+
+ using UnitFilter = bool(Unit const* otherUnit);
+
// flags any pvp refs for suppression on owner's side - these refs will not generate combat until refreshed
- void SuppressPvPCombat();
- void EndAllPvECombat();
+ void SuppressPvPCombat(UnitFilter* unitFilter = nullptr);
+ void EndAllPvECombat(UnitFilter* unitFilter = nullptr);
void RevalidateCombat();
- void EndAllPvPCombat();
- void EndAllCombat() { EndAllPvECombat(); EndAllPvPCombat(); }
+ void EndAllPvPCombat(UnitFilter* unitFilter = nullptr);
+ void EndAllCombat(UnitFilter* unitFilter = nullptr) { EndAllPvECombat(unitFilter); EndAllPvPCombat(unitFilter); }
CombatManager(CombatManager const&) = delete;
CombatManager& operator=(CombatManager const&) = delete;