mirror of
https://github.com/yquake2/rogue.git
synced 2025-02-16 17:11:02 +00:00
Cleanup boss3 and add sanity checks
This commit is contained in:
parent
134d6008c1
commit
a12497536f
5 changed files with 1498 additions and 1018 deletions
|
@ -1,58 +1,73 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
boss3
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
#include "../../header/local.h"
|
||||
#include "boss32.h"
|
||||
|
||||
void Use_Boss3 (edict_t *ent, edict_t *other, edict_t *activator)
|
||||
{
|
||||
gi.WriteByte (svc_temp_entity);
|
||||
gi.WriteByte (TE_BOSSTPORT);
|
||||
gi.WritePosition (ent->s.origin);
|
||||
gi.multicast (ent->s.origin, MULTICAST_PVS);
|
||||
G_FreeEdict (ent);
|
||||
void
|
||||
Use_Boss3(edict_t *ent, edict_t *other /* unused */, edict_t *activator /* unused */)
|
||||
{
|
||||
if (!ent)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
gi.WriteByte(svc_temp_entity);
|
||||
gi.WriteByte(TE_BOSSTPORT);
|
||||
gi.WritePosition(ent->s.origin);
|
||||
gi.multicast(ent->s.origin, MULTICAST_PVS);
|
||||
G_FreeEdict(ent);
|
||||
}
|
||||
|
||||
void Think_Boss3Stand (edict_t *ent)
|
||||
{
|
||||
void
|
||||
Think_Boss3Stand(edict_t *ent)
|
||||
{
|
||||
if (!ent)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (ent->s.frame == FRAME_stand260)
|
||||
{
|
||||
ent->s.frame = FRAME_stand201;
|
||||
}
|
||||
else
|
||||
{
|
||||
ent->s.frame++;
|
||||
}
|
||||
|
||||
ent->nextthink = level.time + FRAMETIME;
|
||||
}
|
||||
|
||||
/*QUAKED monster_boss3_stand (1 .5 0) (-32 -32 0) (32 32 90)
|
||||
|
||||
Just stands and cycles in one place until targeted, then teleports away.
|
||||
*/
|
||||
void SP_monster_boss3_stand (edict_t *self)
|
||||
{
|
||||
/*
|
||||
* QUAKED monster_boss3_stand (1 .5 0) (-32 -32 0) (32 32 90)
|
||||
*
|
||||
* Just stands and cycles in one place until targeted, then teleports away.
|
||||
*/
|
||||
void
|
||||
SP_monster_boss3_stand(edict_t *self)
|
||||
{
|
||||
if (!self)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (deathmatch->value)
|
||||
{
|
||||
G_FreeEdict (self);
|
||||
G_FreeEdict(self);
|
||||
return;
|
||||
}
|
||||
|
||||
self->movetype = MOVETYPE_STEP;
|
||||
self->solid = SOLID_BBOX;
|
||||
self->model = "models/monsters/boss3/rider/tris.md2";
|
||||
self->s.modelindex = gi.modelindex (self->model);
|
||||
self->s.modelindex = gi.modelindex(self->model);
|
||||
self->s.frame = FRAME_stand201;
|
||||
|
||||
gi.soundindex ("misc/bigtele.wav");
|
||||
gi.soundindex("misc/bigtele.wav");
|
||||
|
||||
VectorSet (self->mins, -32, -32, 0);
|
||||
VectorSet (self->maxs, 32, 32, 90);
|
||||
VectorSet(self->mins, -32, -32, 0);
|
||||
VectorSet(self->maxs, 32, 32, 90);
|
||||
|
||||
self->use = Use_Boss3;
|
||||
self->think = Think_Boss3Stand;
|
||||
self->nextthink = level.time + FRAMETIME;
|
||||
gi.linkentity (self);
|
||||
gi.linkentity(self);
|
||||
}
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,7 +1,10 @@
|
|||
// G:\quake2\baseq2\models/monsters/boss3/jorg
|
||||
|
||||
// This file generated by ModelGen - Do NOT Modify
|
||||
|
||||
/* =======================================================================
|
||||
*
|
||||
* Animations for final boss stage 1.
|
||||
*
|
||||
* =======================================================================
|
||||
*/
|
||||
|
||||
#define FRAME_attak101 0
|
||||
#define FRAME_attak102 1
|
||||
#define FRAME_attak103 2
|
||||
|
@ -190,5 +193,4 @@
|
|||
#define FRAME_walk23 185
|
||||
#define FRAME_walk24 186
|
||||
#define FRAME_walk25 187
|
||||
|
||||
#define MODEL_SCALE 1.000000
|
||||
#define MODEL_SCALE 1.000000
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,7 +1,10 @@
|
|||
// G:\quake2\baseq2\models/monsters/boss3/rider
|
||||
|
||||
// This file generated by ModelGen - Do NOT Modify
|
||||
|
||||
/* =======================================================================
|
||||
*
|
||||
* Final boss, stage 2 (makron).
|
||||
*
|
||||
* =======================================================================
|
||||
*/
|
||||
|
||||
#define FRAME_attak101 0
|
||||
#define FRAME_attak102 1
|
||||
#define FRAME_attak103 2
|
||||
|
@ -493,5 +496,4 @@
|
|||
#define FRAME_walk215 488
|
||||
#define FRAME_walk216 489
|
||||
#define FRAME_walk217 490
|
||||
|
||||
#define MODEL_SCALE 1.000000
|
||||
#define MODEL_SCALE 1.000000
|
||||
|
|
Loading…
Reference in a new issue