From 7c70888675cdbacd6ed272afb67969a306cc0207 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Tue, 4 May 2010 22:20:45 +0200 Subject: [PATCH] for convenience, also set the redundant frag_ vars (fixes a bug in keyhunt) --- qcsrc/server/cl_player.qc | 1 + qcsrc/server/g_damage.qc | 1 + qcsrc/server/mutators/base.qh | 2 ++ qcsrc/server/scores.qc | 3 ++- 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/qcsrc/server/cl_player.qc b/qcsrc/server/cl_player.qc index d5064bdbd..47b7ac069 100644 --- a/qcsrc/server/cl_player.qc +++ b/qcsrc/server/cl_player.qc @@ -636,6 +636,7 @@ void PlayerDamage (entity inflictor, entity attacker, float damage, float deatht frag_attacker = attacker; frag_inflictor = inflictor; + frag_target = self; MUTATOR_CALLHOOK(PlayerDies); if(self.flagcarried) diff --git a/qcsrc/server/g_damage.qc b/qcsrc/server/g_damage.qc index 338204c0c..0c446484d 100644 --- a/qcsrc/server/g_damage.qc +++ b/qcsrc/server/g_damage.qc @@ -149,6 +149,7 @@ void GiveFrags (entity attacker, entity targ, float f) entity oldself; oldself = self; self = attacker; + frag_attacker = attacker; frag_target = targ; frag_score = f; if(MUTATOR_CALLHOOK(GiveFragsForKill)) diff --git a/qcsrc/server/mutators/base.qh b/qcsrc/server/mutators/base.qh index 9ed316ee1..73c16a9cd 100644 --- a/qcsrc/server/mutators/base.qh +++ b/qcsrc/server/mutators/base.qh @@ -51,10 +51,12 @@ MUTATOR_HOOKABLE(PlayerDies); // INPUT: entity frag_inflictor; entity frag_attacker; + entity frag_target; // same as self MUTATOR_HOOKABLE(GiveFragsForKill); // called when someone was fragged by "self", and is expected to change frag_score to adjust scoring for the kill // INPUT: + entity frag_attacker; // same as self entity frag_target; // INPUT, OUTPUT: float frag_score; diff --git a/qcsrc/server/scores.qc b/qcsrc/server/scores.qc index 97b78ca79..59480ab65 100644 --- a/qcsrc/server/scores.qc +++ b/qcsrc/server/scores.qc @@ -324,7 +324,8 @@ float PlayerScore_Add(entity player, float scorefield, float score) { if(gameover) return 0; - error("Adding score to unknown player!"); + backtrace("Adding score to unknown player!"); + return 0; } if(score) if(scores_label[scorefield] != "") -- 2.39.2