Quake II RTX doxygen
1.0 dev
|
|
Go to the documentation of this file.
95 gi.sound(
self, CHAN_WEAPON,
sound_idle, 1, ATTN_IDLE, 0);
167 fire_hit(
self, aim, (15 + (rand() % 6)), 400);
194 fire_hit(
self, aim, (5 + (rand() % 6)), 400);
242 if ((rand() % 2) == 0)
306 if (self->health < (self->max_health / 2))
309 if (
level.
time < self->pain_debounce_time)
312 self->pain_debounce_time =
level.
time + 3;
313 gi.sound(
self, CHAN_VOICE,
sound_pain, 1, ATTN_NORM, 0);
315 if (
skill->value == 3)
318 if ((damage < 20) || (
random() < 0.5))
327 VectorSet(self->mins, -16, -16, -24);
328 VectorSet(self->maxs, 16, 16, -8);
330 self->svflags |= SVF_DEADMONSTER;
368 void berserk_die(edict_t *
self, edict_t *inflictor, edict_t *attacker,
int damage, vec3_t point)
372 if (self->health <= self->gib_health) {
373 gi.sound(
self, CHAN_VOICE,
gi.soundindex(
"misc/udeath.wav"), 1, ATTN_NORM, 0);
374 for (n = 0; n < 2; n++)
376 for (n = 0; n < 4; n++)
386 gi.sound(
self, CHAN_VOICE,
sound_die, 1, ATTN_NORM, 0);
414 self->s.modelindex =
gi.modelindex(
"models/monsters/berserk/tris.md2");
415 VectorSet(self->mins, -16, -16, -24);
416 VectorSet(self->maxs, 16, 16, 32);
418 self->solid = SOLID_BBOX;
421 self->gib_health = -60;
430 self->monsterinfo.dodge = NULL;
431 self->monsterinfo.attack = NULL;
mframe_t berserk_frames_stand[]
void ThrowGib(edict_t *self, char *gibname, int damage, int type)
mmove_t berserk_move_run1
void ai_charge(edict_t *self, float dist)
mframe_t berserk_frames_stand_fidget[]
void berserk_strike(edict_t *self)
mframe_t berserk_frames_pain1[]
mframe_t berserk_frames_run1[]
mframe_t berserk_frames_attack_spike[]
mframe_t berserk_frames_attack_strike[]
qboolean fire_hit(edict_t *self, vec3_t aim, int damage, int kick)
void berserk_attack_spike(edict_t *self)
void walkmonster_start(edict_t *self)
mmove_t berserk_move_stand
mmove_t berserk_move_attack_spike
mmove_t berserk_move_death2
void berserk_stand(edict_t *self)
mframe_t berserk_frames_death2[]
void G_FreeEdict(edict_t *e)
mmove_t berserk_move_walk
mmove_t berserk_move_pain1
void berserk_melee(edict_t *self)
mframe_t berserk_frames_walk[]
void berserk_fidget(edict_t *self)
void berserk_attack_club(edict_t *self)
mframe_t berserk_frames_death1[]
void berserk_walk(edict_t *self)
void ai_walk(edict_t *self, float dist)
void berserk_dead(edict_t *self)
void berserk_search(edict_t *self)
mmove_t berserk_move_attack_club
void ai_move(edict_t *self, float dist)
mframe_t berserk_frames_pain2[]
mmove_t berserk_move_death1
void ai_run(edict_t *self, float dist)
void SP_monster_berserk(edict_t *self)
mmove_t berserk_move_attack_strike
mmove_t berserk_move_pain2
void ThrowHead(edict_t *self, char *gibname, int damage, int type)
void berserk_swing(edict_t *self)
mmove_t berserk_move_stand_fidget
void berserk_sight(edict_t *self, edict_t *other)
void berserk_pain(edict_t *self, edict_t *other, float kick, int damage)
mframe_t berserk_frames_attack_club[]
void berserk_die(edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
void ai_stand(edict_t *self, float dist)
void berserk_run(edict_t *self)