icculus quake2 doxygen
1.0 dev
|
|
Go to the documentation of this file.
219 if (self->health < (self->max_health / 2))
222 if (
level.time < self->pain_debounce_time)
225 self->pain_debounce_time =
level.time + 3;
275 VectorMA (self->enemy->s.origin, -0.2, self->enemy->velocity,
target);
276 target[2] +=
self->enemy->viewheight;
391 if (self->health <= self->gib_health)
394 for (n= 0; n < 2; n++)
396 for (n= 0; n < 4; n++)
431 if (self->monsterinfo.aiflags &
AI_DUCKED)
436 self->monsterinfo.pausetime =
level.time + 1;
442 if (
level.time >= self->monsterinfo.pausetime)
472 self->enemy = attacker;
483 n = (rand() & 15) + 3 + 7;
491 if (
level.time >= self->monsterinfo.pausetime)
528 if (
fire_hit (
self, aim, (5 + (rand() % 5)), 50))
581 self->s.modelindex =
gi.
modelindex(
"models/monsters/infantry/tris.md2");
586 self->gib_health = -40;
597 self->monsterinfo.melee =
NULL;
void G_ProjectSource(vec3_t point, vec3_t distance, vec3_t forward, vec3_t right, vec3_t result)
#define DEFAULT_BULLET_HSPREAD
void ThrowGib(edict_t *self, char *gibname, int damage, int type)
#define VectorSubtract(a, b, c)
mframe_t infantry_frames_death3[]
void ai_charge(edict_t *self, float dist)
void infantry_die(edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
mframe_t infantry_frames_attack2[]
mmove_t infantry_move_stand
mmove_t infantry_move_pain1
void infantry_cock_gun(edict_t *self)
mframe_t infantry_frames_duck[]
void infantry_duck_up(edict_t *self)
mmove_t infantry_move_death1
mframe_t infantry_frames_pain1[]
void InfantryMachineGun(edict_t *self)
static int sound_punch_swing
void(* sound)(edict_t *ent, int channel, int soundindex, float volume, float attenuation, float timeofs)
mframe_t infantry_frames_walk[]
void infantry_duck_hold(edict_t *self)
void infantry_fire(edict_t *self)
void infantry_swing(edict_t *self)
void infantry_walk(edict_t *self)
qboolean fire_hit(edict_t *self, vec3_t aim, int damage, int kick)
static int sound_weapon_cock
void walkmonster_start(edict_t *self)
mframe_t infantry_frames_death1[]
#define MZ2_INFANTRY_MACHINEGUN_2
void AngleVectors(vec3_t angles, vec3_t forward, vec3_t right, vec3_t up)
vec3_t monster_flash_offset[]
mframe_t infantry_frames_attack1[]
#define DEFAULT_BULLET_VSPREAD
void G_FreeEdict(edict_t *e)
void infantry_dodge(edict_t *self, edict_t *attacker, float eta)
void infantry_attack(edict_t *self)
int(* soundindex)(char *name)
int(* modelindex)(char *name)
mmove_t infantry_move_walk
void infantry_smack(edict_t *self)
mmove_t infantry_move_attack1
mmove_t infantry_move_pain2
void ai_walk(edict_t *self, float dist)
vec_t VectorNormalize(vec3_t v)
void SP_monster_infantry(edict_t *self)
mframe_t infantry_frames_run[]
void infantry_duck_down(edict_t *self)
void monster_fire_bullet(edict_t *self, vec3_t start, vec3_t dir, int damage, int kick, int hspread, int vspread, int flashtype)
void infantry_pain(edict_t *self, edict_t *other, float kick, int damage)
void ai_move(edict_t *self, float dist)
mframe_t infantry_frames_pain2[]
monsterinfo_t monsterinfo
mmove_t infantry_move_fidget
void ai_run(edict_t *self, float dist)
#define MZ2_INFANTRY_MACHINEGUN_1
void VectorMA(vec3_t veca, float scale, vec3_t vecb, vec3_t vecc)
void M_FlyCheck(edict_t *self)
void infantry_dead(edict_t *self)
void ThrowHead(edict_t *self, char *gibname, int damage, int type)
void infantry_stand(edict_t *self)
void infantry_run(edict_t *self)
mmove_t infantry_move_death2
#define VectorSet(v, x, y, z)
void infantry_sight(edict_t *self, edict_t *other)
mmove_t infantry_move_death3
mmove_t infantry_move_duck
mmove_t infantry_move_run
mmove_t infantry_move_attack2
void(* linkentity)(edict_t *ent)
mframe_t infantry_frames_fidget[]
mframe_t infantry_frames_stand[]
void ai_stand(edict_t *self, float dist)
static int sound_punch_hit
mframe_t infantry_frames_death2[]
void infantry_fidget(edict_t *self)