r4613 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Fri Oct 3 11:14:47 EDT 2008
Author: div0
Date: 2008-10-03 11:14:47 -0400 (Fri, 03 Oct 2008)
New Revision: 4613
Modified:
trunk/data/qcsrc/server/cl_impulse.qc
Log:
fix crash when creating WP fails
Modified: trunk/data/qcsrc/server/cl_impulse.qc
===================================================================
--- trunk/data/qcsrc/server/cl_impulse.qc 2008-10-03 15:06:50 UTC (rev 4612)
+++ trunk/data/qcsrc/server/cl_impulse.qc 2008-10-03 15:14:47 UTC (rev 4613)
@@ -189,16 +189,22 @@
{
case 30:
wp = WaypointSprite_DeployPersonal("waypoint", self.origin);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
+ WaypointSprite_Ping(wp);
+ }
self.personal_v_angle = self.v_angle;
self.personal_velocity = self.velocity;
sprint(self, "personal waypoint spawned at location\n");
break;
case 31:
wp = WaypointSprite_DeployPersonal("waypoint", self.cursor_trace_endpos);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
+ WaypointSprite_Ping(wp);
+ }
self.personal_v_angle = self.v_angle;
self.personal_velocity = '0 0 0';
sprint(self, "personal waypoint spawned at crosshair\n");
@@ -207,8 +213,11 @@
if(vlen(self.death_origin))
{
wp = WaypointSprite_DeployPersonal("waypoint", self.death_origin);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_WAYPOINT, '0 1 1');
+ WaypointSprite_Ping(wp);
+ }
self.personal_v_angle = self.v_angle;
self.personal_velocity = '0 0 0';
sprint(self, "personal waypoint spawned at death location\n");
@@ -217,51 +226,72 @@
case 33:
if(self.deadflag == DEAD_NO && teams_matter)
{
- wp = WaypointSprite_Attach("helpme", TRUE);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_HELPME, '1 1 0');
- WaypointSprite_Ping(wp);
+ WaypointSprite_Attach("helpme", TRUE);
+ if(waypointsprite_attachedforcarrier) // this can also be the FLAG CARRIER sprite
+ {
+ WaypointSprite_UpdateTeamRadar(waypointsprite_attachedforcarrier, RADARICON_HELPME, '1 1 0');
+ WaypointSprite_Ping(waypointsprite_attachedforcarrier);
+ }
sprint(self, "HELP ME attached\n");
}
break;
case 34:
wp = WaypointSprite_DeployFixed("here", FALSE, self.origin);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "HERE spawned at location\n");
break;
case 35:
wp = WaypointSprite_DeployFixed("here", FALSE, self.cursor_trace_endpos);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "HERE spawned at crosshair\n");
break;
case 36:
if(vlen(self.death_origin))
{
wp = WaypointSprite_DeployFixed("here", FALSE, self.death_origin);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "HERE spawned at death location\n");
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_HERE, '0 1 0');
- WaypointSprite_Ping(wp);
}
break;
case 37:
wp = WaypointSprite_DeployFixed("danger", FALSE, self.origin);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "DANGER spawned at location\n");
break;
case 38:
wp = WaypointSprite_DeployFixed("danger", FALSE, self.cursor_trace_endpos);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "DANGER spawned at crosshair\n");
break;
case 39:
if(vlen(self.death_origin))
{
wp = WaypointSprite_DeployFixed("danger", FALSE, self.death_origin);
- WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
- WaypointSprite_Ping(wp);
+ if(wp)
+ {
+ WaypointSprite_UpdateTeamRadar(wp, RADARICON_DANGER, '1 0.5 0');
+ WaypointSprite_Ping(wp);
+ }
sprint(self, "DANGER spawned at death location\n");
}
break;
More information about the nexuiz-commits
mailing list