summaryrefslogtreecommitdiff
path: root/src/baseq2/m_tank.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/baseq2/m_tank.c')
-rw-r--r--src/baseq2/m_tank.c326
1 files changed, 142 insertions, 184 deletions
diff --git a/src/baseq2/m_tank.c b/src/baseq2/m_tank.c
index 6f43d60..86847d8 100644
--- a/src/baseq2/m_tank.c
+++ b/src/baseq2/m_tank.c
@@ -8,7 +8,7 @@ of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
@@ -29,9 +29,9 @@ TANK
#include "m_tank.h"
-void tank_refire_rocket (edict_t *self);
-void tank_doattack_rocket (edict_t *self);
-void tank_reattack_blaster (edict_t *self);
+void tank_refire_rocket(edict_t *self);
+void tank_doattack_rocket(edict_t *self);
+void tank_reattack_blaster(edict_t *self);
static int sound_thud;
static int sound_pain;
@@ -46,30 +46,30 @@ static int sound_strike;
// misc
//
-void tank_sight (edict_t *self, edict_t *other)
+void tank_sight(edict_t *self, edict_t *other)
{
- gi.sound (self, CHAN_VOICE, sound_sight, 1, ATTN_NORM, 0);
+ gi.sound(self, CHAN_VOICE, sound_sight, 1, ATTN_NORM, 0);
}
-void tank_footstep (edict_t *self)
+void tank_footstep(edict_t *self)
{
- gi.sound (self, CHAN_BODY, sound_step, 1, ATTN_NORM, 0);
+ gi.sound(self, CHAN_BODY, sound_step, 1, ATTN_NORM, 0);
}
-void tank_thud (edict_t *self)
+void tank_thud(edict_t *self)
{
- gi.sound (self, CHAN_BODY, sound_thud, 1, ATTN_NORM, 0);
+ gi.sound(self, CHAN_BODY, sound_thud, 1, ATTN_NORM, 0);
}
-void tank_windup (edict_t *self)
+void tank_windup(edict_t *self)
{
- gi.sound (self, CHAN_WEAPON, sound_windup, 1, ATTN_NORM, 0);
+ gi.sound(self, CHAN_WEAPON, sound_windup, 1, ATTN_NORM, 0);
}
-void tank_idle (edict_t *self)
+void tank_idle(edict_t *self)
{
- gi.sound (self, CHAN_VOICE, sound_idle, 1, ATTN_IDLE, 0);
+ gi.sound(self, CHAN_VOICE, sound_idle, 1, ATTN_IDLE, 0);
}
@@ -77,8 +77,7 @@ void tank_idle (edict_t *self)
// stand
//
-mframe_t tank_frames_stand []=
-{
+mframe_t tank_frames_stand [] = {
{ ai_stand, 0, NULL },
{ ai_stand, 0, NULL },
{ ai_stand, 0, NULL },
@@ -111,8 +110,8 @@ mframe_t tank_frames_stand []=
{ ai_stand, 0, NULL }
};
mmove_t tank_move_stand = {FRAME_stand01, FRAME_stand30, tank_frames_stand, NULL};
-
-void tank_stand (edict_t *self)
+
+void tank_stand(edict_t *self)
{
self->monsterinfo.currentmove = &tank_move_stand;
}
@@ -122,10 +121,9 @@ void tank_stand (edict_t *self)
// walk
//
-void tank_walk (edict_t *self);
+void tank_walk(edict_t *self);
-mframe_t tank_frames_start_walk [] =
-{
+mframe_t tank_frames_start_walk [] = {
{ ai_walk, 0, NULL },
{ ai_walk, 6, NULL },
{ ai_walk, 6, NULL },
@@ -133,8 +131,7 @@ mframe_t tank_frames_start_walk [] =
};
mmove_t tank_move_start_walk = {FRAME_walk01, FRAME_walk04, tank_frames_start_walk, tank_walk};
-mframe_t tank_frames_walk [] =
-{
+mframe_t tank_frames_walk [] = {
{ ai_walk, 4, NULL },
{ ai_walk, 5, NULL },
{ ai_walk, 3, NULL },
@@ -154,8 +151,7 @@ mframe_t tank_frames_walk [] =
};
mmove_t tank_move_walk = {FRAME_walk05, FRAME_walk20, tank_frames_walk, NULL};
-mframe_t tank_frames_stop_walk [] =
-{
+mframe_t tank_frames_stop_walk [] = {
{ ai_walk, 3, NULL },
{ ai_walk, 3, NULL },
{ ai_walk, 2, NULL },
@@ -164,9 +160,9 @@ mframe_t tank_frames_stop_walk [] =
};
mmove_t tank_move_stop_walk = {FRAME_walk21, FRAME_walk25, tank_frames_stop_walk, tank_stand};
-void tank_walk (edict_t *self)
+void tank_walk(edict_t *self)
{
- self->monsterinfo.currentmove = &tank_move_walk;
+ self->monsterinfo.currentmove = &tank_move_walk;
}
@@ -174,10 +170,9 @@ void tank_walk (edict_t *self)
// run
//
-void tank_run (edict_t *self);
+void tank_run(edict_t *self);
-mframe_t tank_frames_start_run [] =
-{
+mframe_t tank_frames_start_run [] = {
{ ai_run, 0, NULL },
{ ai_run, 6, NULL },
{ ai_run, 6, NULL },
@@ -185,8 +180,7 @@ mframe_t tank_frames_start_run [] =
};
mmove_t tank_move_start_run = {FRAME_walk01, FRAME_walk04, tank_frames_start_run, tank_run};
-mframe_t tank_frames_run [] =
-{
+mframe_t tank_frames_run [] = {
{ ai_run, 4, NULL },
{ ai_run, 5, NULL },
{ ai_run, 3, NULL },
@@ -206,8 +200,7 @@ mframe_t tank_frames_run [] =
};
mmove_t tank_move_run = {FRAME_walk05, FRAME_walk20, tank_frames_run, NULL};
-mframe_t tank_frames_stop_run [] =
-{
+mframe_t tank_frames_stop_run [] = {
{ ai_run, 3, NULL },
{ ai_run, 3, NULL },
{ ai_run, 2, NULL },
@@ -216,26 +209,22 @@ mframe_t tank_frames_stop_run [] =
};
mmove_t tank_move_stop_run = {FRAME_walk21, FRAME_walk25, tank_frames_stop_run, tank_walk};
-void tank_run (edict_t *self)
+void tank_run(edict_t *self)
{
if (self->enemy && self->enemy->client)
self->monsterinfo.aiflags |= AI_BRUTAL;
else
self->monsterinfo.aiflags &= ~AI_BRUTAL;
- if (self->monsterinfo.aiflags & AI_STAND_GROUND)
- {
+ if (self->monsterinfo.aiflags & AI_STAND_GROUND) {
self->monsterinfo.currentmove = &tank_move_stand;
return;
}
if (self->monsterinfo.currentmove == &tank_move_walk ||
- self->monsterinfo.currentmove == &tank_move_start_run)
- {
+ self->monsterinfo.currentmove == &tank_move_start_run) {
self->monsterinfo.currentmove = &tank_move_run;
- }
- else
- {
+ } else {
self->monsterinfo.currentmove = &tank_move_start_run;
}
}
@@ -244,8 +233,7 @@ void tank_run (edict_t *self)
// pain
//
-mframe_t tank_frames_pain1 [] =
-{
+mframe_t tank_frames_pain1 [] = {
{ ai_move, 0, NULL },
{ ai_move, 0, NULL },
{ ai_move, 0, NULL },
@@ -253,8 +241,7 @@ mframe_t tank_frames_pain1 [] =
};
mmove_t tank_move_pain1 = {FRAME_pain101, FRAME_pain104, tank_frames_pain1, tank_run};
-mframe_t tank_frames_pain2 [] =
-{
+mframe_t tank_frames_pain2 [] = {
{ ai_move, 0, NULL },
{ ai_move, 0, NULL },
{ ai_move, 0, NULL },
@@ -263,8 +250,7 @@ mframe_t tank_frames_pain2 [] =
};
mmove_t tank_move_pain2 = {FRAME_pain201, FRAME_pain205, tank_frames_pain2, tank_run};
-mframe_t tank_frames_pain3 [] =
-{
+mframe_t tank_frames_pain3 [] = {
{ ai_move, -7, NULL },
{ ai_move, 0, NULL },
{ ai_move, 0, NULL },
@@ -285,32 +271,31 @@ mframe_t tank_frames_pain3 [] =
mmove_t tank_move_pain3 = {FRAME_pain301, FRAME_pain316, tank_frames_pain3, tank_run};
-void tank_pain (edict_t *self, edict_t *other, float kick, int damage)
+void tank_pain(edict_t *self, edict_t *other, float kick, int damage)
{
if (self->health < (self->max_health / 2))
- self->s.skinnum |= 1;
+ self->s.skinnum |= 1;
if (damage <= 10)
return;
if (level.time < self->pain_debounce_time)
- return;
+ return;
if (damage <= 30)
if (random() > 0.2)
return;
-
+
// If hard or nightmare, don't go into pain while attacking
- if ( skill->value >= 2)
- {
- if ( (self->s.frame >= FRAME_attak301) && (self->s.frame <= FRAME_attak330) )
+ if (skill->value >= 2) {
+ if ((self->s.frame >= FRAME_attak301) && (self->s.frame <= FRAME_attak330))
return;
- if ( (self->s.frame >= FRAME_attak101) && (self->s.frame <= FRAME_attak116) )
+ if ((self->s.frame >= FRAME_attak101) && (self->s.frame <= FRAME_attak116))
return;
}
self->pain_debounce_time = level.time + 3;
- gi.sound (self, CHAN_VOICE, sound_pain, 1, ATTN_NORM, 0);
+ gi.sound(self, CHAN_VOICE, sound_pain, 1, ATTN_NORM, 0);
if (skill->value == 3)
return; // no pain anims in nightmare
@@ -328,7 +313,7 @@ void tank_pain (edict_t *self, edict_t *other, float kick, int damage)
// attacks
//
-void TankBlaster (edict_t *self)
+void TankBlaster(edict_t *self)
{
vec3_t forward, right;
vec3_t start;
@@ -343,22 +328,22 @@ void TankBlaster (edict_t *self)
else // (self->s.frame == FRAME_attak116)
flash_number = MZ2_TANK_BLASTER_3;
- AngleVectors (self->s.angles, forward, right, NULL);
- G_ProjectSource (self->s.origin, monster_flash_offset[flash_number], forward, right, start);
+ AngleVectors(self->s.angles, forward, right, NULL);
+ G_ProjectSource(self->s.origin, monster_flash_offset[flash_number], forward, right, start);
- VectorCopy (self->enemy->s.origin, end);
+ VectorCopy(self->enemy->s.origin, end);
end[2] += self->enemy->viewheight;
- VectorSubtract (end, start, dir);
+ VectorSubtract(end, start, dir);
- monster_fire_blaster (self, start, dir, 30, 800, flash_number, EF_BLASTER);
-}
+ monster_fire_blaster(self, start, dir, 30, 800, flash_number, EF_BLASTER);
+}
-void TankStrike (edict_t *self)
+void TankStrike(edict_t *self)
{
- gi.sound (self, CHAN_WEAPON, sound_strike, 1, ATTN_NORM, 0);
-}
+ gi.sound(self, CHAN_WEAPON, sound_strike, 1, ATTN_NORM, 0);
+}
-void TankRocket (edict_t *self)
+void TankRocket(edict_t *self)
{
vec3_t forward, right;
vec3_t start;
@@ -373,18 +358,18 @@ void TankRocket (edict_t *self)
else // (self->s.frame == FRAME_attak330)
flash_number = MZ2_TANK_ROCKET_3;
- AngleVectors (self->s.angles, forward, right, NULL);
- G_ProjectSource (self->s.origin, monster_flash_offset[flash_number], forward, right, start);
+ AngleVectors(self->s.angles, forward, right, NULL);
+ G_ProjectSource(self->s.origin, monster_flash_offset[flash_number], forward, right, start);
- VectorCopy (self->enemy->s.origin, vec);
+ VectorCopy(self->enemy->s.origin, vec);
vec[2] += self->enemy->viewheight;
- VectorSubtract (vec, start, dir);
- VectorNormalize (dir);
+ VectorSubtract(vec, start, dir);
+ VectorNormalize(dir);
- monster_fire_rocket (self, start, dir, 50, 550, flash_number);
-}
+ monster_fire_rocket(self, start, dir, 50, 550, flash_number);
+}
-void TankMachineGun (edict_t *self)
+void TankMachineGun(edict_t *self)
{
vec3_t dir;
vec3_t vec;
@@ -394,19 +379,16 @@ void TankMachineGun (edict_t *self)
flash_number = MZ2_TANK_MACHINEGUN_1 + (self->s.frame - FRAME_attak406);
- AngleVectors (self->s.angles, forward, right, NULL);
- G_ProjectSource (self->s.origin, monster_flash_offset[flash_number], forward, right, start);
+ AngleVectors(self->s.angles, forward, right, NULL);
+ G_ProjectSource(self->s.origin, monster_flash_offset[flash_number], forward, right, start);
- if (self->enemy)
- {
- VectorCopy (self->enemy->s.origin, vec);
+ if (self->enemy) {
+ VectorCopy(self->enemy->s.origin, vec);
vec[2] += self->enemy->viewheight;
- VectorSubtract (vec, start, vec);
- vectoangles (vec, vec);
+ VectorSubtract(vec, start, vec);
+ vectoangles(vec, vec);
dir[0] = vec[0];
- }
- else
- {
+ } else {
dir[0] = 0;
}
if (self->s.frame <= FRAME_attak415)
@@ -415,14 +397,13 @@ void TankMachineGun (edict_t *self)
dir[1] = self->s.angles[1] + 8 * (self->s.frame - FRAME_attak419);
dir[2] = 0;
- AngleVectors (dir, forward, NULL, NULL);
+ AngleVectors(dir, forward, NULL, NULL);
- monster_fire_bullet (self, start, forward, 20, 4, DEFAULT_BULLET_HSPREAD, DEFAULT_BULLET_VSPREAD, flash_number);
-}
+ monster_fire_bullet(self, start, forward, 20, 4, DEFAULT_BULLET_HSPREAD, DEFAULT_BULLET_VSPREAD, flash_number);
+}
-mframe_t tank_frames_attack_blast [] =
-{
+mframe_t tank_frames_attack_blast [] = {
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
@@ -442,8 +423,7 @@ mframe_t tank_frames_attack_blast [] =
};
mmove_t tank_move_attack_blast = {FRAME_attak101, FRAME_attak116, tank_frames_attack_blast, tank_reattack_blaster};
-mframe_t tank_frames_reattack_blast [] =
-{
+mframe_t tank_frames_reattack_blast [] = {
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
{ ai_charge, 0, TankBlaster },
@@ -453,8 +433,7 @@ mframe_t tank_frames_reattack_blast [] =
};
mmove_t tank_move_reattack_blast = {FRAME_attak111, FRAME_attak116, tank_frames_reattack_blast, tank_reattack_blaster};
-mframe_t tank_frames_attack_post_blast [] =
-{
+mframe_t tank_frames_attack_post_blast [] = {
{ ai_move, 0, NULL }, // 17
{ ai_move, 0, NULL },
{ ai_move, 2, NULL },
@@ -464,13 +443,12 @@ mframe_t tank_frames_attack_post_blast [] =
};
mmove_t tank_move_attack_post_blast = {FRAME_attak117, FRAME_attak122, tank_frames_attack_post_blast, tank_run};
-void tank_reattack_blaster (edict_t *self)
+void tank_reattack_blaster(edict_t *self)
{
if (skill->value >= 2)
- if (visible (self, self->enemy))
+ if (visible(self, self->enemy))
if (self->enemy->health > 0)
- if (random() <= 0.6)
- {
+ if (random() <= 0.6) {
self->monsterinfo.currentmove = &tank_move_reattack_blast;
return;
}
@@ -478,14 +456,13 @@ void tank_reattack_blaster (edict_t *self)
}
-void tank_poststrike (edict_t *self)
+void tank_poststrike(edict_t *self)
{
self->enemy = NULL;
- tank_run (self);
+ tank_run(self);
}
-mframe_t tank_frames_attack_strike [] =
-{
+mframe_t tank_frames_attack_strike [] = {
{ ai_move, 3, NULL },
{ ai_move, 2, NULL },
{ ai_move, 2, NULL },
@@ -527,8 +504,7 @@ mframe_t tank_frames_attack_strike [] =
};
mmove_t tank_move_attack_strike = {FRAME_attak201, FRAME_attak238, tank_frames_attack_strike, tank_poststrike};
-mframe_t tank_frames_attack_pre_rocket [] =
-{
+mframe_t tank_frames_attack_pre_rocket [] = {
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
@@ -555,9 +531,8 @@ mframe_t tank_frames_attack_pre_rocket [] =
};
mmove_t tank_move_attack_pre_rocket = {FRAME_attak301, FRAME_attak321, tank_frames_attack_pre_rocket, tank_doattack_rocket};
-mframe_t tank_frames_attack_fire_rocket [] =
-{
- { ai_charge, -3, NULL }, // Loop Start 22
+mframe_t tank_frames_attack_fire_rocket [] = {
+ { ai_charge, -3, NULL }, // Loop Start 22
{ ai_charge, 0, NULL },
{ ai_charge, 0, TankRocket }, // 24
{ ai_charge, 0, NULL },
@@ -569,8 +544,7 @@ mframe_t tank_frames_attack_fire_rocket [] =
};
mmove_t tank_move_attack_fire_rocket = {FRAME_attak322, FRAME_attak330, tank_frames_attack_fire_rocket, tank_refire_rocket};
-mframe_t tank_frames_attack_post_rocket [] =
-{
+mframe_t tank_frames_attack_post_rocket [] = {
{ ai_charge, 0, NULL }, // 31
{ ai_charge, -1, NULL },
{ ai_charge, -1, NULL },
@@ -599,8 +573,7 @@ mframe_t tank_frames_attack_post_rocket [] =
};
mmove_t tank_move_attack_post_rocket = {FRAME_attak331, FRAME_attak353, tank_frames_attack_post_rocket, tank_run};
-mframe_t tank_frames_attack_chain [] =
-{
+mframe_t tank_frames_attack_chain [] = {
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
{ ai_charge, 0, NULL },
@@ -633,21 +606,20 @@ mframe_t tank_frames_attack_chain [] =
};
mmove_t tank_move_attack_chain = {FRAME_attak401, FRAME_attak429, tank_frames_attack_chain, tank_run};
-void tank_refire_rocket (edict_t *self)
+void tank_refire_rocket(edict_t *self)
{
// Only on hard or nightmare
- if ( skill->value >= 2 )
+ if (skill->value >= 2)
if (self->enemy->health > 0)
- if (visible(self, self->enemy) )
- if (random() <= 0.4)
- {
+ if (visible(self, self->enemy))
+ if (random() <= 0.4) {
self->monsterinfo.currentmove = &tank_move_attack_fire_rocket;
return;
}
self->monsterinfo.currentmove = &tank_move_attack_post_rocket;
}
-void tank_doattack_rocket (edict_t *self)
+void tank_doattack_rocket(edict_t *self)
{
self->monsterinfo.currentmove = &tank_move_attack_fire_rocket;
}
@@ -658,42 +630,34 @@ void tank_attack(edict_t *self)
float range;
float r;
- if (self->enemy->health < 0)
- {
+ if (self->enemy->health < 0) {
self->monsterinfo.currentmove = &tank_move_attack_strike;
self->monsterinfo.aiflags &= ~AI_BRUTAL;
return;
}
- VectorSubtract (self->enemy->s.origin, self->s.origin, vec);
- range = VectorLength (vec);
+ VectorSubtract(self->enemy->s.origin, self->s.origin, vec);
+ range = VectorLength(vec);
r = random();
- if (range <= 125)
- {
+ if (range <= 125) {
if (r < 0.4)
self->monsterinfo.currentmove = &tank_move_attack_chain;
- else
+ else
self->monsterinfo.currentmove = &tank_move_attack_blast;
- }
- else if (range <= 250)
- {
+ } else if (range <= 250) {
if (r < 0.5)
self->monsterinfo.currentmove = &tank_move_attack_chain;
else
self->monsterinfo.currentmove = &tank_move_attack_blast;
- }
- else
- {
+ } else {
if (r < 0.33)
self->monsterinfo.currentmove = &tank_move_attack_chain;
- else if (r < 0.66)
- {
+ else if (r < 0.66) {
self->monsterinfo.currentmove = &tank_move_attack_pre_rocket;
self->pain_debounce_time = level.time + 5.0; // no pain for a while
- }
- else
+ } else
self->monsterinfo.currentmove = &tank_move_attack_blast;
}
}
@@ -703,18 +667,17 @@ void tank_attack(edict_t *self)
// death
//
-void tank_dead (edict_t *self)
+void tank_dead(edict_t *self)
{
- VectorSet (self->mins, -16, -16, -16);
- VectorSet (self->maxs, 16, 16, -0);
+ VectorSet(self->mins, -16, -16, -16);
+ VectorSet(self->maxs, 16, 16, -0);
self->movetype = MOVETYPE_TOSS;
self->svflags |= SVF_DEADMONSTER;
self->nextthink = 0;
- gi.linkentity (self);
+ gi.linkentity(self);
}
-mframe_t tank_frames_death1 [] =
-{
+mframe_t tank_frames_death1 [] = {
{ ai_move, -7, NULL },
{ ai_move, -2, NULL },
{ ai_move, -2, NULL },
@@ -750,20 +713,19 @@ mframe_t tank_frames_death1 [] =
};
mmove_t tank_move_death = {FRAME_death101, FRAME_death132, tank_frames_death1, tank_dead};
-void tank_die (edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
+void tank_die(edict_t *self, edict_t *inflictor, edict_t *attacker, int damage, vec3_t point)
{
int n;
// check for gib
- if (self->health <= self->gib_health)
- {
- gi.sound (self, CHAN_VOICE, gi.soundindex ("misc/udeath.wav"), 1, ATTN_NORM, 0);
- for (n= 0; n < 1 /*4*/; n++)
- ThrowGib (self, "models/objects/gibs/sm_meat/tris.md2", damage, GIB_ORGANIC);
- for (n= 0; n < 4; n++)
- ThrowGib (self, "models/objects/gibs/sm_metal/tris.md2", damage, GIB_METALLIC);
- ThrowGib (self, "models/objects/gibs/chest/tris.md2", damage, GIB_ORGANIC);
- ThrowHead (self, "models/objects/gibs/gear/tris.md2", damage, GIB_METALLIC);
+ if (self->health <= self->gib_health) {
+ gi.sound(self, CHAN_VOICE, gi.soundindex("misc/udeath.wav"), 1, ATTN_NORM, 0);
+ for (n = 0; n < 1 /*4*/; n++)
+ ThrowGib(self, "models/objects/gibs/sm_meat/tris.md2", damage, GIB_ORGANIC);
+ for (n = 0; n < 4; n++)
+ ThrowGib(self, "models/objects/gibs/sm_metal/tris.md2", damage, GIB_METALLIC);
+ ThrowGib(self, "models/objects/gibs/chest/tris.md2", damage, GIB_ORGANIC);
+ ThrowHead(self, "models/objects/gibs/gear/tris.md2", damage, GIB_METALLIC);
self->deadflag = DEAD_DEAD;
return;
}
@@ -772,12 +734,12 @@ void tank_die (edict_t *self, edict_t *inflictor, edict_t *attacker, int damage,
return;
// 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->takedamage = DAMAGE_YES;
self->monsterinfo.currentmove = &tank_move_death;
-
+
}
@@ -789,44 +751,40 @@ void tank_die (edict_t *self, edict_t *inflictor, edict_t *attacker, int damage,
*/
/*QUAKED monster_tank_commander (1 .5 0) (-32 -32 -16) (32 32 72) Ambush Trigger_Spawn Sight
*/
-void SP_monster_tank (edict_t *self)
+void SP_monster_tank(edict_t *self)
{
- if (deathmatch->value)
- {
- G_FreeEdict (self);
+ if (deathmatch->value) {
+ G_FreeEdict(self);
return;
}
- self->s.modelindex = gi.modelindex ("models/monsters/tank/tris.md2");
- VectorSet (self->mins, -32, -32, -16);
- VectorSet (self->maxs, 32, 32, 72);
+ self->s.modelindex = gi.modelindex("models/monsters/tank/tris.md2");
+ VectorSet(self->mins, -32, -32, -16);
+ VectorSet(self->maxs, 32, 32, 72);
self->movetype = MOVETYPE_STEP;
self->solid = SOLID_BBOX;
- sound_pain = gi.soundindex ("tank/tnkpain2.wav");
- sound_thud = gi.soundindex ("tank/tnkdeth2.wav");
- sound_idle = gi.soundindex ("tank/tnkidle1.wav");
- sound_die = gi.soundindex ("tank/death.wav");
- sound_step = gi.soundindex ("tank/step.wav");
- sound_windup = gi.soundindex ("tank/tnkatck4.wav");
- sound_strike = gi.soundindex ("tank/tnkatck5.wav");
- sound_sight = gi.soundindex ("tank/sight1.wav");
-
- gi.soundindex ("tank/tnkatck1.wav");
- gi.soundindex ("tank/tnkatk2a.wav");
- gi.soundindex ("tank/tnkatk2b.wav");
- gi.soundindex ("tank/tnkatk2c.wav");
- gi.soundindex ("tank/tnkatk2d.wav");
- gi.soundindex ("tank/tnkatk2e.wav");
- gi.soundindex ("tank/tnkatck3.wav");
-
- if (strcmp(self->classname, "monster_tank_commander") == 0)
- {
+ sound_pain = gi.soundindex("tank/tnkpain2.wav");
+ sound_thud = gi.soundindex("tank/tnkdeth2.wav");
+ sound_idle = gi.soundindex("tank/tnkidle1.wav");
+ sound_die = gi.soundindex("tank/death.wav");
+ sound_step = gi.soundindex("tank/step.wav");
+ sound_windup = gi.soundindex("tank/tnkatck4.wav");
+ sound_strike = gi.soundindex("tank/tnkatck5.wav");
+ sound_sight = gi.soundindex("tank/sight1.wav");
+
+ gi.soundindex("tank/tnkatck1.wav");
+ gi.soundindex("tank/tnkatk2a.wav");
+ gi.soundindex("tank/tnkatk2b.wav");
+ gi.soundindex("tank/tnkatk2c.wav");
+ gi.soundindex("tank/tnkatk2d.wav");
+ gi.soundindex("tank/tnkatk2e.wav");
+ gi.soundindex("tank/tnkatck3.wav");
+
+ if (strcmp(self->classname, "monster_tank_commander") == 0) {
self->health = 1000;
self->gib_health = -225;
- }
- else
- {
+ } else {
self->health = 750;
self->gib_health = -200;
}
@@ -844,8 +802,8 @@ void SP_monster_tank (edict_t *self)
self->monsterinfo.sight = tank_sight;
self->monsterinfo.idle = tank_idle;
- gi.linkentity (self);
-
+ gi.linkentity(self);
+
self->monsterinfo.currentmove = &tank_move_stand;
self->monsterinfo.scale = MODEL_SCALE;