icculus quake2 doxygen
1.0 dev
|
|
Go to the documentation of this file.
285 if (self->health < (self->max_health / 2))
288 if (
level.time < self->pain_debounce_time)
291 self->pain_debounce_time =
level.time + 3;
303 else if (damage <= 25)
340 if (self->health <= self->gib_health)
343 for (n= 0; n < 2; n++)
345 for (n= 0; n < 4; n++)
365 if (self->monsterinfo.aiflags &
AI_DUCKED)
376 self->monsterinfo.pausetime =
level.time + 1;
382 if (
level.time >= self->monsterinfo.pausetime)
415 self->enemy = attacker;
442 target[2] +=
self->enemy->viewheight;
569 if (self->enemy->health > 0)
570 if (
visible (
self, self->enemy) )
602 self->s.modelindex =
gi.
modelindex (
"models/monsters/gunner/tris.md2");
607 self->gib_health = -70;
618 self->monsterinfo.melee =
NULL;
void G_ProjectSource(vec3_t point, vec3_t distance, vec3_t forward, vec3_t right, vec3_t result)
void gunner_sight(edict_t *self, edict_t *other)
mmove_t gunner_move_runandshoot
mframe_t gunner_frames_stand[]
void gunner_runandshoot(edict_t *self)
#define DEFAULT_BULLET_HSPREAD
void ThrowGib(edict_t *self, char *gibname, int damage, int type)
#define VectorSubtract(a, b, c)
void ai_charge(edict_t *self, float dist)
mframe_t gunner_frames_death[]
mframe_t gunner_frames_walk[]
mframe_t gunner_frames_endfire_chain[]
#define MZ2_GUNNER_MACHINEGUN_1
#define MZ2_GUNNER_GRENADE_3
mmove_t gunner_move_endfire_chain
mframe_t gunner_frames_pain1[]
#define MZ2_GUNNER_GRENADE_4
void gunner_pain(edict_t *self, edict_t *other, float kick, int damage)
void(* sound)(edict_t *ent, int channel, int soundindex, float volume, float attenuation, float timeofs)
mframe_t gunner_frames_attack_grenade[]
mmove_t gunner_move_attack_grenade
void monster_fire_grenade(edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, int flashtype)
mmove_t gunner_move_fire_chain
mframe_t gunner_frames_attack_chain[]
void gunner_duck_down(edict_t *self)
void walkmonster_start(edict_t *self)
mmove_t gunner_move_death
mmove_t gunner_move_fidget
void GunnerGrenade(edict_t *self)
void gunner_search(edict_t *self)
void gunner_opengun(edict_t *self)
void AngleVectors(vec3_t angles, vec3_t forward, vec3_t right, vec3_t up)
void gunner_idlesound(edict_t *self)
vec3_t monster_flash_offset[]
mmove_t gunner_move_stand
mframe_t gunner_frames_run[]
#define DEFAULT_BULLET_VSPREAD
void G_FreeEdict(edict_t *e)
int(* soundindex)(char *name)
int(* modelindex)(char *name)
void gunner_duck_hold(edict_t *self)
void ai_walk(edict_t *self, float dist)
vec_t VectorNormalize(vec3_t v)
void gunner_fire_chain(edict_t *self)
mframe_t gunner_frames_duck[]
mframe_t gunner_frames_fire_chain[]
void gunner_dead(edict_t *self)
qboolean visible(edict_t *self, edict_t *other)
void monster_fire_bullet(edict_t *self, vec3_t start, vec3_t dir, int damage, int kick, int hspread, int vspread, int flashtype)
void gunner_fidget(edict_t *self)
void gunner_attack(edict_t *self)
mframe_t gunner_frames_fidget[]
void ai_move(edict_t *self, float dist)
void gunner_walk(edict_t *self)
void gunner_dodge(edict_t *self, edict_t *attacker, float eta)
monsterinfo_t monsterinfo
mframe_t gunner_frames_runandshoot[]
void GunnerFire(edict_t *self)
void ai_run(edict_t *self, float dist)
void VectorMA(vec3_t veca, float scale, vec3_t vecb, vec3_t vecc)
mmove_t gunner_move_attack_chain
#define MZ2_GUNNER_GRENADE_2
void ThrowHead(edict_t *self, char *gibname, int damage, int type)
mframe_t gunner_frames_pain3[]
mmove_t gunner_move_pain1
#define VectorSet(v, x, y, z)
void gunner_run(edict_t *self)
#define MZ2_GUNNER_GRENADE_1
void gunner_refire_chain(edict_t *self)
void gunner_stand(edict_t *self)
mframe_t gunner_frames_pain2[]
void SP_monster_gunner(edict_t *self)
void(* linkentity)(edict_t *ent)
void gunner_die(edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
void ai_stand(edict_t *self, float dist)
mmove_t gunner_move_pain2
void gunner_duck_up(edict_t *self)
mmove_t gunner_move_pain3