#include "weapons/selection.qh"
#include "weapons/tracing.qh"
#include "weapons/weaponsystem.qh"
-#include "vehicles/vehicle.qh"
-#include "waypointsprites.qh"
#include "../common/minigames/sv_minigames.qh"
if (timeout_status == TIMEOUT_ACTIVE) //don't allow any impulses while the game is paused
return;
- if(self.vehicle)
- if(self.vehicle.deadflag == DEAD_NO)
- if(self.vehicle.vehicles_impulse)
- if(self.vehicle.vehicles_impulse(imp))
- return;
+ if(self.vehicle)
+ if(self.vehicle.deadflag == DEAD_NO)
+ {
+ if(self.vehicle.vehicles_impulse)
+ if(self.vehicle.vehicles_impulse(imp))
+ return;
+ if(vehicle_impulse(imp))
+ return;
+ }
if(CheatImpulse(imp))
{
}
else if(imp >= 10 && imp <= 20)
{
+ if(!self.vehicle)
if(self.deadflag == DEAD_NO)
{
switch(imp)
W_PreviousWeapon(1);
break;
case 20:
- if(!forbidWeaponUse()) { WEP_ACTION(self.weapon, WR_RELOAD); }
+ if(!forbidWeaponUse(self)) { WEP_ACTION(self.weapon, WR_RELOAD); }
break;
}
}
}
else if(imp >= 200 && imp <= 229)
{
+ if(!self.vehicle)
if(self.deadflag == DEAD_NO)
{
// custom order weapon cycling
}
else if(imp >= 230 && imp <= 253)
{
+ if(!self.vehicle)
if(self.deadflag == DEAD_NO)
W_SwitchWeapon (imp - 230 + WEP_FIRST);
else
switch(imp)
{
case 30:
- wp = WaypointSprite_DeployPersonal("waypoint", self.origin, RADARICON_WAYPOINT, '0 1 1');
+ wp = WaypointSprite_DeployPersonal(WP_Waypoint, self.origin, RADARICON_WAYPOINT);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "personal waypoint spawned at location\n");
break;
case 31:
WarpZone_crosshair_trace(self);
- wp = WaypointSprite_DeployPersonal("waypoint", trace_endpos, RADARICON_WAYPOINT, '0 1 1');
+ wp = WaypointSprite_DeployPersonal(WP_Waypoint, trace_endpos, RADARICON_WAYPOINT);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "personal waypoint spawned at crosshair\n");
case 32:
if(vlen(self.death_origin))
{
- wp = WaypointSprite_DeployPersonal("waypoint", self.death_origin, RADARICON_WAYPOINT, '0 1 1');
+ wp = WaypointSprite_DeployPersonal(WP_Waypoint, self.death_origin, RADARICON_WAYPOINT);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "personal waypoint spawned at death location\n");
case 33:
if(self.deadflag == DEAD_NO && teamplay)
{
- if (!MUTATOR_CALLHOOK(HelpMePing))
+ if (!MUTATOR_CALLHOOK(HelpMePing, self))
{
- wp = WaypointSprite_Attach("helpme", true, RADARICON_HELPME, '1 0.5 0');
+ wp = WaypointSprite_Attach(WP_Helpme, true, RADARICON_HELPME);
if(!wp)
WaypointSprite_HelpMePing(self.waypointsprite_attachedforcarrier);
else
}
break;
case 34:
- wp = WaypointSprite_DeployFixed("here", false, self.origin, RADARICON_HERE, '0 1 0');
+ wp = WaypointSprite_DeployFixed(WP_Here, false, self.origin, RADARICON_HERE);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "HERE spawned at location\n");
break;
case 35:
WarpZone_crosshair_trace(self);
- wp = WaypointSprite_DeployFixed("here", false, trace_endpos, RADARICON_HERE, '0 1 0');
+ wp = WaypointSprite_DeployFixed(WP_Here, false, trace_endpos, RADARICON_HERE);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "HERE spawned at crosshair\n");
case 36:
if(vlen(self.death_origin))
{
- wp = WaypointSprite_DeployFixed("here", false, self.death_origin, RADARICON_HERE, '0 1 0');
+ wp = WaypointSprite_DeployFixed(WP_Here, false, self.death_origin, RADARICON_HERE);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "HERE spawned at death location\n");
}
break;
case 37:
- wp = WaypointSprite_DeployFixed("danger", false, self.origin, RADARICON_DANGER, '1 0.5 0');
+ wp = WaypointSprite_DeployFixed(WP_Danger, false, self.origin, RADARICON_DANGER);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "DANGER spawned at location\n");
break;
case 38:
WarpZone_crosshair_trace(self);
- wp = WaypointSprite_DeployFixed("danger", false, trace_endpos, RADARICON_DANGER, '1 0.5 0');
+ wp = WaypointSprite_DeployFixed(WP_Danger, false, trace_endpos, RADARICON_DANGER);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "DANGER spawned at crosshair\n");
case 39:
if(vlen(self.death_origin))
{
- wp = WaypointSprite_DeployFixed("danger", false, self.death_origin, RADARICON_DANGER, '1 0.5 0');
+ wp = WaypointSprite_DeployFixed(WP_Danger, false, self.death_origin, RADARICON_DANGER);
if(wp)
WaypointSprite_Ping(wp);
sprint(self, "DANGER spawned at death location\n");
{
if(e.wpcost >= 10000000)
{
- print("unreachable: ", etos(e), " ", vtos(e.origin), "\n");
+ LOG_INFO("unreachable: ", etos(e), " ", vtos(e.origin), "\n");
e.colormod_z = 8;
e.effects |= EF_NODEPTHTEST | EF_BLUE;
++i;
}
}
if(i)
- print(ftos(i), " waypoints cannot be reached from here in any way (marked with blue light)\n");
+ LOG_INFO(ftos(i), " waypoints cannot be reached from here in any way (marked with blue light)\n");
navigation_markroutes_inverted(e2);
i = 0;
for(e = findchain(classname, "waypoint"); e; e = e.chain)
{
if(e.wpcost >= 10000000)
{
- print("cannot reach me: ", etos(e), " ", vtos(e.origin), "\n");
+ LOG_INFO("cannot reach me: ", etos(e), " ", vtos(e.origin), "\n");
e.colormod_x = 8;
if(!(e.effects & EF_NODEPTHTEST)) // not already reported before
++m;
}
}
if(i)
- print(ftos(i), " waypoints cannot walk to here in any way (marked with red light)\n");
+ LOG_INFO(ftos(i), " waypoints cannot walk to here in any way (marked with red light)\n");
if(m)
- print(ftos(m), " waypoints have been marked total\n");
+ LOG_INFO(ftos(m), " waypoints have been marked total\n");
i = 0;
for(e = findchain(classname, "info_player_deathmatch"); e; e = e.chain)
{
else
{
setorigin(e, org);
- print("spawn without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
+ LOG_INFO("spawn without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
e.effects |= EF_NODEPTHTEST;
setmodel(e, self.model);
e.frame = self.frame;
}
}
if(i)
- print(ftos(i), " spawnpoints have no nearest waypoint (marked by player model)\n");
+ LOG_INFO(ftos(i), " spawnpoints have no nearest waypoint (marked by player model)\n");
i = 0;
entity start;
start = findchainflags(flags, FL_ITEM);
}
else
{
- print("item without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
+ LOG_INFO("item without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
e.effects |= EF_NODEPTHTEST | EF_RED;
e.colormod_x = 8;
++i;
}
}
if(i)
- print(ftos(i), " items have no nearest waypoint and cannot be walked away from (marked with red light)\n");
+ LOG_INFO(ftos(i), " items have no nearest waypoint and cannot be walked away from (marked with red light)\n");
i = 0;
for(e = start; e; e = e.chain)
{
}
else
{
- print("item without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
+ LOG_INFO("item without waypoint: ", etos(e), " ", vtos(e.origin), "\n");
e.effects |= EF_NODEPTHTEST | EF_BLUE;
e.colormod_z = 8;
++i;
}
}
if(i)
- print(ftos(i), " items have no nearest waypoint and cannot be walked to (marked with blue light)\n");
+ LOG_INFO(ftos(i), " items have no nearest waypoint and cannot be walked to (marked with blue light)\n");
break;
}
}