r2809 - in branches/nexuiz-2.0/data: . qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Wed Sep 12 16:08:41 EDT 2007


Author: div0
Date: 2007-09-12 16:08:41 -0400 (Wed, 12 Sep 2007)
New Revision: 2809

Modified:
   branches/nexuiz-2.0/data/default.cfg
   branches/nexuiz-2.0/data/qcsrc/server/g_damage.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_world.qc
   branches/nexuiz-2.0/data/qcsrc/server/gamecommand.qc
   branches/nexuiz-2.0/data/qcsrc/server/havocbot.qc
Log:
fix division by zero, add damage value to RadiusDamage(), fix chmap after the game ended


Modified: branches/nexuiz-2.0/data/default.cfg
===================================================================
--- branches/nexuiz-2.0/data/default.cfg	2007-09-12 20:06:54 UTC (rev 2808)
+++ branches/nexuiz-2.0/data/default.cfg	2007-09-12 20:08:41 UTC (rev 2809)
@@ -34,7 +34,7 @@
 alias bsp "ls maps/*.bsp"
 alias mapcfg "ls maps/*.mapcfg"
 alias chmap "exec $exit_cfg ; exec game_reset.cfg; exec maps/$1.mapcfg"
-alias gotomap "nextmap $1; timelimit -1"
+alias gotomap "sv_cmd gotomap \"$1\""
 alias reset "exec game_reset.cfg"
 
 alias dem "ls demos/*.dem"

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_damage.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_damage.qc	2007-09-12 20:06:54 UTC (rev 2808)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_damage.qc	2007-09-12 20:08:41 UTC (rev 2809)
@@ -558,7 +558,8 @@
 	}
 }
 
-void RadiusDamage (entity inflictor, entity attacker, float coredamage, float edgedamage, float rad, entity ignore, float forceintensity, float deathtype)
+float RadiusDamage (entity inflictor, entity attacker, float coredamage, float edgedamage, float rad, entity ignore, float forceintensity, float deathtype)
+// Returns total damage applies to creatures
 {
 	entity	targ;
 	float	finaldmg;
@@ -569,9 +570,11 @@
 	vector	m2;
 	vector	nearest;
 	vector	diff;
-	vector center;
+	vector  center;
+	float   total_damage_to_creatures;
 
 	blastorigin = (inflictor.origin + (inflictor.mins + inflictor.maxs) * 0.5);
+	total_damage_to_creatures = 0;
 
 	targ = findradius (blastorigin, rad);
 	while (targ)
@@ -623,6 +626,8 @@
 							if (trace_fraction == 1 || trace_ent == targ
 							    || cvar("g_throughfloor"))
 							{
+								if(targ.iscreature)
+									total_damage_to_creatures += finaldmg;
 								Damage (targ, inflictor, attacker, finaldmg, deathtype, nearest, force);
 								break;
 							}
@@ -635,6 +640,8 @@
 			}
 		targ = targ.chain;
 	}
+
+	return total_damage_to_creatures;
 }
 
 /*

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_world.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_world.qc	2007-09-12 20:06:54 UTC (rev 2808)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_world.qc	2007-09-12 20:08:41 UTC (rev 2809)
@@ -1917,6 +1917,22 @@
 	MapVote_Tick();
 };
 
+string GotoMap(string m)
+{
+	if(!TryFile(strcat("maps/", m, ".mapcfg")))
+		return "The map you chose is not available on this server.";
+	cvar_set("nextmap", m);
+	cvar_set("timelimit", "-1");
+	if(mapvote_initialized || alreadychangedlevel)
+	{
+		if(DoNextMapOverride())
+			return "Map switch initiated.";
+		else
+			return "Hm... no. For some reason I like THIS map more.";
+	}
+	else
+		return "Map switch will happen after scoreboard.";
+}
 
 
 void EndFrame()

Modified: branches/nexuiz-2.0/data/qcsrc/server/gamecommand.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/gamecommand.qc	2007-09-12 20:06:54 UTC (rev 2808)
+++ branches/nexuiz-2.0/data/qcsrc/server/gamecommand.qc	2007-09-12 20:08:41 UTC (rev 2809)
@@ -1,3 +1,5 @@
+string GotoMap(string m);
+
 void GameCommand(string command)
 {
 	float argc;
@@ -38,6 +40,12 @@
 		return;
 	}
 
+	if(argv(0) == "gotomap") if(argc == 2)
+	{
+		print(GotoMap(argv(1)), "\n");
+		return;
+	}
+
 	if(argv(0) == "adminmsg") if(argc == 3)
 	{
 		entity client;

Modified: branches/nexuiz-2.0/data/qcsrc/server/havocbot.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/havocbot.qc	2007-09-12 20:06:54 UTC (rev 2808)
+++ branches/nexuiz-2.0/data/qcsrc/server/havocbot.qc	2007-09-12 20:08:41 UTC (rev 2809)
@@ -322,8 +322,7 @@
 			* bound(0,(cvar("g_balance_electro_primary_speed")/distance*maxdelaytime),1)*1.0;
 	if (client_hasweapon(self, WEP_CRYLINK, TRUE, FALSE))
 		crylink = (cvar("g_balance_crylink_primary_damage")/cvar("g_balance_crylink_primary_refire")*1.0)
-			* bound(0,(cvar("g_balance_crylink_primary_speed")/distance*maxdelaytime),1)*1.0
-			* bound(0,1/cvar("g_balance_crylink_primary_spread")/distance*spreadpenalty,1);
+			* bound(0,(cvar("g_balance_crylink_primary_speed")/distance*maxdelaytime),1)*1.0;
 	if (client_hasweapon(self, WEP_UZI, TRUE, FALSE))
 		uzi = (cvar("g_balance_uzi_sustained_damage")/cvar("g_balance_uzi_sustained_refire")*1.0)
 			* bound(0,1/cvar("g_balance_uzi_sustained_spread")/distance*spreadpenalty,1)*0.5;




More information about the nexuiz-commits mailing list