finished up descriptions in g_misc and g_mover

Signed-off-by: Harry Young <hendrik.gerritzen@googlemail.com>
This commit is contained in:
Harry Young 2012-11-27 10:37:48 +01:00
parent 8e3023c613
commit fc08de6e3d
3 changed files with 679 additions and 309 deletions

View file

@ -615,32 +615,60 @@ void InitShooter( gentity_t *ent, int weapon ) {
} }
/*QUAKED shooter_rocket (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_rocket (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" the number of degrees of deviance from the taget. (1.0 default) When used fires a rocket at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
void SP_shooter_rocket( gentity_t *ent ) { void SP_shooter_rocket( gentity_t *ent ) {
InitShooter( ent, WP_10 ); InitShooter( ent, WP_10 );
} }
/*QUAKED shooter_plasma (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_plasma (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a plasma-burst at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
void SP_shooter_plasma( gentity_t *ent ) { void SP_shooter_plasma( gentity_t *ent ) {
InitShooter( ent, WP_6 ); //TiM : WP_4 InitShooter( ent, WP_6 ); //TiM : WP_4
} }
/*QUAKED shooter_grenade (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_grenade (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a grenade at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
void SP_shooter_grenade( gentity_t *ent ) { void SP_shooter_grenade( gentity_t *ent ) {
InitShooter( ent, WP_8); InitShooter( ent, WP_8);
} }
/*QUAKED shooter_torpedo (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_torpedo (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a torpedo at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
void SP_shooter_torpedo( gentity_t *ent ) { void SP_shooter_torpedo( gentity_t *ent ) {
InitShooter( ent, WP_9 ); InitShooter( ent, WP_9 );

View file

@ -1458,31 +1458,47 @@ void DoorGetMessage(gentity_t *ent) {
} }
/*QUAKED func_door (0 .5 .8) ? START_OPEN x CRUSHER TREK_DOOR FACE OVERRIDE LOCKED ADMIN_ONLY CORRIDOR /*QUAKED func_door (0 .5 .8) ? START_OPEN X CRUSHER TREK_DOOR FACE OVERRIDE LOCKED ADMIN_ONLY CORRIDOR
START_OPEN the door to moves to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or takedamage doors). -----DESCRIPTION-----
x A door that moves between its two positions. Can only translate around one axis at a time.
CRUSHER door will crush Can be teamed with multiple doors to trigger simultaniously.
TREK_DOOR if set this door will have a reduced auto trigger volume
FACE if set, this door requires you to be facing it before the trigger will fire
OVERRIDE if set, targetted doors won't wait until they're clear before closing
LOCKED if set, door is locked at spawn
ADMIN_ONLY if set, door only opens for admins
CORRIDOR if set, door will have en even more reduced auto trigger volume
"model2" .md3 model to also draw -----SPAWNFLAGS-----
"angle" determines the opening direction 1: START_OPEN : the door to moves to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or takedamage doors).
"targetname" if set, no touch field will be spawned and a remote button or trigger field activates the door. 2: X : Unknown, do not use.
"targetname2" for target_doorlock 4: CRUSHER : door will be stuck on it's open position
"speed" movement speed (100 default) 8: TREK_DOOR : if set this door will have a reduced auto trigger volume
"wait" wait before returning (3 default, -1 = never return) 16: FACE : if set, this door requires you to be facing it before the trigger will fire
"lip" lip remaining at end of move (8 default) 32: OVERRIDE : if set, targetted doors won't wait until they're clear before closing
"dmg" damage to inflict when blocked (2 default) 64: LOCKED : if set, door is locked at spawn
"color" constantLight color 128: ADMIN_ONLY : if set, door only opens for admins
"light" constantLight radius 256: CORRIDOR : if set, door will have en even more reduced auto trigger volume
"health" if set, the door must be shot open
"soundstart" sound to play at start of moving -----KEYS-----
"soundstop" sound to play at stop of moving "model2" - .md3 model to also draw
"soundlocked" sound to play when locked "angle" - determines the opening direction
"speed" - movement speed (100 default)
"lip" - lip remaining at end of move (8 default)
"dmg" - damage to inflict when blocked (2 default)
"color" - constantLight color
"light" - constantLight radius
"health" - if set, the door must be shot open
"soundstart" - sound to play at start of moving
"soundstop" - sound to play at stop of moving
"soundlocked" - sound to play when locked
"team" - all doors that have the same team will move simultaniously
Ther following keys are only required on one in a team of doors (master door)
"targetname" - if set, no touch field will be spawned and a remote button or trigger field activates the door.
"targetname2" - for target_doorlock.
"wait" - wait before returning (3 default, -1 = never return)
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/
*/ */
void SP_func_door (gentity_t *ent) { void SP_func_door (gentity_t *ent) {
vec3_t abs_movedir; vec3_t abs_movedir;
@ -1677,18 +1693,29 @@ void SpawnPlatTrigger( gentity_t *ent ) {
/*QUAKED func_plat (0 .5 .8) NO_TOUCH /*QUAKED func_plat (0 .5 .8) NO_TOUCH
-----DESCRIPTION-----
Binary mover...I don't know much more until I have tested it...
Plats are always drawn in the extended position so they will light correctly. Plats are always drawn in the extended position so they will light correctly.
-----SPAWNFLAGS-----
NO_TOUCH - instead of staying up as long as someone touches it, it will wait "wait" seconds and return NO_TOUCH - instead of staying up as long as someone touches it, it will wait "wait" seconds and return
"targetname" if targeted will only move when used -----KEYS-----
"lip" default 8, protrusion above rest position "targetname" - if targeted will only move when used
"height" total height of movement, defaults to model height "lip" - default 8, protrusion above rest position
"speed" overrides default 200. "height" - total height of movement, defaults to model height
"dmg" overrides default 2 "speed" - overrides default 200.
"model2" .md3 model to also draw "dmg" - overrides default 2
"color" constantLight color "model2" - .md3 model to also draw
"light" constantLight radius "color" - constantLight color
"wait" how many seconds to wait before returning "light" - constantLight radius
"wait" - how many seconds to wait before returning
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_plat (gentity_t *ent) { void SP_func_plat (gentity_t *ent) {
float lip, height; float lip, height;
@ -1777,17 +1804,28 @@ void Touch_Button(gentity_t *ent, gentity_t *other, trace_t *trace ) {
/*QUAKED func_button (0 .5 .8) ? /*QUAKED func_button (0 .5 .8) ?
-----DESCRIPTION-----
When a button is touched, it moves some distance in the direction of it's angle, triggers all of it's targets, waits some time, then returns to it's original position where it can be triggered again. When a button is touched, it moves some distance in the direction of it's angle, triggers all of it's targets, waits some time, then returns to it's original position where it can be triggered again.
"model2" .md3 model to also draw -----SPAWNFLAGS-----
"angle" determines the opening direction none
"target" all entities with a matching targetname will be used
"speed" override the default 40 speed -----KEYS-----
"wait" override the default 1 second wait (-1 = never return) "model2" - .md3 model to also draw
"lip" override the default 4 pixel lip remaining at end of move "angle" - determines the opening direction
"health" if set, the button must be killed instead of touched "target" - all entities with a matching targetname will be used
"color" constantLight color "speed" - override the default 40 speed
"light" constantLight radius "wait" - override the default 1 second wait (-1 = never return)
"lip" - override the default 4 pixel lip remaining at end of move
"health" - if set, the button must be killed instead of touched
"color" - constantLight color
"light" - constantLight radius
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_button( gentity_t *ent ) { void SP_func_button( gentity_t *ent ) {
vec3_t abs_movedir; vec3_t abs_movedir;
@ -1990,10 +2028,16 @@ void Think_SetupTrainTargets( gentity_t *ent ) {
/*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8) /*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8)
Train path corners. -----DESCRIPTION-----
Target: next path corner and other targets to fire func_train path corners.
"speed" speed to move to the next corner
"wait" seconds to wait before behining move to next corner -----SPAWNFLAGS-----
none
-----KEYS-----
"target" - next path corner and other targets to fire
"speed" - speed to move to the next corner
"wait" - seconds to wait before behining move to next corner
*/ */
void SP_path_corner( gentity_t *self ) { void SP_path_corner( gentity_t *self ) {
if ( !self->targetname ) { if ( !self->targetname ) {
@ -2007,17 +2051,33 @@ void SP_path_corner( gentity_t *self ) {
/*QUAKED func_train (0 .5 .8) ? START_ON TOGGLE BLOCK_STOPS START_INVISIBLE /*QUAKED func_train (0 .5 .8) ? START_ON TOGGLE BLOCK_STOPS START_INVISIBLE
-----DESCRIPTION-----
A train is a mover that moves between path_corner target points. A train is a mover that moves between path_corner target points.
Can be turned invisible.
Trains MUST HAVE AN ORIGIN BRUSH. Trains MUST HAVE AN ORIGIN BRUSH.
The train spawns at the first target it is pointing at. The train spawns at the first target it is pointing at.
"model2" .md3 model to also draw
"speed" default 100 -----SPAWNFLAGS-----
"dmg" default 2 1: START_ON - the train will begin to move after spawn
"noise" looping sound to play when the train is in motion 2: TOGGLE - the train can be toggled
"target" next path corner 4: BLOCK_STOPS - the train will stop if blocked
"color" constantLight color 8: START_INVISIBLE - the train will be invisible at spawn
"light" constantLight radius
"swapname" targetname for visiblility change -----KEYS-----
"model2" - .md3 model to also draw
"speed" - default 100
"dmg" - default 2
"noise" - looping sound to play when the train is in motion
"target" - next path corner
"color" - constantLight color
"light" - constantLight radius
"swapname" - targetname for visiblility change
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_train (gentity_t *self) { void SP_func_train (gentity_t *self) {
VectorClear (self->s.angles); VectorClear (self->s.angles);
@ -2073,10 +2133,24 @@ STATIC
/*QUAKED func_static (0 .5 .8) ? /*QUAKED func_static (0 .5 .8) ?
A bmodel that just sits there, doing nothing. Can be used for conditional walls and models. -----DESCRIPTION-----
"model2" .md3 model to also draw A bmodel that just sits there, doing nothing.
"color" constantLight color Can be used for conditional walls and models.
"light" constantLight radius If it has an origin-Brush it can be moved using Lua.
-----SPAWNFLAGS-----
none
-----KEYS-----
"model2" - .md3 model to also draw
"color" - constantLight color
"light" - constantLight radius
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_static( gentity_t *ent ) { void SP_func_static( gentity_t *ent ) {
trap_SetBrushModel( ent, ent->model ); trap_SetBrushModel( ent, ent->model );
@ -2292,30 +2366,43 @@ static void forcefield_touch( gentity_t *ent, gentity_t *other, trace_t *trace )
#define SF_USEABLE (1<<0) #define SF_USEABLE (1<<0)
/*QUAKED func_forcefield (0 .5 .8) ? STARTOFF DONTTOGGLE ADMINS AUTOANIM x x x x NO_BORG /*QUAKED func_forcefield (0 .5 .8) ? STARTOFF DONTTOGGLE ADMINS AUTOANIM X X X X NO_BORG
-----DESCRIPTION-----
A brush that remains invisible until it is contacted by a player, where it temporarily A brush that remains invisible until it is contacted by a player, where it temporarily
becomes visible becomes visible.
STARTOFF - Spawns in an off state, and must be used to be activated -----SPAWNFLAGS-----
DONTTOGGLE - This entity cannot be used to be switched on and off (ie always on) 1: STARTOFF - Spawns in an off state, and must be used to be activated
ADMINS - Players in admin classes can move through the field 2: DONTTOGGLE - This entity cannot be used to be switched on and off (ie always on)
AUTOANIM - If a model is spawned with it, it will animate at 10FPS repeatedly 4: ADMINS - Players in admin classes can move through the field
NO_BORG - If set, borg can't move through 8: AUTOANIM - If a model is spawned with it, it will animate at 10FPS repeatedly
16: X - Unknown, do not use
32: X - Unknown, do not use
64: X - Unknown, do not use
128: X - Unknown, do not use
256: NO_BORG - If set, borg can't move through
"flareWait" How long the forcefield remains visible after the player contacts it (milliseconds)(default 150) -----KEYS-----
"activateWait" How long the forcefield remains visible after activation/deactivation(default 500) "flareWait" - How long the forcefield remains visible after the player contacts it (milliseconds)(default 150)
"damageWait" How long the forecefield remains visible after it has been shot (default 400) "activateWait" - How long the forcefield remains visible after activation/deactivation(default 500)
"kickback" How far the player gets pushed back when they touch the forcefield (default 50) "damageWait" - How long the forecefield remains visible after it has been shot (default 400)
"damage" Damage sustained when the player touches the field (default 0 ) "kickback" - How far the player gets pushed back when they touch the forcefield (default 50)
"target" Will fire this target every time it is toggled "damage" - Damage sustained when the player touches the field (default 0 )
"model2" .md3 model to also draw "target" - Will fire this target every time it is toggled
"color" constantLight color "model2" - .md3 model to also draw
"light" constantLight radius "color" - constantLight color
"activateSnd" sound file to play when the field is activated "light" - constantLight radius
"damageSnd" sound to play when the field is shot "activateSnd" - sound file to play when the field is activated
"touchSnd" sound to play if the field is contacted by a player. "damageSnd" - sound to play when the field is shot
"deactivateSnd" sound to play when the field is turned off "touchSnd" - sound to play if the field is contacted by a player.
"hittarget" target to fire when hit "deactivateSnd" - sound to play when the field is turned off
"hittarget" - target to fire when hit
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_forcefield( gentity_t *ent ) void SP_func_forcefield( gentity_t *ent )
{ {
@ -2395,11 +2482,22 @@ ROTATING
*/ */
/*QUAKED func_rotating (0 .5 .8) ? START_ON x X_AXIS Y_AXIS x INVISIBLE IGNORE /*QUAKED func_rotating (0 .5 .8) ? START_ON X X_AXIS Y_AXIS x INVISIBLE NO_TOGGLE
-----DESCRIPTION-----
You need to have an origin brush as part of this entity. The center of that brush will be You need to have an origin brush as part of this entity. The center of that brush will be
the point around which it is rotated. It will rotate around the Z axis by default. You can the point around which it is rotated. It will rotate around the Z axis by default. You can
check either the X_AXIS or Y_AXIS box to change that. check either the X_AXIS or Y_AXIS box to change that.
-----SPAWNFLAGS-----
1: START_ON - entity will move at spawn
2: X - Unknown, do not use
4: X-AXIS - rotate around the X-Axis
8: Y-AXIS - rotate around the Y-Axis
16: X - Unknown, do not use
32: INVISIBLE - will be invisible at spawn
64: NO_TOGGLE - will not be toggable
-----KEYS-----
"model2" .md3 model to also draw "model2" .md3 model to also draw
"speed" determines how fast it moves; default value is 100. "speed" determines how fast it moves; default value is 100.
"dmg" damage to inflict when blocked (2 default) "dmg" damage to inflict when blocked (2 default)
@ -2408,6 +2506,12 @@ check either the X_AXIS or Y_AXIS box to change that.
"swapname" visibility swap (activator needs NO_ACTIVATOR/SELF) "swapname" visibility swap (activator needs NO_ACTIVATOR/SELF)
"pos1" Angles to end up at in addition to current angles- pitch yaw and roll. Eg: 0 90 45 "pos1" Angles to end up at in addition to current angles- pitch yaw and roll. Eg: 0 90 45
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
//RPG-X Use Function //RPG-X Use Function
@ -2544,27 +2648,41 @@ void SP_func_rotating (gentity_t *ent) {
/*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN CRUSHER REVERSE X_AXIS Y_AXIS LOCKED ADMIN_ONLY CORRIDOR /*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN CRUSHER REVERSE X_AXIS Y_AXIS LOCKED ADMIN_ONLY CORRIDOR
This is the rotating door... just as the name suggests it's a door that rotates -----DESCRIPTION-----
START_OPEN the door to moves to its destination when spawned, and operate in reverse. This is the rotating door... just as the name suggests it's a door that rotates around it's origin Brush.
REVERSE if you want the door to open in the other direction, use this switch. The Axis to rotate around is determined by spawnflag.
TOGGLE wait in both the start and end states for a trigger event.
X_AXIS open on the X-axis instead of the Z-axis -----SPAWNFLAGS-----
Y_AXIS open on the Y-axis instead of the Z-axis 1: START_OPEN - the door to moves to its destination when spawned, and operate in reverse.
2: CRUSHER - The door will stick in it's end position
4: REVERSE - if you want the door to open in the other direction, use this switch.
8: X_AXIS - rotate around the X-axis instead of the Z-axis
16: Y_AXIS - rotate around the Y-axis instead of the Z-axis
32: LOCKED - Door is locked at spawn
64: ADMIN_ONLY - only admins can use this door
128: CORRIDOR - will have a reduced autotrigger volume.
You need to have an origin brush as part of this entity. The center of that brush will be You need to have an origin brush as part of this entity. The center of that brush will be
the point around which it is rotated. It will rotate around the Z axis by default. You can the point around which it is rotated. It will rotate around the Z axis by default. You can
check either the X_AXIS or Y_AXIS box to change that. check either the X_AXIS or Y_AXIS box to change that.
"model2" .md3 model to also draw "model2" - .md3 model to also draw
"distance" how many degrees the door will open "distance" - how many degrees the door will open
"speed" how fast the door will open (degrees/second) "speed" - how fast the door will open (degrees/second)
"color" constantLight color "wait" - time to wait before returning, default = 2, -1 = move on toggle
"light" constantLight radius "color" - constantLight color
"targetname" door can only open/close when used by anonther entity "light" - constantLight radius
"targetname2" for target_doorlock "targetname" - door can only open/close when used by anonther entity
"soundstart" sound played when start moving "targetname2" - for target_doorlock
"soundstop" sound played when stop moving "soundstart" - sound played when start moving
"soundlocked" sound played when locked "soundstop" - sound played when stop moving
"soundlocked" - sound played when locked
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_door_rotating ( gentity_t *ent ) { void SP_func_door_rotating ( gentity_t *ent ) {
@ -2674,14 +2792,28 @@ BOBBING
/*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS /*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS
-----DESCRIPTION-----
Don't now what this looks like.
Normally bobs on the Z axis Normally bobs on the Z axis
"model2" .md3 model to also draw
"height" amplitude of bob (32 default) -----SPAWNFLAGS-----
"speed" seconds to complete a bob cycle (4 default) 1: X-AXIS - bobs on the X-Axis
"phase" the 0.0 to 1.0 offset in the cycle to start at 2: Y-AXIS - bobs on the Y-Axis
"dmg" damage to inflict when blocked (2 default)
"color" constantLight color -----KEYS-----
"light" constantLight radius "model2" - .md3 model to also draw
"height" - amplitude of bob (32 default)
"speed" - seconds to complete a bob cycle (4 default)
"phase" - the 0.0 to 1.0 offset in the cycle to start at
"dmg" - damage to inflict when blocked (2 default)
"color" - constantLight color
"light" - constantLight radius
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_bobbing (gentity_t *ent) { void SP_func_bobbing (gentity_t *ent) {
float height; float height;
@ -2729,15 +2861,27 @@ PENDULUM
/*QUAKED func_pendulum (0 .5 .8) ? /*QUAKED func_pendulum (0 .5 .8) ?
-----DESCRIPTION-----
You need to have an origin brush as part of this entity. You need to have an origin brush as part of this entity.
Pendulums always swing north / south on unrotated models. Add an angles field to the model to allow rotation in other directions. Pendulums always swing north / south on unrotated models. Add an angles field to the model to allow rotation in other directions.
Pendulum frequency is a physical constant based on the length of the beam and gravity. Pendulum frequency is a physical constant based on the length of the beam and gravity.
"model2" .md3 model to also draw
"speed" the number of degrees each way the pendulum swings, (30 default) -----SPAWNFLAGS-----
"phase" the 0.0 to 1.0 offset in the cycle to start at none
"dmg" damage to inflict when blocked (2 default)
"color" constantLight color -----KEYS-----
"light" constantLight radius "model2" - .md3 model to also draw
"speed" - the number of degrees each way the pendulum swings, (30 default)
"phase" - the 0.0 to 1.0 offset in the cycle to start at
"dmg" - damage to inflict when blocked (2 default)
"color" - constantLight color
"light" - constantLight radius
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_pendulum(gentity_t *ent) { void SP_func_pendulum(gentity_t *ent) {
float freq; float freq;
@ -2785,9 +2929,22 @@ LIGHTING CHANGE --- sort of :D
*/ */
/*QUAKED func_brushmodel (0 .5 .8) ? /*QUAKED func_brushmodel (0 .5 .8) ?
-----DESCRIPTION-----
A brushmodel. A brushmodel.
For use with func_lightchange. For use with func_lightchange.
Must have an origin brush. Must have an origin brush.
-----SPAWNFLAGS-----
none
-----KEYS-----
"targetname" - have this be the target of a func_lightchange
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_brushmodel(gentity_t *ent) { void SP_func_brushmodel(gentity_t *ent) {
trap_SetBrushModel(ent, ent->model); trap_SetBrushModel(ent, ent->model);
@ -2799,9 +2956,22 @@ void SP_func_brushmodel(gentity_t *ent) {
} }
/*QUAKED func_lightchange (0 .5 .8) ? /*QUAKED func_lightchange (0 .5 .8) ?
-----DESCRIPTION-----
Can be used for "toggling" light on/off. Can be used for "toggling" light on/off.
Must target a func_brushmodel. Must target a func_brushmodel.
Must have an origin brush. Must have an origin brush.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - func_brushmodel to swap positions with
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void func_lightchange_use(gentity_t *ent, gentity_t *other, gentity_t *activator) { void func_lightchange_use(gentity_t *ent, gentity_t *other, gentity_t *activator) {
char *oldModel; char *oldModel;
@ -2867,12 +3037,23 @@ TARGET MOVER
*/ */
/*QUAKED func_targetmover (0 .5 .8) ? START_OPEN /*QUAKED func_targetmover (0 .5 .8) ? START_OPEN
This work similar to an func_door but will move between the entities origin and an target origin. -----DESCRIPTION-----
This work similar to an func_door but will move between the entities origin (requires origin brush) and an target origin.
Added for enhanced SP level support, that's why it is a quite basic entity. Added for enhanced SP level support, that's why it is a quite basic entity.
"target" info_notnull, where to move -----SPAWNFLAGS-----
"wait" time beforce returning, -1 = toggle 1: START_OPEN - will spawn at target position
"speed" speed to move with (default: 200)
-----KEYS-----
"target" - info_notnull, where to move
"wait" - time beforce returning, -1 = toggle
"speed" - speed to move with (default: 200)
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void func_targetmover_link(gentity_t *ent) { void func_targetmover_link(gentity_t *ent) {
gentity_t *target; gentity_t *target;
@ -3113,12 +3294,17 @@ void Reached_AdvancedMover(gentity_t *ent) {
} }
/*QUAKED path_point (.5 .3 0) (-8 8 8) (8 8 8) START_POINT /*QUAKED path_point (.5 .3 0) (-8 8 8) (8 8 8) START_POINT
START_POINT this is the first path_point for the train -----DESCRIPTION-----
Target position for the discontinued func_mover
"target" next path_point -----SPAWNFLAGS-----
"wait" time beforce moving on, -1 wait until used 1: START_POINT - this is the first path_point for the train
"damage" used to tell the func_mover it should fire it's targets here
"angles" to rotate to -----KEYS-----
"target" - next path_point
"wait" - time beforce moving on, -1 wait until used
"damage" - used to tell the func_mover it should fire it's targets here
"angles" - to rotate to
*/ */
void SP_path_point(gentity_t *ent) { void SP_path_point(gentity_t *ent) {
// check if angles are set // check if angles are set
@ -3129,10 +3315,23 @@ void SP_path_point(gentity_t *ent) {
} }
/*QUAKED func_mover (0 .5 .8) ? /*QUAKED func_mover (0 .5 .8) ?
-----DESCRIPTION-----
Discontinued enhanced mover requiring an origin brush.
Use Lua for this now.
"target" path_point to start at -----SPAWNFLAGS-----
"speed" speed to move with (default: 10) none
"aspeed" angular speed to rotate with (default: 10)
-----KEYS-----
"target" - path_point to start at
"speed" - speed to move with (default: 10)
"aspeed" - angular speed to rotate with (default: 10)
q3map2:
"_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" - see _clone
"_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
void SP_func_mover(gentity_t *ent) { void SP_func_mover(gentity_t *ent) {
@ -3356,14 +3555,16 @@ void spawn_trigger_stasis_door( gentity_t *ent ) {
//------------------------------------------- //-------------------------------------------
/*QUAKED func_stasis_door (0 .5 .8) START_LOCKED /*QUAKED func_stasis_door (0 .5 .8) START_LOCKED
-----DESCRIPTION-----
A bmodel that just sits there and opens when a player gets close to it. A bmodel that just sits there and opens when a player gets close to it.
START_LOCKED: door is locked at spawn -----SPAWNFLAGS-----
1: START_LOCKED - door is locked at spawn
"targetname" will open the door
"swapname" will lock the door (SELF/NO_ACTIVATOR needed)
"wait" time to wait before closing, -1 for manual trigger, default is 5 seconds
-----KEYS-----
"targetname" - will open the door
"swapname" - will lock the door (SELF/NO_ACTIVATOR needed)
"wait" - time to wait before closing, -1 for manual trigger, default is 5 seconds
*/ */
void SP_func_stasis_door( gentity_t *ent ) void SP_func_stasis_door( gentity_t *ent )
{ {

View file

@ -3,8 +3,8 @@
//g_cinamatic.c - cinematic_camera**; //g_cinamatic.c - cinematic_camera**;
//g_client.c - info_player_deathmatch[info_player_start, team_CTF_redplayer, team_CTF_blueplayer, team_CTF_redspawn, team_CTF_bluespawn], info_player_intermission; //g_client.c - info_player_deathmatch[info_player_start, team_CTF_redplayer, team_CTF_blueplayer, team_CTF_redspawn, team_CTF_bluespawn], info_player_intermission;
//g_fx.c //g_fx.c
//g_misc.c //g_misc.c - func_group, info_camp, info_null, info_notnull[misc_teleporter_dest], light, misc_model, misc_portal_surface, misc_portal_camera, shooter_rocker, shooter_plasma, shooter_grenade, shooter_torpedo;
//g_mover.c //g_mover.c - func_door, func_plat, func_button, path_corner, func_train, func_static, func_forcefield, func_rotating, func_door_rotating, func_bobbing, func_pendulum, func_brushmodel, func_lightchange, func_targetmover, path_point, func_mover, func_stasis_door;
//g_spawn.c - worldspawn; //g_spawn.c - worldspawn;
//g_target.c //g_target.c
//g_trigger.c - trigger_multiple, trigger_always, trigger_push, target_push, trigger_teleport, trigger_hurt, func_timer, trigger_transporter, trigger_radiation; //g_trigger.c - trigger_multiple, trigger_always, trigger_push, target_push, trigger_teleport, trigger_hurt, func_timer, trigger_transporter, trigger_radiation;
@ -335,44 +335,79 @@ You can set either angles or target another entity (NOT an info_null or similar)
*/ */
/*QUAKED shooter_rocket (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_rocket (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" the number of degrees of deviance from the taget. (1.0 default) When used fires a rocket at either the target or the current direction.
*/
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/
/*QUAKED shooter_torpedo (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_torpedo (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a torpedo at either the target or the current direction.
*/
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/
/*QUAKED shooter_plasma (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_plasma (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a plasma-burst at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
/*QUAKED shooter_grenade (1 0 0) (-16 -16 -16) (16 16 16) /*QUAKED shooter_grenade (1 0 0) (-16 -16 -16) (16 16 16)
Fires at either the target or the current direction. -----DESCRIPTION-----
"random" is the number of degrees of deviance from the taget. (1.0 default) When used fires a grenade at either the target or the current direction.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - direction to fire to
"random" - the number of degrees of deviance from the taget. (1.0 default)
*/ */
/*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8) /*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8)
Train path corners. -----DESCRIPTION-----
Target: next path corner and other targets to fire func_train path corners.
"speed" speed to move to the next corner
"wait" seconds to wait before behining move to next corner -----SPAWNFLAGS-----
none
-----KEYS-----
"target" - next path corner and other targets to fire
"speed" - speed to move to the next corner
"wait" - seconds to wait before behining move to next corner
*/ */
/*QUAKED path_point (.5 .3 0) (-8 8 8) (8 8 8) START_POINT /*QUAKED path_point (.5 .3 0) (-8 8 8) (8 8 8) START_POINT
START_POINT this is the first path_point for the train -----DESCRIPTION-----
Target position for the discontinued func_mover
"target" next path_point -----SPAWNFLAGS-----
"wait" time beforce moving on, -1 wait until used 1: START_POINT - this is the first path_point for the train
"damage" used to tell the func_mover it should fire it's targets here
"angles" to rotate to -----KEYS-----
"target" - next path_point
"wait" - time beforce moving on, -1 wait until used
"damage" - used to tell the func_mover it should fire it's targets here
"angles" - to rotate to
*/ */
@ -1003,16 +1038,23 @@ This will change the map if rpg_allowSPLevelChange is set to 1.
// RPG-X func_* // RPG-X func_*
/*QUAKED func_mover (0 .5 .8) ? /*QUAKED func_mover (0 .5 .8) ?
-----DESCRIPTION-----
Discontinued enhanced mover requiring an origin brush.
Use Lua for this now.
"target" path_point to start at -----SPAWNFLAGS-----
"speed" speed to move with (default: 10) none
"aspeed" angular speed to rotate with (default: 10)
-----KEYS-----
"target" - path_point to start at
"speed" - speed to move with (default: 10)
"aspeed" - angular speed to rotate with (default: 10)
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_timer (0.3 0.1 0.6) (-8 -8 -8) (8 8 8) START_ON /*QUAKED func_timer (0.3 0.1 0.6) (-8 -8 -8) (8 8 8) START_ON
@ -1038,45 +1080,74 @@ q3map2:
/*QUAKED func_train (0 .5 .8) ? START_ON TOGGLE BLOCK_STOPS START_INVISIBLE /*QUAKED func_train (0 .5 .8) ? START_ON TOGGLE BLOCK_STOPS START_INVISIBLE
-----DESCRIPTION-----
A train is a mover that moves between path_corner target points. A train is a mover that moves between path_corner target points.
Can be turned invisible.
Trains MUST HAVE AN ORIGIN BRUSH. Trains MUST HAVE AN ORIGIN BRUSH.
The train spawns at the first target it is pointing at. The train spawns at the first target it is pointing at.
"model2" .md3 model to also draw
"speed" default 100 -----SPAWNFLAGS-----
"dmg" default 2 1: START_ON - the train will begin to move after spawn
"noise" looping sound to play when the train is in motion 2: TOGGLE - the train can be toggled
"target" next path corner 4: BLOCK_STOPS - the train will stop if blocked
"color" constantLight color 8: START_INVISIBLE - the train will be invisible at spawn
"light" constantLight radius
"swapname" targetname for visiblility change -----KEYS-----
"model2" - .md3 model to also draw
"speed" - default 100
"dmg" - default 2
"noise" - looping sound to play when the train is in motion
"target" - next path corner
"color" - constantLight color
"light" - constantLight radius
"swapname" - targetname for visiblility change
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_static (0 .5 .8) ? /*QUAKED func_static (0 .5 .8) ?
A bmodel that just sits there, doing nothing. Can be used for conditional walls and models. -----DESCRIPTION-----
"model2" .md3 model to also draw A bmodel that just sits there, doing nothing.
"color" constantLight color Can be used for conditional walls and models.
"light" constantLight radius If it has an origin-Brush it can be moved using Lua.
-----SPAWNFLAGS-----
none
-----KEYS-----
"model2" - .md3 model to also draw
"color" - constantLight color
"light" - constantLight radius
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_rotating (0 .5 .8) ? START_ON x X_AXIS Y_AXIS x INVISIBLE IGNORE /*QUAKED func_rotating (0 .5 .8) ? START_ON X X_AXIS Y_AXIS x INVISIBLE NO_TOGGLE
-----DESCRIPTION-----
You need to have an origin brush as part of this entity. The center of that brush will be You need to have an origin brush as part of this entity. The center of that brush will be
the point around which it is rotated. It will rotate around the Z axis by default. You can the point around which it is rotated. It will rotate around the Z axis by default. You can
check either the X_AXIS or Y_AXIS box to change that. check either the X_AXIS or Y_AXIS box to change that.
-----SPAWNFLAGS-----
1: START_ON - entity will move at spawn
2: X - Unknown, do not use
4: X-AXIS - rotate around the X-Axis
8: Y-AXIS - rotate around the Y-Axis
16: X - Unknown, do not use
32: INVISIBLE - will be invisible at spawn
64: NO_TOGGLE - will not be toggable
-----KEYS-----
"model2" .md3 model to also draw "model2" .md3 model to also draw
"speed" determines how fast it moves; default value is 100. "speed" determines how fast it moves; default value is 100.
"dmg" damage to inflict when blocked (2 default) "dmg" damage to inflict when blocked (2 default)
@ -1087,28 +1158,36 @@ check either the X_AXIS or Y_AXIS box to change that.
"pos1" Angles to end up at in addition to current angles- pitch yaw and roll. Eg: 0 90 45 "pos1" Angles to end up at in addition to current angles- pitch yaw and roll. Eg: 0 90 45
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS /*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS
-----DESCRIPTION-----
Don't now what this looks like.
Normally bobs on the Z axis Normally bobs on the Z axis
"model2" .md3 model to also draw
"height" amplitude of bob (32 default) -----SPAWNFLAGS-----
"speed" seconds to complete a bob cycle (4 default) 1: X-AXIS - bobs on the X-Axis
"phase" the 0.0 to 1.0 offset in the cycle to start at 2: Y-AXIS - bobs on the Y-Axis
"dmg" damage to inflict when blocked (2 default)
"color" constantLight color -----KEYS-----
"light" constantLight radius "model2" - .md3 model to also draw
"height" - amplitude of bob (32 default)
"speed" - seconds to complete a bob cycle (4 default)
"phase" - the 0.0 to 1.0 offset in the cycle to start at
"dmg" - damage to inflict when blocked (2 default)
"color" - constantLight color
"light" - constantLight radius
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
@ -1132,75 +1211,94 @@ q3map2:
/*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN CRUSHER REVERSE X_AXIS Y_AXIS LOCKED ADMIN_ONLY CORRIDOR /*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN CRUSHER REVERSE X_AXIS Y_AXIS LOCKED ADMIN_ONLY CORRIDOR
This is the rotating door... just as the name suggests it's a door that rotates -----DESCRIPTION-----
START_OPEN the door to moves to its destination when spawned, and operate in reverse. This is the rotating door... just as the name suggests it's a door that rotates around it's origin Brush.
REVERSE if you want the door to open in the other direction, use this switch. The Axis to rotate around is determined by spawnflag.
TOGGLE wait in both the start and end states for a trigger event.
X_AXIS open on the X-axis instead of the Z-axis -----SPAWNFLAGS-----
Y_AXIS open on the Y-axis instead of the Z-axis 1: START_OPEN - the door to moves to its destination when spawned, and operate in reverse.
2: CRUSHER - The door will stick in it's end position
4: REVERSE - if you want the door to open in the other direction, use this switch.
8: X_AXIS - rotate around the X-axis instead of the Z-axis
16: Y_AXIS - rotate around the Y-axis instead of the Z-axis
32: LOCKED - Door is locked at spawn
64: ADMIN_ONLY - only admins can use this door
128: CORRIDOR - will have a reduced autotrigger volume.
You need to have an origin brush as part of this entity. The center of that brush will be You need to have an origin brush as part of this entity. The center of that brush will be
the point around which it is rotated. It will rotate around the Z axis by default. You can the point around which it is rotated. It will rotate around the Z axis by default. You can
check either the X_AXIS or Y_AXIS box to change that. check either the X_AXIS or Y_AXIS box to change that.
"model2" .md3 model to also draw "model2" - .md3 model to also draw
"distance" how many degrees the door will open "distance" - how many degrees the door will open
"speed" how fast the door will open (degrees/second) "speed" - how fast the door will open (degrees/second)
"color" constantLight color "wait" - time to wait before returning, default = 2, -1 = move on toggle
"light" constantLight radius "color" - constantLight color
"targetname" door can only open/close when used by anonther entity "light" - constantLight radius
"targetname2" for target_doorlock "targetname" - door can only open/close when used by anonther entity
"soundstart" sound played when start moving "targetname2" - for target_doorlock
"soundstop" sound played when stop moving "soundstart" - sound played when start moving
"soundlocked" sound played when locked "soundstop" - sound played when stop moving
"soundlocked" - sound played when locked
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_plat (0 .5 .8) ? NO_TOUCH /*QUAKED func_plat (0 .5 .8) NO_TOUCH
-----DESCRIPTION-----
Binary mover...I don't know much more until I have tested it...
Plats are always drawn in the extended position so they will light correctly. Plats are always drawn in the extended position so they will light correctly.
-----SPAWNFLAGS-----
NO_TOUCH - instead of staying up as long as someone touches it, it will wait "wait" seconds and return NO_TOUCH - instead of staying up as long as someone touches it, it will wait "wait" seconds and return
"lip" default 8, protrusion above rest position -----KEYS-----
"height" total height of movement, defaults to model height "targetname" - if targeted will only move when used
"speed" overrides default 200. "lip" - default 8, protrusion above rest position
"dmg" overrides default 2 "height" - total height of movement, defaults to model height
"model2" .md3 model to also draw "speed" - overrides default 200.
"color" constantLight color "dmg" - overrides default 2
"light" constantLight radius "model2" - .md3 model to also draw
"wait" how many seconds to wait before returning "color" - constantLight color
"light" - constantLight radius
"wait" - how many seconds to wait before returning
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_button (0 .5 .8) ? /*QUAKED func_button (0 .5 .8) ?
-----DESCRIPTION-----
When a button is touched, it moves some distance in the direction of it's angle, triggers all of it's targets, waits some time, then returns to it's original position where it can be triggered again. When a button is touched, it moves some distance in the direction of it's angle, triggers all of it's targets, waits some time, then returns to it's original position where it can be triggered again.
"model2" .md3 model to also draw -----SPAWNFLAGS-----
"angle" determines the opening direction none
"target" all entities with a matching targetname will be used
"speed" override the default 40 speed -----KEYS-----
"wait" override the default 1 second wait (-1 = never return) "model2" - .md3 model to also draw
"lip" override the default 4 pixel lip remaining at end of move "angle" - determines the opening direction
"health" if set, the button must be killed instead of touched "target" - all entities with a matching targetname will be used
"color" constantLight color "speed" - override the default 40 speed
"light" constantLight radius "wait" - override the default 1 second wait (-1 = never return)
"lip" - override the default 4 pixel lip remaining at end of move
"health" - if set, the button must be killed instead of touched
"color" - constantLight color
"light" - constantLight radius
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_group (0 0 0) ? /*QUAKED func_group (0 0 0) ?
@ -1294,93 +1392,123 @@ Also if you have a (morer or less) generic console that you want to fire generic
end end
*/ */
/*QUAKED func_forcefield (0 .5 .8) ? STARTOFF DONTTOGGLE ADMINS AUTOANIM x x x x NO_BORG /*QUAKED func_forcefield (0 .5 .8) ? STARTOFF DONTTOGGLE ADMINS AUTOANIM X X X X NO_BORG
-----DESCRIPTION-----
A brush that remains invisible until it is contacted by a player, where it temporarily A brush that remains invisible until it is contacted by a player, where it temporarily
becomes visible becomes visible.
STARTOFF - Spawns in an off state, and must be used to be activated -----SPAWNFLAGS-----
DONTTOGGLE - This entity cannot be used to be switched on and off (ie always on) 1: STARTOFF - Spawns in an off state, and must be used to be activated
ADMINS - Players in admin classes can move through the field 2: DONTTOGGLE - This entity cannot be used to be switched on and off (ie always on)
AUTOANIM - If a model is spawned with it, it will animate at 10FPS repeatedly 4: ADMINS - Players in admin classes can move through the field
NO_BORG - If set, borg can't move through 8: AUTOANIM - If a model is spawned with it, it will animate at 10FPS repeatedly
16: X - Unknown, do not use
32: X - Unknown, do not use
64: X - Unknown, do not use
128: X - Unknown, do not use
256: NO_BORG - If set, borg can't move through
"flareWait" How long the forcefield remains visible after the player contacts it (milliseconds)(default 150) -----KEYS-----
"activateWait" How long the forcefield remains visible after activation/deactivation(default 500) "flareWait" - How long the forcefield remains visible after the player contacts it (milliseconds)(default 150)
"damageWait" How long the forecefield remains visible after it has been shot (default 400) "activateWait" - How long the forcefield remains visible after activation/deactivation(default 500)
"kickback" How far the player gets pushed back when they touch the forcefield (default 50) "damageWait" - How long the forecefield remains visible after it has been shot (default 400)
"damage" Damage sustained when the player touches the field (default 0 ) "kickback" - How far the player gets pushed back when they touch the forcefield (default 50)
"target" Will fire this target every time it is toggled "damage" - Damage sustained when the player touches the field (default 0 )
"model2" .md3 model to also draw "target" - Will fire this target every time it is toggled
"color" constantLight color "model2" - .md3 model to also draw
"light" constantLight radius "color" - constantLight color
"activateSnd" sound file to play when the field is activated "light" - constantLight radius
"damageSnd" sound to play when the field is shot "activateSnd" - sound file to play when the field is activated
"touchSnd" sound to play if the field is contacted by a player. "damageSnd" - sound to play when the field is shot
"deactivateSnd" sound to play when the field is turned off "touchSnd" - sound to play if the field is contacted by a player.
"hittarget" target to fire when hit "deactivateSnd" - sound to play when the field is turned off
"hittarget" - target to fire when hit
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_door (0 .5 .8) ? START_OPEN x CRUSHER TREK_DOOR FACE OVERRIDE LOCKED ADMIN_ONLY CORRIDOR /*QUAKED func_door (0 .5 .8) ? START_OPEN X CRUSHER TREK_DOOR FACE OVERRIDE LOCKED ADMIN_ONLY CORRIDOR
START_OPEN the door to moves to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or takedamage doors). -----DESCRIPTION-----
x A door that moves between its two positions. Can only translate around one axis at a time.
CRUSHER door will crush Can be teamed with multiple doors to trigger simultaniously.
TREK_DOOR if set this door will have a reduced auto trigger volume
FACE if set, this door requires you to be facing it before the trigger will fire
OVERRIDE if set, targetted doors won't wait until they're clear before closing
LOCKED if set, door is locked at spawn
ADMIN_ONLY if set, door only opens for admins
CORRIDOR if set, door will have en even more reduced auto trigger volume
"model2" .md3 model to also draw -----SPAWNFLAGS-----
"angle" determines the opening direction 1: START_OPEN : the door to moves to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or takedamage doors).
"targetname" if set, no touch field will be spawned and a remote button or trigger field activates the door. 2: X : Unknown, do not use.
"targetname2" for target_doorlock 4: CRUSHER : door will be stuck on it's open position
"speed" movement speed (100 default) 8: TREK_DOOR : if set this door will have a reduced auto trigger volume
"wait" wait before returning (3 default, -1 = never return) 16: FACE : if set, this door requires you to be facing it before the trigger will fire
"lip" lip remaining at end of move (8 default) 32: OVERRIDE : if set, targetted doors won't wait until they're clear before closing
"dmg" damage to inflict when blocked (2 default) 64: LOCKED : if set, door is locked at spawn
"color" constantLight color 128: ADMIN_ONLY : if set, door only opens for admins
"light" constantLight radius 256: CORRIDOR : if set, door will have en even more reduced auto trigger volume
"health" if set, the door must be shot open
"soundstart" sound to play at start of moving -----KEYS-----
"soundstop" sound to play at stop of moving "model2" - .md3 model to also draw
"soundlocked" sound to play when locked "angle" - determines the opening direction
"speed" - movement speed (100 default)
"lip" - lip remaining at end of move (8 default)
"dmg" - damage to inflict when blocked (2 default)
"color" - constantLight color
"light" - constantLight radius
"health" - if set, the door must be shot open
"soundstart" - sound to play at start of moving
"soundstop" - sound to play at stop of moving
"soundlocked" - sound to play when locked
"team" - all doors that have the same team will move simultaniously
Ther following keys are only required on one in a team of doors (master door)
"targetname" - if set, no touch field will be spawned and a remote button or trigger field activates the door.
"targetname2" - for target_doorlock.
"wait" - wait before returning (3 default, -1 = never return)
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_brushmodel (0 .5 .8) ? /*QUAKED func_brushmodel (0 .5 .8) ?
-----DESCRIPTION-----
A brushmodel. A brushmodel.
For use with func_lightchange. For use with func_lightchange.
Must have an origin brush. Must have an origin brush.
-----SPAWNFLAGS-----
none
-----KEYS-----
"targetname" - have this be the target of a func_lightchange
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_lightchange (0 .5 .8) ? /*QUAKED func_lightchange (0 .5 .8) ?
-----DESCRIPTION-----
Can be used for "toggling" light on/off. Can be used for "toggling" light on/off.
Must target a func_brushmodel. Must target a func_brushmodel.
Must have an origin brush. Must have an origin brush.
-----SPAWNFLAGS-----
none
-----KEYS-----
"target" - func_brushmodel to swap positions with
q3map2: q3map2:
"_clone" _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced. "_clone" - _clonename of entity to clone brushes from. Note: this entity still needs at least one brush which gets replaced.
"_clonename" see _clone "_clonename" - see _clone
"_castShadows" OR "_cs" sets whether the entity casts shadows "_castShadows" OR "_cs" - sets whether the entity casts shadows
"_receiveShadows" OR "_rs" sets whether the entity receives shadows "_receiveShadows" OR "_rs" - sets whether the entity receives shadows
*/ */
/*QUAKED func_targetmover (0 .5 .8) ? START_OPEN /*QUAKED func_targetmover (0 .5 .8) ? START_OPEN
@ -1814,3 +1942,16 @@ none
-----LUA----- -----LUA-----
To be written later. To be written later.
*/ */
/*QUAKED func_stasis_door (0 .5 .8) START_LOCKED
-----DESCRIPTION-----
A bmodel that just sits there and opens when a player gets close to it.
-----SPAWNFLAGS-----
1: START_LOCKED - door is locked at spawn
-----KEYS-----
"targetname" - will open the door
"swapname" - will lock the door (SELF/NO_ACTIVATOR needed)
"wait" - time to wait before closing, -1 for manual trigger, default is 5 seconds
*/