Hund, Items, Handler, Kamera und MTest aufgeräumt

This commit is contained in:
Yamagi Burmeister 2009-10-08 15:14:40 +00:00
parent 4b73b52ebb
commit 3492d05a57
5 changed files with 247 additions and 331 deletions

View file

@ -110,15 +110,8 @@ char *getSkinName(char *s, char *buffer)
void zCam_SetLocalCopy(struct edict_s *player, char *s) void zCam_SetLocalCopy(struct edict_s *player, char *s)
{ {
// char model[255];
if(player->client->zCameraLocalEntity) if(player->client->zCameraLocalEntity)
{ {
/*
player->client->zCameraLocalEntity->s.modelindex = gi.modelindex(getSkinModel(s, model));
player->client->zCameraLocalEntity->s.renderfx |= RF_CUSTOMSKIN;
player->client->zCameraLocalEntity->s.skinnum = gi.imageindex(getSkinName(s, model));
*/
player->client->zCameraLocalEntity->s.modelindex = gi.modelindex("models/objects/gibs/head2/tris.md2"); player->client->zCameraLocalEntity->s.modelindex = gi.modelindex("models/objects/gibs/head2/tris.md2");
} }
} }

View file

@ -10,8 +10,6 @@ handler handler
#include "z_handler.h" #include "z_handler.h"
void handler_standWhatNext (edict_t *self); void handler_standWhatNext (edict_t *self);
void handler_standSitWhatNext (edict_t *self); void handler_standSitWhatNext (edict_t *self);
void handler_stand (edict_t *self); void handler_stand (edict_t *self);
@ -23,10 +21,6 @@ void hound_sight (edict_t *self, edict_t *other);
void infantry_sight (edict_t *self, edict_t *other); void infantry_sight (edict_t *self, edict_t *other);
static int sound_attack; static int sound_attack;
static int sound_scratch;
static int sound_sitdown;
static int sound_standup;
void handler_sight (edict_t *self, edict_t *other) void handler_sight (edict_t *self, edict_t *other)
{ {
@ -38,175 +32,160 @@ void handler_sight (edict_t *self, edict_t *other)
// STAND // STAND
// //
mframe_t handler_frames_stand1 [] = mframe_t handler_frames_stand1 [] =
{ {
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL {ai_stand, 0, NULL}
}; };
mmove_t handler_stand1 = {FRAME_stand1start, FRAME_stand1end, handler_frames_stand1, handler_standSitWhatNext}; mmove_t handler_stand1 = {FRAME_stand1start, FRAME_stand1end, handler_frames_stand1, handler_standSitWhatNext};
void handler_scratch(edict_t *self) void handler_scratch(edict_t *self)
{ {
// gi.sound (self, CHAN_VOICE, sound_scratch, 1, ATTN_NORM, 0);
} }
mframe_t handler_frames_stand2 [] = mframe_t handler_frames_stand2 [] =
{ {
ai_stand, 0, handler_scratch, {ai_stand, 0, handler_scratch},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
}; };
mmove_t handler_stand2 = {FRAME_stand2start, FRAME_stand2end, handler_frames_stand2, handler_standSitWhatNext}; mmove_t handler_stand2 = {FRAME_stand2start, FRAME_stand2end, handler_frames_stand2, handler_standSitWhatNext};
mframe_t handler_frames_stand3 [] = mframe_t handler_frames_stand3 [] =
{ {
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
}; };
mmove_t handler_stand3 = {FRAME_stand3start, FRAME_stand3end, handler_frames_stand3, handler_standWhatNext}; mmove_t handler_stand3 = {FRAME_stand3start, FRAME_stand3end, handler_frames_stand3, handler_standWhatNext};
void handler_standup(edict_t *self) void handler_standup(edict_t *self)
{ {
// gi.sound (self, CHAN_VOICE, sound_standup, 1, ATTN_NORM, 0);
} }
mframe_t handler_frames_stand4 [] = mframe_t handler_frames_stand4 [] =
{ {
ai_stand, 0, handler_standup, {ai_stand, 0, handler_standup},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
}; };
mmove_t handler_stand4 = {FRAME_stand4start, FRAME_stand4end, handler_frames_stand4, handler_standWhatNext}; mmove_t handler_stand4 = {FRAME_stand4start, FRAME_stand4end, handler_frames_stand4, handler_standWhatNext};
void handler_sitdown(edict_t *self) void handler_sitdown(edict_t *self)
{ {
// gi.sound (self, CHAN_VOICE, sound_sitdown, 1, ATTN_NORM, 0);
} }
mframe_t handler_frames_stand5 [] = mframe_t handler_frames_stand5 [] =
{ {
ai_stand, 0, handler_sitdown, {ai_stand, 0, handler_sitdown},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
ai_stand, 0, NULL, {ai_stand, 0, NULL},
}; };
mmove_t handler_stand5 = {FRAME_stand5start, FRAME_stand5end, handler_frames_stand5, handler_standSitWhatNext}; mmove_t handler_stand5 = {FRAME_stand5start, FRAME_stand5end, handler_frames_stand5, handler_standSitWhatNext};
@ -255,8 +234,6 @@ void handler_standSitWhatNext (edict_t *self)
void handler_stand (edict_t *self) void handler_stand (edict_t *self)
{ {
float r = random();
if(self->monsterinfo.currentmove != &handler_stand1 && if(self->monsterinfo.currentmove != &handler_stand1 &&
self->monsterinfo.currentmove != &handler_stand2 && self->monsterinfo.currentmove != &handler_stand2 &&
self->monsterinfo.currentmove != &handler_stand3 && self->monsterinfo.currentmove != &handler_stand3 &&
@ -269,18 +246,14 @@ void handler_stand (edict_t *self)
// //
// PAIN // PAIN
// //
void handler_pain (edict_t *self, edict_t *other, float kick, int damage) void handler_pain (edict_t *self, edict_t *other, float kick, int damage)
{ {
// if (self->health < (self->max_health / 2))
// self->s.skinnum = 1;
} }
// //
// ATTACK and MELEE // ATTACK and MELEE
// //
@ -330,26 +303,26 @@ void StartCount(edict_t *self)
mframe_t handler_frames_attack1 [] = mframe_t handler_frames_attack1 [] =
{ {
ai_run, 0, StartCount, {ai_run, 0, StartCount},
ai_run, 0, CheckForEnemy, {ai_run, 0, CheckForEnemy},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, CheckIdleLoop, {ai_charge, 0, CheckIdleLoop},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, handler_createHound, {ai_charge, 0, handler_createHound},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 0, NULL, {ai_charge, 0, NULL},
}; };
mmove_t handler_move_attack1 = {FRAME_attack1Start, FRAME_attack1End, handler_frames_attack1, handler_ConvertToInfantry}; mmove_t handler_move_attack1 = {FRAME_attack1Start, FRAME_attack1End, handler_frames_attack1, handler_ConvertToInfantry};
@ -363,10 +336,6 @@ void handler_attack (edict_t *self)
self->powerarmor_time = 0; self->powerarmor_time = 0;
} }
/* /*
=== ===
Death Stuff Starts Death Stuff Starts
@ -401,15 +370,9 @@ void SP_monster_hound_precache();
void SP_monster_handler_precache(void) void SP_monster_handler_precache(void)
{ {
//SP_monster_infantry_precache();
SP_monster_hound_precache(); SP_monster_hound_precache();
sound_attack = gi.soundindex("monsters/guard/hhattack.wav"); sound_attack = gi.soundindex("monsters/guard/hhattack.wav");
/*
sound_scratch = gi.soundindex("monsters/guard/hhscratch.wav");
sound_sitdown = gi.soundindex("monsters/guard/hhsitdown.wav");
sound_standup = gi.soundindex("monsters/guard/hhstandup.wav");
*/
} }
@ -472,3 +435,4 @@ Z = -24 to 8
walkmonster_start (self); walkmonster_start (self);
} }

