1 void GibDamage (entity inflictor, entity attacker, float damage, float deathtype, vector hitloc, vector force)
3 te_blood (self.origin + '0 0 1', '0 0 30', damage);
8 sound (self, CHAN_IMPACT, "misc/gib_splat01.wav", 1, ATTN_NORM);
10 sound (self, CHAN_IMPACT, "misc/gib_splat02.wav", 1, ATTN_NORM);
12 sound (self, CHAN_IMPACT, "misc/gib_splat03.wav", 1, ATTN_NORM);
14 sound (self, CHAN_IMPACT, "misc/gib_splat04.wav", 1, ATTN_NORM);
16 self.health = self.health - damage;
17 if (self.health <= -300)
19 self.event_damage = nullfunction;
20 SUB_VanishOrRemove (self);
24 // changes by LordHavoc on 03/30/04
25 // TossGib now takes a gib entity so it can be used for tossing heads
26 // gib.velocity now uses randomvec() instead of a bunch of manual random calls
27 // merged Gib() into PlayerGib()
28 void TossGib (entity gib, string mdlname, vector org, vector v)
35 gib.classname = "gib";
36 gib.movetype = MOVETYPE_BOUNCE;
37 gib.solid = SOLID_CORPSE;
39 setmodel (gib, mdlname);
40 setsize (gib, '-8 -8 -8', '8 8 8');
44 gib.takedamage = DAMAGE_YES;
45 gib.damageforcescale = 3.5;
46 gib.event_damage = GibDamage;
48 gib.velocity = v + randomvec() * 450;
49 gib.avelocity = randomvec() * 300;
51 SUB_SetFade (gib, time + 12 + random () * 4);