r2694 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Fri May 25 07:38:57 EDT 2007


Author: div0
Date: 2007-05-25 07:38:57 -0400 (Fri, 25 May 2007)
New Revision: 2694

Modified:
   trunk/data/qcsrc/server/keyhunt.qc
Log:
log those who destroy a key



Modified: trunk/data/qcsrc/server/keyhunt.qc
===================================================================
--- trunk/data/qcsrc/server/keyhunt.qc	2007-05-24 18:17:06 UTC (rev 2693)
+++ trunk/data/qcsrc/server/keyhunt.qc	2007-05-25 11:38:57 UTC (rev 2694)
@@ -42,6 +42,7 @@
 .entity kh_next, kh_prev; // linked list
 .float kh_droptime;
 .float kh_dropperteam;
+.entity kh_previous_owner;
 
 string kh_sound_capture = "sound/ctf/capture.wav";
 string kh_sound_destroy = "sound/ctf/return.wav";
@@ -115,7 +116,7 @@
 		return;
 	if(frags_player)
 		player.frags = player.frags + floor(0.5 + frags_player);
-	if(frags_owner)
+	if(key && key.owner && frags_owner)
 		key.owner.frags = key.owner.frags + floor(0.5 + frags_owner);
 	if(!cvar("sv_eventlog"))
 		return;
@@ -221,6 +222,7 @@
 	key.damageforcescale = cvar("g_balance_keyhunt_damageforcescale");
 	// let key.team stay
 	key.modelindex = kh_key_dropped;
+	key.kh_previous_owner = key.owner;
 }
 
 void kh_Key_AssignTo(entity key, entity player)
@@ -589,6 +591,9 @@
 
 	if(attacker)
 	{
+		if(lostkey.kh_previous_owner)
+			kh_Scores_Event(lostkey.kh_previous_owner, world, "pushed", 0, -cvar("g_balance_keyhunt_score_push"));
+			// don't actually GIVE him the -nn points, just log
 		kh_Scores_Event(attacker, world, "push", cvar("g_balance_keyhunt_score_push"), 0);
 		centerprint(attacker, "Your push is the best!\n\n\n");
 		bprint("The ", ColoredTeamName(teem), "^7 could not take care of the ", lostkey.netname, "^7 when ", attacker.netname, "^7 came\n");
@@ -606,6 +611,10 @@
 			if(key.owner && key.team != teem)
 				++keys;
 
+		if(lostkey.kh_previous_owner)
+			kh_Scores_Event(lostkey.kh_previous_owner, world, "destroyed", 0, -cvar("g_balance_keyhunt_score_destroyed"));
+			// don't actually GIVE him the -nn points, just log
+
 		DistributeEvenly_Init(cvar("g_balance_keyhunt_score_destroyed"), keys * of + players);
 
 		FOR_EACH_KH_KEY(key)




More information about the nexuiz-commits mailing list