HUD_KillNotify_Push(s1, s2, 1, DEATH_HURTTRIGGER);
if(alsoprint)
print(sprintf(_("^1%s^1 was thrown into a world of hurt by %s\n"), s2, s1));
- } else if(type == DEATH_SBCRUSH) {
+ } else if(type == DEATH_VHCRUSH) {
HUD_KillNotify_Push(s1, s2, 1, DEATH_GENERIC);
if(alsoprint)
print (sprintf(_("^1%s^1 was crushed by %s\n"), s2, s1));
case PROJECTILE_RAPTORBOMBLET: setmodel(self, "models/vehicles/bomblet.md3"); self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = particleeffectnum(""); break;
case PROJECTILE_RAPTORCANNON: setmodel(self, "models/plasmatrail.mdl"); self.traileffect = particleeffectnum("TR_CRYLINKPLASMA"); break;
- case PROJECTILE_SPIDERROCKET: setmodel(self, "models/vehicles/rocket02.md3"); self.traileffect = particleeffectnum("TR_ROCKET"); break;
- case PROJECTILE_WAKIROCKET: setmodel(self, "models/vehicles/rocket01.md3"); self.traileffect = particleeffectnum("TR_ROCKET"); break;
+ case PROJECTILE_SPIDERROCKET: setmodel(self, "models/vehicles/rocket02.md3"); self.traileffect = particleeffectnum("spiderbot_rocket_thrust"); break;
+ case PROJECTILE_WAKIROCKET: setmodel(self, "models/vehicles/rocket01.md3"); self.traileffect = particleeffectnum("wakizashi_rocket_thrust"); break;
case PROJECTILE_WAKICANNON: setmodel(self, "models/laser.mdl"); self.traileffect = particleeffectnum(""); break;
default:
error("Received invalid CSQC projectile, can't work with this!");
float DEATH_QUIET = 10021;
float DEATH_HEADSHOT = 10022;
-float DEATH_SBMINIGUN = 10030;
-float DEATH_SBROCKET = 10031;
-float DEATH_SBCRUSH = 10032;
-float DEATH_SBBLOWUP = 10033;
-
-float DEATH_WAKIGUN = 10040;
-float DEATH_WAKIROCKET = 10041;
-float DEATH_WAKIBLOWUP = 10042;
+
+#define DEATH_VEFIRST 10030
+#define DEATH_VHCRUSH 10030
+#define DEATH_SBMINIGUN 10031
+#define DEATH_SBROCKET 10032
+#define DEATH_SBBLOWUP 10033
+#define DEATH_WAKIGUN 10034
+#define DEATH_WAKIROCKET 10035
+#define DEATH_WAKIBLOWUP 10036
+#define DEATH_RAPTOR_CANNON 10037
+#define DEATH_RAPTOR_BOMB 10038
+#define DEATH_RAPTOR_DEATH 10039
+#define DEATH_VELAST 10039
float DEATH_GENERIC = 10050;
entity rocket;
v = gettaginfo(self, gettagindex(self, tagname));
- rocket = vehicles_projectile("rocket_explode", "weapons/rocket_impact.wav", "", "weapons/rocket_fire.wav",
+ rocket = vehicles_projectile("wakizashi_rocket_explode", "weapons/rocket_impact.wav", "wakizashi_rocket_launch", "weapons/rocket_fire.wav",
v, v_forward * autocvar_g_vehicle_racer_rocket_speed,
autocvar_g_vehicle_racer_rocket_damage, autocvar_g_vehicle_racer_rocket_radius, autocvar_g_vehicle_racer_rocket_force, 3,
DEATH_WAKIROCKET, PROJECTILE_WAKIROCKET, 20);
{
if(self.cnt > time)
if(autocvar_g_vehicle_raptor_bomblet_alt)
- {
- UpdateCSQCProjectile(self);
+ {
self.nextthink = time;
traceline(self.origin, self.origin + (normalize(self.velocity) * autocvar_g_vehicle_raptor_bomblet_alt), MOVE_NORMAL, self);
- if(trace_fraction == 1.0)
- return;
-
- if(vlen(self.origin - self.owner.origin) < autocvar_g_vehicle_raptor_bomblet_radius)
+ if((trace_fraction == 1.0) || (vlen(self.origin - self.owner.origin) < autocvar_g_vehicle_raptor_bomblet_radius))
+ {
+ UpdateCSQCProjectile(self);
return;
+ }
}
entity bomblet;
float i;
sound (self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
- pointparticles(particleeffectnum("rocket_explode"), self.origin, self.velocity, 1);
+ pointparticles(particleeffectnum("raptor_bomb_spread"), self.origin, self.velocity, 1);
for(i = 0; i < autocvar_g_vehicle_raptor_bomblets; ++i)
{
bomblet = spawn();
setorigin(bomblet, self.origin);
- //bomblet.solid = SOLID_TRIGGER;
bomblet.movetype = MOVETYPE_TOSS;
bomblet.touch = raptor_bomblet_touch;
bomblet.think = raptor_bomblet_boom;
bomblet.owner = self.owner;
bomblet.realowner = self.realowner;
bomblet.velocity = normalize(normalize(self.velocity) + (randomvec() * autocvar_g_vehicle_raptor_bomblet_spread)) * vlen(self.velocity);
+
PROJECTILE_MAKETRIGGER(bomblet);
CSQCProjectile(bomblet, TRUE, PROJECTILE_RAPTORBOMBLET, TRUE);
}
crosshair_trace(self.owner);
v = gettaginfo(self.tur_head,gettagindex(self.tur_head,"tag_fire"));
- rocket = vehicles_projectile("rocket_explode", "weapons/rocket_impact.wav", "", "weapons/rocket_fire.wav",
+ rocket = vehicles_projectile("spiderbot_rocket_explode", "weapons/rocket_impact.wav", "spiderbot_rocket_launch", "weapons/rocket_fire.wav",
v, normalize(v_forward + (v_up * 0.5) + randomvec() * 0.25) * autocvar_g_vehicle_spiderbot_rocket_speed,
autocvar_g_vehicle_spiderbot_rocket_damage, autocvar_g_vehicle_spiderbot_rocket_radius, autocvar_g_vehicle_spiderbot_rocket_force, 1,
DEATH_SBROCKET, PROJECTILE_SPIDERROCKET, autocvar_g_vehicle_spiderbot_rocket_health);
rocket.think = spiderbot_rocket_guided;
rocket.nextthink = time;
rocket.cnt = time + autocvar_g_vehicle_spiderbot_rocket_lifetime;
- te_explosion (rocket.origin);
+
self.tur_head.frame += 1;
if (self.tur_head.frame == 9)
//todo: add check for velocity/angle here (so we dont cush players runing into us from behind)
- Damage(other, self, self.owner,autocvar_g_vehicle_spiderbot_crush_dmg,DEATH_SBCRUSH, '0 0 0', normalize(other.origin - self.origin) * autocvar_g_vehicle_spiderbot_crush_force);
+ Damage(other, self, self.owner,autocvar_g_vehicle_spiderbot_crush_dmg,DEATH_VHCRUSH, '0 0 0', normalize(other.origin - self.origin) * autocvar_g_vehicle_spiderbot_crush_force);
return;
}
else if(vehicles_crushable(other))
{
if(vlen(self.velocity) != 0)
- Damage(other, self, self.owner, autocvar_g_vehicles_crush_dmg, DEATH_SBCRUSH, '0 0 0', normalize(other.origin - self.origin) * autocvar_g_vehicles_crush_force);
+ Damage(other, self, self.owner, autocvar_g_vehicles_crush_dmg, DEATH_VHCRUSH, '0 0 0', normalize(other.origin - self.origin) * autocvar_g_vehicles_crush_force);
}
}
return;