146 lines
5.6 KiB
Plaintext
146 lines
5.6 KiB
Plaintext
/*======================================================================
|
|
INFO ENTITIES
|
|
======================================================================*/
|
|
void() info_null = { remove(self); };
|
|
void() info_notnull = {};
|
|
void() info_target = {};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_player_start (1 0 0) (-16 -16 -24) (16 16 24) x x x x x x x x Not_Easy Not_Normal Not_Hard Not_DM Dyn_Easy Dyn_Normal Dyn_Hard Dyn_Night
|
|
{ model(":progs/player.mdl"); }
|
|
DEFAULT starting point for a player
|
|
-------- KEYS --------
|
|
target : triggered target(s) when used as a client destination
|
|
angle : Starting view angle
|
|
-------- SPAWNFLAGS --------
|
|
-------- NOTES --------
|
|
DEFAULT starting point for a player
|
|
|
|
======================================================================*/
|
|
void() info_player_start = {
|
|
self.classtype = CT_SPAWNSP;
|
|
self.estate = ESTATE_ON;
|
|
};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_player_start2 (0.9 0 0) (-16 -16 -24) (16 16 24) x x x x x x x x Not_Easy Not_Normal Not_Hard Not_DM Dyn_Easy Dyn_Normal Dyn_Hard Dyn_Night
|
|
{ model(":progs/player.mdl"); }
|
|
Starting point for players with runes or startspawn2 system
|
|
-------- KEYS --------
|
|
target : triggered target(s) when used as a client destination
|
|
angle : Starting view angle
|
|
startspawn2 : Unique spawn location number matching a trigger_changelevel
|
|
-------- SPAWNFLAGS --------
|
|
-------- NOTES --------
|
|
Starting point for players with runes or using the startspawn2 system
|
|
The startspawn2 system lets players move between maps using exact location
|
|
|
|
======================================================================*/
|
|
void() info_player_start2 = {
|
|
self.classtype = CT_SPAWNSP;
|
|
self.estate = ESTATE_ON;
|
|
};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_player_coop (1 0 1) (-16 -16 -24) (16 16 24) x x x x x x STARTOFF x Not_Easy Not_Normal Not_Hard Not_DM
|
|
{ model(":progs/player.mdl"); }
|
|
Starting position for coop games
|
|
-------- KEYS --------
|
|
target : triggered target(s) when used as a client destination
|
|
angle : Starting view angle
|
|
-------- SPAWNFLAGS --------
|
|
STARTOFF : Starts off
|
|
-------- NOTES --------
|
|
Starting position for coop games
|
|
|
|
======================================================================*/
|
|
void() info_player_coop = {
|
|
self.classtype = CT_SPAWNCOOP;
|
|
if (self.spawnflags & MON_SPAWN_DELAY) self.estate = ESTATE_OFF;
|
|
else self.estate = ESTATE_ON;
|
|
// Setup Entity State functionality
|
|
if (self.targetname != "") self.use = entity_state_use;
|
|
};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_player_deathmatch (0 1 1) (-16 -16 -24) (16 16 24) x x x x x x STARTOFF x Not_Easy Not_Normal Not_Hard Not_DM
|
|
{ model(":progs/player.mdl"); }
|
|
Starting position for deathmatch games
|
|
-------- KEYS --------
|
|
target : triggered target(s) when used as a client destination
|
|
angle : Starting view angle
|
|
-------- SPAWNFLAGS --------
|
|
STARTOFF : Starts off
|
|
-------- NOTES --------
|
|
Starting position for deathmatch games
|
|
|
|
======================================================================*/
|
|
void() info_player_deathmatch = {
|
|
self.classtype = CT_SPAWNDM;
|
|
if (self.spawnflags & MON_SPAWN_DELAY) self.estate = ESTATE_OFF;
|
|
else self.estate = ESTATE_ON;
|
|
// Setup Entity State functionality
|
|
if (self.targetname != "") self.use = entity_state_use;
|
|
};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_teleport_destination (1 0.5 0.5) (-8 -8 -8) (8 8 32) x
|
|
Destination marker for a teleporter
|
|
-------- KEYS --------
|
|
targetname : link to trigger_teleport
|
|
target : fires when the entities is used as a destination
|
|
angles : Pitch Yaw Roll (viewing angle after teleporting)
|
|
-------- SPAWNFLAGS --------
|
|
-------- NOTES --------
|
|
Destination marker for a teleporter
|
|
|
|
======================================================================*/
|
|
void() info_teleport_destination =
|
|
{
|
|
self.classtype = CT_MISCTELEPORT;
|
|
self.estate = ESTATE_ON;
|
|
self.mangle = self.angles;
|
|
self.angles = '0 0 0';
|
|
self.origin = self.origin + '0 0 27';
|
|
};
|
|
|
|
/*======================================================================
|
|
/*QUAKED info_intermission (1 0.5 0.5) (-16 -16 -16) (16 16 16) NO_INTERMIS SOLID x x x x x x Not_Easy Not_Normal Not_Hard Not_DM
|
|
This is the camera point for the intermission
|
|
-------- KEYS --------
|
|
target : triggered target(s) when used as a viewing camera
|
|
mangle : Pitch Yaw Roll
|
|
fog_density : fog density (Must be >0 to activate feature)
|
|
fog_colour : fog colours (def=0.1 0.1 0.1)
|
|
speed : fog time to change (def=2s)
|
|
-------- SPAWNFLAGS --------
|
|
NO_INTERMIS : Will not display when proper intermission active
|
|
SOLID : Intermission camera interacts with world
|
|
-------- NOTES --------
|
|
mangle = up/down, angle, tilt left/right 'pitch roll yaw'
|
|
up/left = negative value, down/right = positive value
|
|
|
|
======================================================================*/
|
|
void() info_intermission =
|
|
{
|
|
self.classtype = CT_CAMERA;
|
|
self.estate = ESTATE_ON;
|
|
setsize (self, VEC_ORIGIN, VEC_ORIGIN);
|
|
self.movetype = MOVETYPE_NONE;
|
|
self.solid = SOLID_NOT;
|
|
setmodel(self, MODEL_EMPTY);
|
|
self.view_ofs = '0 0 0';
|
|
self.owner = self;
|
|
|
|
// Check for any trigger fog parameters
|
|
if (self.fog_density > 0) {
|
|
if (!self.speed) self.speed = 2;
|
|
// Double check its within range
|
|
if (self.fog_density > 1) self.fog_density = 1;
|
|
if (CheckZeroVector(self.fog_colour)) self.fog_colour = '0.1 0.1 0.1';
|
|
}
|
|
// Disable fog trigger if density not setup
|
|
else self.fog_density = 0;
|
|
|
|
};
|