aboutsummaryrefslogtreecommitdiff
path: root/src/game/HostilRefManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/HostilRefManager.cpp')
-rw-r--r--src/game/HostilRefManager.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/game/HostilRefManager.cpp b/src/game/HostilRefManager.cpp
index 48938dff71b..1e1c70dd01c 100644
--- a/src/game/HostilRefManager.cpp
+++ b/src/game/HostilRefManager.cpp
@@ -110,6 +110,24 @@ void HostilRefManager::deleteReferences()
}
//=================================================
+// delete one reference, defined by faction
+
+void HostilRefManager::deleteReferencesForFaction(uint32 faction)
+{
+ HostilReference* ref = getFirst();
+ while(ref)
+ {
+ HostilReference* nextRef = ref->next();
+ if(ref->getSource()->getOwner()->getFactionTemplateEntry()->faction == faction)
+ {
+ ref->removeReference();
+ delete ref;
+ }
+ ref = nextRef;
+ }
+}
+
+//=================================================
// delete one reference, defined by Unit
void HostilRefManager::deleteReference(Unit *pCreature)