30#define NO_FINAL_PITCH -1000
32class Gib :
public Mover
39 float blood_splat_size;
42 float next_bleed_time;
52 str bloodtrailname =
"",
53 str bloodspurtname =
"",
54 str bloodsplatname =
"",
55 float blood_splat_size = 8,
56 float pitch = NO_FINAL_PITCH);
57 void SetVelocity(
float health);
58 void SprayBlood(
Vector start);
59 void Throw(
Event *ev);
60 void Splat(
Event *ev);
62 void Damage(
Event *ev);
63 void ClipGibVelocity(
void);
64 void Archive(
Archiver& arc)
override;
67inline void Gib::Archive(
Archiver& arc)
71 arc.ArchiveBoolean(&sprayed);
72 arc.ArchiveFloat(&scale);
73 arc.ArchiveObjectPointer((
Class **)&blood);
74 arc.ArchiveString(&blood_splat_name);
75 arc.ArchiveFloat(&blood_splat_size);
76 arc.ArchiveString(&blood_spurt_name);
77 arc.ArchiveFloat(&final_pitch);
78 arc.ArchiveBoolean(&fadesplat);
79 arc.ArchiveFloat(&next_bleed_time);
82void CreateGibs(
Entity *ent,
float damage = -50,
float scale = 1.0f,
int num = 1,
const char *modelname = NULL);
84extern Event EV_ThrowGib;
Definition listener.h:246