View file

@ -43,26 +43,26 @@ void hound_sight (edict_t *self, edict_t *other)
mframe_t hound_frames_stand1 [] = mframe_t hound_frames_stand1 [] =
{ {
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, // 10 {ai_schoolStand, 0, NULL}, // 10
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL {ai_schoolStand, 0, NULL}
}; };
mmove_t hound_stand1 = {FRAME_stand1start, FRAME_stand1end, hound_frames_stand1, hound_stand}; mmove_t hound_stand1 = {FRAME_stand1start, FRAME_stand1end, hound_frames_stand1, hound_stand};
@ -70,29 +70,29 @@ mmove_t hound_stand1 = {FRAME_stand1start, FRAME_stand1end, hound_frames_stand1,
mframe_t hound_frames_stand2 [] = mframe_t hound_frames_stand2 [] =
{ {
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, // 10 {ai_schoolStand, 0, NULL}, // 10
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, {ai_schoolStand, 0, NULL},
ai_schoolStand, 0, NULL, // 20 {ai_schoolStand, 0, NULL}, // 20
ai_schoolStand, 0, NULL {ai_schoolStand, 0, NULL}
}; };
mmove_t hound_stand2 = {FRAME_stand2start, FRAME_stand2end, hound_frames_stand2, hound_stand}; mmove_t hound_stand2 = {FRAME_stand2start, FRAME_stand2end, hound_frames_stand2, hound_stand};
@ -117,13 +117,13 @@ void hound_stand (edict_t *self)
mframe_t hound_frames_run [] = mframe_t hound_frames_run [] =
{ {
ai_schoolRun, 60, NULL, {ai_schoolRun, 60, NULL},
ai_schoolRun, 60, NULL, {ai_schoolRun, 60, NULL},
ai_schoolRun, 40, NULL, {ai_schoolRun, 40, NULL},
ai_schoolRun, 30, NULL, {ai_schoolRun, 30, NULL},
ai_schoolRun, 30, NULL, {ai_schoolRun, 30, NULL},
ai_schoolRun, 30, NULL, {ai_schoolRun, 30, NULL},
ai_schoolRun, 40, NULL {ai_schoolRun, 40, NULL}
}; };
mmove_t hound_move_run = {FRAME_runStart, FRAME_runEnd, hound_frames_run, NULL}; mmove_t hound_move_run = {FRAME_runStart, FRAME_runEnd, hound_frames_run, NULL};
@ -143,14 +143,14 @@ void hound_run (edict_t *self)
mframe_t hound_frames_walk [] = mframe_t hound_frames_walk [] =
{ {
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL, {ai_schoolWalk, 7, NULL},
ai_schoolWalk, 7, NULL {ai_schoolWalk, 7, NULL}
}; };
mmove_t hound_move_walk = {FRAME_walkStart, FRAME_walkEnd, hound_frames_walk, hound_walk}; mmove_t hound_move_walk = {FRAME_walkStart, FRAME_walkEnd, hound_frames_walk, hound_walk};
@ -168,23 +168,23 @@ void hound_walk (edict_t *self)
mframe_t hound_frames_pain1 [] = mframe_t hound_frames_pain1 [] =
{ {
ai_move, 6, NULL, {ai_move, 6, NULL},
ai_move, 16, NULL, {ai_move, 16, NULL},
ai_move, -6, NULL, {ai_move, -6, NULL},
ai_move, -7, NULL, {ai_move, -7, NULL},
}; };
mmove_t hound_move_pain1 = {FRAME_pain1Start, FRAME_pain1End, hound_frames_pain1, hound_run}; mmove_t hound_move_pain1 = {FRAME_pain1Start, FRAME_pain1End, hound_frames_pain1, hound_run};
mframe_t hound_frames_pain2 [] = mframe_t hound_frames_pain2 [] =
{ {
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 6, NULL, {ai_move, 6, NULL},
ai_move, 16, NULL, {ai_move, 16, NULL},
ai_move, -6, NULL, {ai_move, -6, NULL},
ai_move, -7, NULL, {ai_move, -7, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
}; };
mmove_t hound_move_pain2 = {FRAME_pain2Start, FRAME_pain2End, hound_frames_pain2, hound_run}; mmove_t hound_move_pain2 = {FRAME_pain2Start, FRAME_pain2End, hound_frames_pain2, hound_run};
@ -241,29 +241,29 @@ void hound_bite2 (edict_t *self)
mframe_t hound_frames_attack1 [] = mframe_t hound_frames_attack1 [] =
{ {
ai_schoolCharge, 0, hound_launch, {ai_schoolCharge, 0, hound_launch},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, hound_bite, {ai_schoolCharge, 0, hound_bite},
ai_schoolCharge, 0, hound_bite2 {ai_schoolCharge, 0, hound_bite2}
}; };
mmove_t hound_move_attack1 = {FRAME_attack1Start, FRAME_attack1End, hound_frames_attack1, hound_run}; mmove_t hound_move_attack1 = {FRAME_attack1Start, FRAME_attack1End, hound_frames_attack1, hound_run};
mframe_t hound_frames_attack2 [] = mframe_t hound_frames_attack2 [] =
{ {
ai_schoolCharge, 0, hound_launch, {ai_schoolCharge, 0, hound_launch},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
ai_schoolCharge, 0, hound_bite, {ai_schoolCharge, 0, hound_bite},
ai_schoolCharge, 0, hound_bite2, {ai_schoolCharge, 0, hound_bite2},
ai_schoolCharge, 0, hound_bite2, {ai_schoolCharge, 0, hound_bite2},
ai_schoolCharge, 0, hound_bite2, {ai_schoolCharge, 0, hound_bite2},
ai_schoolCharge, 0, NULL, {ai_schoolCharge, 0, NULL},
}; };
mmove_t hound_move_attack2 = {FRAME_attack2Start, FRAME_attack2End, hound_frames_attack2, hound_run}; mmove_t hound_move_attack2 = {FRAME_attack2Start, FRAME_attack2End, hound_frames_attack2, hound_run};
@ -280,13 +280,9 @@ void hound_attack (edict_t *self)
} }
} }
// //
// ATTACK // ATTACK
// //
void hound_jump_touch (edict_t *self, edict_t *other, cplane_t *plane, csurface_t *surf) void hound_jump_touch (edict_t *self, edict_t *other, cplane_t *plane, csurface_t *surf)
{ {
if (self->health <= 0) if (self->health <= 0)
@ -376,13 +372,13 @@ void hound_check_landing2 (edict_t *self)
mframe_t hound_frames_handlerjump [] = mframe_t hound_frames_handlerjump [] =
{ {
ai_charge, 0, NULL, {ai_charge, 0, NULL},
ai_charge, 20, hound_jump_takeoff, {ai_charge, 20, hound_jump_takeoff},
ai_move, 40, NULL, {ai_move, 40, NULL},
ai_move, 30, hound_check_landing2, {ai_move, 30, hound_check_landing2},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
}; };
@ -392,13 +388,13 @@ mmove_t hound_move_handlerjump = {FRAME_hattack1Sep, FRAME_hattack1End, hound_fr
mframe_t hound_frames_jump [] = mframe_t hound_frames_jump [] =
{ {
ai_charge, 20, NULL, {ai_charge, 20, NULL},
ai_charge, 20, hound_jump_takeoff, {ai_charge, 20, hound_jump_takeoff},
ai_move, 40, NULL, {ai_move, 40, NULL},
ai_move, 30, hound_check_landing, {ai_move, 30, hound_check_landing},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL {ai_move, 0, NULL}
}; };
mmove_t hound_move_jump = {FRAME_leapStart, FRAME_leapEnd, hound_frames_jump, hound_run}; mmove_t hound_move_jump = {FRAME_leapStart, FRAME_leapEnd, hound_frames_jump, hound_run};
@ -407,15 +403,12 @@ void hound_jump (edict_t *self)
self->monsterinfo.currentmove = &hound_move_jump; self->monsterinfo.currentmove = &hound_move_jump;
} }
/* /*
=== ===
attack check routines attack check routines
=== ===
*/ */
qboolean hound_check_melee (edict_t *self) qboolean hound_check_melee (edict_t *self)
{ {
if (range (self, self->enemy) == RANGE_MELEE) if (range (self, self->enemy) == RANGE_MELEE)
@ -466,7 +459,6 @@ qboolean hound_checkattack (edict_t *self)
if (hound_check_jump(self)) if (hound_check_jump(self))
{ {
self->monsterinfo.attack_state = AS_MISSILE; self->monsterinfo.attack_state = AS_MISSILE;
// FIXME play a jump sound here
return true; return true;
} }
@ -492,18 +484,18 @@ void hound_dead (edict_t *self)
mframe_t hound_frames_death [] = mframe_t hound_frames_death [] =
{ {
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL, {ai_move, 0, NULL},
ai_move, 0, NULL {ai_move, 0, NULL}
}; };
mmove_t hound_move_death = {FRAME_die1Start, FRAME_die1End, hound_frames_death, hound_dead}; mmove_t hound_move_death = {FRAME_die1Start, FRAME_die1End, hound_frames_death, hound_dead};
@ -511,7 +503,7 @@ void hound_die (edict_t *self, edict_t *inflictor, edict_t *attacker, int damage
{ {
int n; int n;
// check for gib // check for gib
if (self->health <= self->gib_health) if (self->health <= self->gib_health)
{ {
gi.sound (self, CHAN_VOICE, gi.soundindex ("misc/udeath.wav"), 1, ATTN_NORM, 0); gi.sound (self, CHAN_VOICE, gi.soundindex ("misc/udeath.wav"), 1, ATTN_NORM, 0);
@ -527,7 +519,7 @@ void hound_die (edict_t *self, edict_t *inflictor, edict_t *attacker, int damage
if (self->deadflag == DEAD_DEAD) if (self->deadflag == DEAD_DEAD)
return; return;
// regular death // regular death
gi.sound (self, CHAN_VOICE, sound_die, 1, ATTN_NORM, 0); gi.sound (self, CHAN_VOICE, sound_die, 1, ATTN_NORM, 0);
self->deadflag = DEAD_DEAD; self->deadflag = DEAD_DEAD;
self->takedamage = DAMAGE_YES; self->takedamage = DAMAGE_YES;
@ -620,8 +612,6 @@ void hound_createHound(edict_t *self, float healthPercent)
hound = G_Spawn(); hound = G_Spawn();
//*hound = *self;
hound->s.modelindex = gi.modelindex ("models/monsters/guard/hound/tris.md2"); hound->s.modelindex = gi.modelindex ("models/monsters/guard/hound/tris.md2");
VectorSet (hound->mins, -16, -16, -24); VectorSet (hound->mins, -16, -16, -24);
VectorSet (hound->maxs, 16, 16, 24); VectorSet (hound->maxs, 16, 16, 24);
@ -663,12 +653,10 @@ void hound_createHound(edict_t *self, float healthPercent)
hound->think = monster_think; hound->think = monster_think;
hound->nextthink = level.time + FRAMETIME; hound->nextthink = level.time + FRAMETIME;
//monster_start(hound);
gi.linkentity (hound); gi.linkentity (hound);
// move the fucker now!!! // move the fucker now!!!
ai_move (hound, 20); ai_move (hound, 20);
} }

View file

@ -229,11 +229,6 @@ void Use_Visor (edict_t *ent, gitem_t *item)
} }
/* /*
================= =================
EMP Nuke EMP Nuke
@ -287,7 +282,6 @@ void Weapon_EMPNuke (edict_t *ent)
void empnukeFinish(edict_t *ent) void empnukeFinish(edict_t *ent)
{ {
// gi.sound(ent, CHAN_VOICE, gi.soundindex("items/empnuke/empdie.wav"), 1, ATTN_NORM, 0);
G_FreeEdict(ent); G_FreeEdict(ent);
} }
@ -304,8 +298,6 @@ void empBlastAnim(edict_t *ent)
ent->s.frame = 0; ent->s.frame = 0;
ent->s.skinnum = 0; ent->s.skinnum = 0;
// ent->s.sound = gi.soundindex ("items/empnuke/empactive.wav");
ent->think = empnukeFinish; ent->think = empnukeFinish;
ent->nextthink = level.time + 30; ent->nextthink = level.time + 30;
} }
@ -320,7 +312,6 @@ void fire_empnuke(edict_t *ent, vec3_t center, int radius)
{ {
edict_t *empnuke; edict_t *empnuke;
// gi.sound(ent, CHAN_VOICE, gi.soundindex("items/empnuke/empfire.wav"), 1, ATTN_NORM, 0);
gi.sound(ent, CHAN_VOICE, gi.soundindex("items/empnuke/emp_trg.wav"), 1, ATTN_NORM, 0); gi.sound(ent, CHAN_VOICE, gi.soundindex("items/empnuke/emp_trg.wav"), 1, ATTN_NORM, 0);
empnuke = G_Spawn(); empnuke = G_Spawn();
@ -328,21 +319,13 @@ void fire_empnuke(edict_t *ent, vec3_t center, int radius)
empnuke->dmg = radius; empnuke->dmg = radius;
VectorCopy(center, empnuke->s.origin); VectorCopy(center, empnuke->s.origin);
empnuke->classname = "EMPNukeCenter"; empnuke->classname = "EMPNukeCenter";
/// empnuke->svflags |= SVF_NOCLIENT;
empnuke->movetype = MOVETYPE_NONE; empnuke->movetype = MOVETYPE_NONE;
empnuke->s.modelindex = gi.modelindex("models/objects/b_explode/tris.md2"); empnuke->s.modelindex = gi.modelindex("models/objects/b_explode/tris.md2");
empnuke->s.skinnum = 0; empnuke->s.skinnum = 0;
// empnuke->s.renderfx = RF_TRANSLUCENT | RF_FULLBRIGHT;
// empnuke->s.renderfx = RF_TRANSLUCENT;
empnuke->think = empBlastAnim; empnuke->think = empBlastAnim;
empnuke->nextthink = level.time + FRAMETIME; empnuke->nextthink = level.time + FRAMETIME;
// empnuke->think = G_FreeEdict;
// empnuke->nextthink = level.time + 30;
gi.linkentity (empnuke); gi.linkentity (empnuke);
// gi.sound(empnuke, CHAN_VOICE, gi.soundindex("items/empnuke/emp_exp.wav"), 1, ATTN_NORM, 0);
} }
@ -367,16 +350,12 @@ qboolean EMPNukeCheck(edict_t *ent, vec3_t pos)
return false; return false;
} }
/* /*
================= =================
Plasma Shield Plasma Shield
================= =================
*/ */
void PlasmaShield_die (edict_t *self) void PlasmaShield_die (edict_t *self)
{ {
if (deathmatch->value) if (deathmatch->value)
@ -419,7 +398,6 @@ void Use_PlasmaShield (edict_t *ent, gitem_t *item)
} }
PlasmaShield = G_Spawn(); PlasmaShield = G_Spawn();
// PlasmaShield->owner = ent;
PlasmaShield->classname = "PlasmaShield"; PlasmaShield->classname = "PlasmaShield";
PlasmaShield->movetype = MOVETYPE_PUSH; PlasmaShield->movetype = MOVETYPE_PUSH;
PlasmaShield->solid = SOLID_BBOX; PlasmaShield->solid = SOLID_BBOX;
@ -432,7 +410,6 @@ void Use_PlasmaShield (edict_t *ent, gitem_t *item)
VectorMA (ent->s.origin, 50, forward, PlasmaShield->s.origin); VectorMA (ent->s.origin, 50, forward, PlasmaShield->s.origin);
// fuge the bbox
VectorScale(forward, 10, frontbottomleft); VectorScale(forward, 10, frontbottomleft);
VectorMA(frontbottomleft, -30, right, frontbottomleft); VectorMA(frontbottomleft, -30, right, frontbottomleft);
VectorMA(frontbottomleft, -30, up, frontbottomleft); VectorMA(frontbottomleft, -30, up, frontbottomleft);
@ -509,10 +486,6 @@ void SP_misc_crate_small(edict_t *self)
setupCrate(self); setupCrate(self);
} }
/*******************************************
func_barrier
*/
qboolean thruBarrier(edict_t *targ, edict_t *inflictor) qboolean thruBarrier(edict_t *targ, edict_t *inflictor)
{ {
trace_t tr; trace_t tr;
@ -534,9 +507,9 @@ qboolean thruBarrier(edict_t *targ, edict_t *inflictor)
e = tr.ent; e = tr.ent;
} }
return true;
} }
void barrier_think(edict_t *self) void barrier_think(edict_t *self)
{ {
if (self->timeout > level.time) if (self->timeout > level.time)
@ -592,9 +565,6 @@ void SP_func_barrier(edict_t *self)
gi.linkentity(self); gi.linkentity(self);
} }
/*********************************************
misc_seat
*/
void SP_misc_seat(edict_t *self) void SP_misc_seat(edict_t *self)
{ {
self->s.modelindex = gi.modelindex("models/objects/seat/tris.md2"); self->s.modelindex = gi.modelindex("models/objects/seat/tris.md2");
@ -604,3 +574,4 @@ void SP_misc_seat(edict_t *self)
// make this pushable // make this pushable
setupCrate(self); setupCrate(self);
} }

View file

@ -557,5 +557,5 @@ void Drop_TestItem (edict_t *ent, gitem_t *item)
ValidateSelectedItem (ent); ValidateSelectedItem (ent);
} }
#endif #endif