icculus quake2 doxygen
1.0 dev
|
|
Go to the documentation of this file.
221 if (self->enemy && self->enemy->client)
290 if (self->health < (self->max_health / 2))
291 self->s.skinnum |= 1;
296 if (
level.time < self->pain_debounce_time)
312 self->pain_debounce_time =
level.time + 3;
320 else if (damage <= 60)
350 end[2] +=
self->enemy->viewheight;
380 vec[2] +=
self->enemy->viewheight;
403 vec[2] +=
self->enemy->viewheight;
413 dir[1] =
self->s.angles[1] - 8 * (
self->s.frame -
FRAME_attak411);
415 dir[1] =
self->s.angles[1] + 8 * (
self->s.frame -
FRAME_attak419);
470 if (
visible (
self, self->enemy))
471 if (self->enemy->health > 0)
640 if (self->enemy->health > 0)
641 if (
visible(
self, self->enemy) )
661 if (self->enemy->health < 0)
680 else if (
range <= 250)
694 self->pain_debounce_time =
level.time + 5.0;
758 if (self->health <= self->gib_health)
761 for (n= 0; n < 1 ; n++)
763 for (n= 0; n < 4; n++)
800 self->s.modelindex =
gi.
modelindex (
"models/monsters/tank/tris.md2");
823 if (strcmp(self->classname,
"monster_tank_commander") == 0)
826 self->gib_health = -225;
831 self->gib_health = -200;
841 self->monsterinfo.dodge =
NULL;
843 self->monsterinfo.melee =
NULL;
854 if (strcmp(self->classname,
"monster_tank_commander") == 0)
void tank_windup(edict_t *self)
void G_ProjectSource(vec3_t point, vec3_t distance, vec3_t forward, vec3_t right, vec3_t result)
void tank_die(edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
mmove_t tank_move_reattack_blast
mframe_t tank_frames_stop_run[]
void tank_idle(edict_t *self)
#define DEFAULT_BULLET_HSPREAD
void ThrowGib(edict_t *self, char *gibname, int damage, int type)
#define VectorSubtract(a, b, c)
void tank_stand(edict_t *self)
#define MZ2_TANK_ROCKET_3
void ai_charge(edict_t *self, float dist)
#define MZ2_TANK_BLASTER_2
mframe_t tank_frames_attack_pre_rocket[]
mmove_t tank_move_stop_walk
mmove_t tank_move_stop_run
void tank_poststrike(edict_t *self)
void tank_thud(edict_t *self)
mmove_t tank_move_start_walk
void(* sound)(edict_t *ent, int channel, int soundindex, float volume, float attenuation, float timeofs)
#define MZ2_TANK_ROCKET_1
mframe_t tank_frames_death1[]
mframe_t tank_frames_run[]
void walkmonster_start(edict_t *self)
mmove_t tank_move_attack_blast
mframe_t tank_frames_start_walk[]
void AngleVectors(vec3_t angles, vec3_t forward, vec3_t right, vec3_t up)
#define MZ2_TANK_MACHINEGUN_1
vec3_t monster_flash_offset[]
void vectoangles(vec3_t vec, vec3_t angles)
#define DEFAULT_BULLET_VSPREAD
void G_FreeEdict(edict_t *e)
void TankRocket(edict_t *self)
mframe_t tank_frames_attack_blast[]
int(* soundindex)(char *name)
vec_t VectorLength(vec3_t v)
mframe_t tank_frames_reattack_blast[]
int(* modelindex)(char *name)
void TankMachineGun(edict_t *self)
void tank_doattack_rocket(edict_t *self)
mframe_t tank_frames_stop_walk[]
void tank_footstep(edict_t *self)
void SP_monster_tank(edict_t *self)
mframe_t tank_frames_attack_post_rocket[]
void ai_walk(edict_t *self, float dist)
vec_t VectorNormalize(vec3_t v)
mframe_t tank_frames_attack_post_blast[]
void tank_walk(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)
mframe_t tank_frames_stand[]
void monster_fire_rocket(edict_t *self, vec3_t start, vec3_t dir, int damage, int speed, int flashtype)
mmove_t tank_move_attack_post_rocket
#define MZ2_TANK_ROCKET_2
void tank_run(edict_t *self)
void ai_move(edict_t *self, float dist)
mframe_t tank_frames_attack_fire_rocket[]
void monster_fire_blaster(edict_t *self, vec3_t start, vec3_t dir, int damage, int speed, int flashtype, int effect)
#define MZ2_TANK_BLASTER_3
mmove_t tank_move_attack_pre_rocket
mframe_t tank_frames_start_run[]
qboolean visible(edict_t *self, edict_t *other)
mmove_t tank_move_attack_chain
mmove_t tank_move_attack_strike
void ai_run(edict_t *self, float dist)
mframe_t tank_frames_pain1[]
mframe_t tank_frames_pain3[]
mframe_t tank_frames_attack_strike[]
void tank_pain(edict_t *self, edict_t *other, float kick, int damage)
void tank_attack(edict_t *self)
void ThrowHead(edict_t *self, char *gibname, int damage, int type)
void tank_sight(edict_t *self, edict_t *other)
void tank_refire_rocket(edict_t *self)
void TankStrike(edict_t *self)
void tank_dead(edict_t *self)
mframe_t tank_frames_pain2[]
#define VectorSet(v, x, y, z)
mmove_t tank_move_attack_post_blast
mmove_t tank_move_start_run
void tank_reattack_blaster(edict_t *self)
void(* linkentity)(edict_t *ent)
mframe_t tank_frames_attack_chain[]
mframe_t tank_frames_walk[]
void TankBlaster(edict_t *self)
#define MZ2_TANK_BLASTER_1
void ai_stand(edict_t *self, float dist)
mmove_t tank_move_attack_fire_rocket