From 861cca308322ccdd216e566548d17b744aaac106 Mon Sep 17 00:00:00 2001 From: Mario Date: Fri, 8 Feb 2013 12:30:39 +1100 Subject: [PATCH] Fix monsters still trying to follow dead teammates --- qcsrc/server/mutators/gamemode_rts.qc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/qcsrc/server/mutators/gamemode_rts.qc b/qcsrc/server/mutators/gamemode_rts.qc index 1779091de..4607abff6 100644 --- a/qcsrc/server/mutators/gamemode_rts.qc +++ b/qcsrc/server/mutators/gamemode_rts.qc @@ -179,7 +179,6 @@ MUTATOR_HOOKFUNCTION(rts_PlayerThink) { WaypointSprite_Spawn("Following", 1, 0, e, '0 0 1' * sheight, world, self.team, self, sprite, FALSE, RADARICON_DANGER, ((teamplay) ? TeamColor(self.team) : '1 0 0')); head.goalentity = e; - head.enemy = e.enemy; } else // its not a monster or an enemy, so revert to waypoint { @@ -286,6 +285,8 @@ MUTATOR_HOOKFUNCTION(rts_MonsterThink) MUTATOR_HOOKFUNCTION(rts_MonsterDies) { + entity e; + if(IsDifferentTeam(frag_attacker, frag_target) && frag_attacker.team) TeamScore_AddToTeam(frag_attacker.team, ST_SCORE, 1); @@ -302,6 +303,11 @@ MUTATOR_HOOKFUNCTION(rts_MonsterDies) if(frag_attacker.monster_score == 25) Monster_LevelUp(frag_attacker); } + + for(e = world; (e = findentity(e, goalentity, self)); ) + { + e.goalentity = world; // fix teammates if they still see us as a valid target + } self.effects &~= EF_SELECTABLE; self.selected = FALSE; -- 2.39.2