GS-EntBase: Adjust QUAKED comments so they can be parsed by Doxygen.

This commit is contained in:
Marco Cawthorne 2022-12-13 17:52:20 -08:00
parent dfcf0d183d
commit 94d5d5408c
Signed by: eukara
GPG Key ID: CE2032F0A2882A22
131 changed files with 2216 additions and 2160 deletions

View File

@ -13,7 +13,9 @@ ent_for_mod()
echo "Scanning for definitions inside the game directory."
find ./$1/src/ -type f \( -iname \*.qc \) | while read EDEF_N; do
echo "... $EDEF_N"
sed -n '/\/*QUAKED/,/*\//p' $EDEF_N >> "$ENT_OUTFILE"
sed -n '/\/*!QUAKED/,/*\//p' $EDEF_N >> "$ENT_OUTFILE"
# fix doxygen markup
sed -i 's/*!QUAKED/*QUAKED/g' "$ENT_OUTFILE"
done;
cat ./platform/entities.def >> $ENT_OUTFILE
@ -26,7 +28,9 @@ echo '' > "$BASE_ENT"
echo "Scanning for definitions inside the general entity codebase."
find ./src/gs-entbase/ -type f \( -iname \*.qc \) | while read EDEF_N; do
echo "... $EDEF_N"
sed -n '/\/*QUAKED/,/*\//p' $EDEF_N >> "$BASE_ENT"
sed -n '/\/*!QUAKED/,/*\//p' $EDEF_N >> "$BASE_ENT"
# fix doxygen markup
sed -i 's/*!QUAKED/*QUAKED/g' "$BASE_ENT"
done;
# each game gets its own ents + general purpose ents appended at the end

View File

@ -14,17 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_cubemap (0 0 1) (-8 -8 -8) (8 8 8)
Specifies a location for which a cubemap will be generated when the
buildcubemaps console command is executed.
-------- KEYS --------
"scale" : Texture dimension at which to render the cubemap. Default is "32".
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
int g_iCubeProcess;
entity g_eCubeCycle;
vector g_vecCubePos;
@ -33,6 +22,17 @@ float g_dCubeSize;
void CMap_Check(void);
void CMap_Shoot(void);
/*!QUAKED env_cubemap (0 0 1) (-8 -8 -8) (8 8 8)
# OVERVIEW
Specifies a location for which a cubemap will be generated when the
buildcubemaps console command is executed.
# KEYS
- "scale" : Texture dimension at which to render the cubemap. Default is "32".
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
env_cubemap:NSEntity
{

View File

@ -14,24 +14,27 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_glow (0 0.5 1) (-8 -8 -8) (8 8 8) EVGLOW_ORIENT
Client-side glare/glow orb effect like the flares in 1997's Unreal.
-------- KEYS --------
"shader" : Material to use for the glare/glow effect.
"model" : Sprite model to use for the glare/glow (idTech 2 BSPs only)
"scale" : Scale multiplier.
"rendercolor" : Material color override in RGB8.
"renderamt" : Material alpha override in A8.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
var int autocvar_r_skipGlows = 0;
var int autocvar_r_skipLensFlares = 0;
class env_glow:NSEntity /* change to renderablentity? */
/*!QUAKED env_glow (0 0.5 1) (-8 -8 -8) (8 8 8) EVGLOW_ORIENT
# OVERVIEW
Client-side glare/glow orb effect like the flares in 1997's Unreal.
# KEYS
- "shader" : Material to use for the glare/glow effect.
- "model" : Sprite model to use for the glare/glow (idTech 2 BSPs only)
- "scale" : Scale multiplier.
- "rendercolor" : Material color override in RGB8.
- "renderamt" : Material alpha override in A8.
# SPAWNFLAGS
- EVGLOW_ORIENT (1) : TODO: Glow is an oriented sprite when set.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class env_glow:NSEntity /* TODO: change to renderablentity? */
{
public:
void env_glow(void);

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_particle (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED env_particle (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Client-side particle effect. Active at runtime, fully client-side.
Cannot be triggered. Repeats automatically.
-------- KEYS --------
"message" : Particle material to use.
"wait" : Delay between emits.
"target" : Name of target, like an info_notnull (client-side)
"velocity" : Speed in units.
"count" : Number of particles to emit.
# KEYS
- "message" : Particle material to use.
- "wait" : Delay between emits.
- "target" : Name of target, like an info_notnull (client-side)
- "velocity" : Speed in units.
- "count" : Number of particles to emit.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in The Wastes (2018).
*/
class env_particle:NSEntity
{
public:

View File

@ -17,21 +17,6 @@
/* this is causing crashes on OpenAL 1.19.1 when enabled */
//#define DSP_LERP
/*QUAKED env_sound (0 1 0.5) (-8 -8 -8) (8 8 8)
Client-side environmental reverb modifier.
-------- KEYS --------
"radius" : Radius in units.
"efx_file" : Name of the OpenAL EFX definiton to use.
"roomtype" : Legacy enumeration for GoldSrc support. Please don't use this.
-------- NOTES --------
This works only with the OpenAL sound backend.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
static string g_hlefx[] = {
"default",
"gs_generic",
@ -64,6 +49,21 @@ static string g_hlefx[] = {
"gs_weirdo3"
};
/*!QUAKED env_sound (0 1 0.5) (-8 -8 -8) (8 8 8)
# OVERVIEW
Client-side environmental reverb modifier.
# KEYS
- "radius" : Radius in units.
- "efx_file" : Name of the OpenAL EFX definiton to use.
- "roomtype" : Legacy enumeration for GoldSrc support. Please don't use this.
# NOTES
This works only with the OpenAL sound backend.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class env_sound:NSEntity
{
public:

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_soundscape (0 1 0.3) (-8 -8 -8) (8 8 8)
Client-side environmental soundscape modifier.
-------- KEYS --------
"radius" : Radius in units.
"shader" : Sound shader to play.
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
var int autocvar_dsp_soundscapes = TRUE;
int g_scapes;
/*!QUAKED env_soundscape (0 1 0.3) (-8 -8 -8) (8 8 8)
# OVERVIEW
Client-side environmental soundscape modifier.
# KEYS
- "radius" : Radius in units.
- "shader" : Sound shader to play.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class env_soundscape:NSEntity
{
public:

View File

@ -16,18 +16,6 @@
int trace_surfaceflagsi;
/*QUAKED env_sun (1 0 0) (-8 -8 -8) (8 8 8)
"targetname" : Name
"pitch" : Sun glow pitch.
"angle" : Sun glow angle.
"use_angles" : Use the 'angles' yaw value instead of the one from 'angle'.
STUB!
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
#define FLARE_SIZE [128,128]
int
@ -44,6 +32,19 @@ Util_IsSky(vector pos)
return (0);
}
/*!QUAKED env_sun (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Visual representation of where the sun is positioned in the sky.
# KEYS
- "targetname" : Name
- "pitch" : Sun glow pitch.
- "angle" : Sun glow angle.
- "use_angles" : Use the 'angles' yaw value instead of the one from 'angle'.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class env_sun:NSEntity
{
public:

View File

@ -14,19 +14,19 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_dustcloud (0 .5 .8) ?
/*!QUAKED func_dustcloud (0 .5 .8) ?
# OVERVIEW
Dust cloud emitting brush volume.
-------- KEYS --------
"count" : Number of cloud particles that will float around on average.
"Alpha" : Transparency of the clouds. Value from 0 to 255.
"SizeMin" : Minimum size of each cloud. In Quake units.
"SizeMax" : Maximum size of each cloud. In Quake units.
# KEYS
- "count" : Number of cloud particles that will float around on average.
- "Alpha" : Transparency of the clouds. Value from 0 to 255.
- "SizeMin" : Minimum size of each cloud. In Quake units.
- "SizeMax" : Maximum size of each cloud. In Quake units.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class func_dustcloud:NSEntity
{
public:

View File

@ -14,16 +14,16 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_dustmotes (0 .5 .8) ?
/*!QUAKED func_dustmotes (0 .5 .8) ?
# OVERVIEW
Dustmote emitting brush volume.
-------- KEYS --------
"count" : Number of dustmote particles that will float around on average.
# KEYS
- "count" : Number of dustmote particles that will float around on average.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class func_dustmotes:NSEntity
{
public:

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_lod (0 .5 .8) ?
Level of Detail brush entity, disappears at a set distance.
Useful for when VIS is impossible or not enough.
-------- KEYS --------
"targetname" : Name
"DisappearDist" : Distance in units for of when the func_lod will pop out of view.
"Solid" : Defines solidity. Is "0" when solid, "1" when not-solid.
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
#ifdef DEVELOPER
var int autocvar_dev_loddistance = 0;
#endif
/*!QUAKED func_lod (0 .5 .8) ?
# OVERVIEW
Level of Detail brush entity, disappears at a set distance.
Useful for when VIS is impossible or not enough.
# KEYS
- "targetname" : Name
- "DisappearDist" : Distance in units for of when the func_lod will pop out of view.
- "Solid" : Defines solidity. Is "0" when solid, "1" when not-solid.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class func_lod:NSRenderableEntity
{
public:

View File

@ -14,20 +14,20 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_smokevolume (0 .5 .8) ? FULLBRIGHT
/*!QUAKED func_smokevolume (0 .5 .8) ? FULLBRIGHT
# OVERVIEW
Smoke cloud emitting brush volume.
-------- KEYS --------
"ParticleDrawWidth" : Size of the particles in Quake units.
"SizeMax" : Maximum size of each cloud. In Quake units.
"Color1" : Primary color
"Color2" : Secondary color
"MaxDrawDistance" : Maximum draw distance. Set to 0 if infinite.
# KEYS
- "ParticleDrawWidth" : Size of the particles in Quake units.
- "SizeMax" : Maximum size of each cloud. In Quake units.
- "Color1" : Primary color
- "Color2" : Secondary color
- "MaxDrawDistance" : Maximum draw distance. Set to 0 if infinite.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class func_smokevolume:NSEntity
{
public:

View File

@ -14,22 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED light_environment (1 0 0) (-8 -8 -8) (8 8 8) ?
/*!QUAKED light_environment (1 0 0) (-8 -8 -8) (8 8 8) ?
# OVERVIEW
Defines the overall ambient skylight in the map.
-------- KEYS --------
"color" : Normalized RGB color value. Default is [1,1,1]
"color255" : RGB255 color value. e.g. '255 255 255' for white
"ambientcolor" : Shadow color. Normalized RGB color value. Default is [1,1,1]
"ambientcolor255" : Shadow color. RGB255 color value. e.g. '255 255 255' for white
"intensity" : Overall intensity of the sky light. '300' is probably okay for a day level.
"sunangle" : The yaw position of the sun, basically the horizontal direction.
"pitch" : The vertical position of the sun. '-90' means straight down, '-45' is diagonal etc.
"samples" : The amount of passes onto the lightmap, this is required for spread.
"sunspreadangle" : The offset of each sample pass in degrees, basically horizontal jitter.
"filterradius" : Blur amount for each pass. This will make cloud scenes work well.
# KEYS
- "color" : Normalized RGB color value. Default is [1,1,1]
- "color255" : RGB255 color value. e.g. '255 255 255' for white
- "ambientcolor" : Shadow color. Normalized RGB color value. Default is [1,1,1]
- "ambientcolor255" : Shadow color. RGB255 color value. e.g. '255 255 255' for white
- "intensity" : Overall intensity of the sky light. '300' is probably okay for a day level.
- "sunangle" : The yaw position of the sun, basically the horizontal direction.
- "pitch" : The vertical position of the sun. '-90' means straight down, '-45' is diagonal etc.
- "samples" : The amount of passes onto the lightmap, this is required for spread.
- "sunspreadangle" : The offset of each sample pass in degrees, basically horizontal jitter.
- "filterradius" : Blur amount for each pass. This will make cloud scenes work well.
-------- NOTES --------
# NOTES
Only one is effective per map.
Sun light generally is white, unless the atmosphere/horizon is coloring it.
The ambientcolor should generally be set to that of the skybox for the most
@ -45,7 +46,7 @@ For cloudly/overcast skies, I'd recommend setting the 'pitch' to '-45', then
of at least '1'. This will ensure that the sunlight will be cast diagonally
from 4 positions across the entire horizon - thus eliminating any harsh shadows.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED point_message (0.2 1 0.2) (-8 -8 -8) (8 8 8)
/*!QUAKED point_message (0.2 1 0.2) (-8 -8 -8) (8 8 8)
# OVERVIEW
Client-side overlay/message that is projected in relation to its position
in 3D space.
-------- KEYS --------
"message" : The message to display.
"radius" : The radius in which it will appear.
# KEYS
- "message" : The message to display.
- "radius" : The radius in which it will appear.
-------- NOTES --------
# NOTES
Used for zoo and test maps in which less interactive overlays are desired.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class point_message:NSEntity
{
public:

View File

@ -14,25 +14,25 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED sky_camera (1 0.3 1) (-8 -8 -8) (8 8 8)
Defines the position of a skyroom camera.
-------- KEYS --------
"scale" : Scale modifier. Default is "16".
-------- NOTES --------
You want to put this into a dedicated room that contains a 3D skybox.
The scale modifier is more like a divider. You want to keep these
divisable by 2 to avoid any precision funkyness.
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
var int autocvar_dev_skyscale = 0;
var vector g_skypos;
var int g_skyscale;
/*!QUAKED sky_camera (1 0.3 1) (-8 -8 -8) (8 8 8)
# OVERVIEW
Defines the position of a skyroom camera.
# KEYS
- "scale" : Scale modifier. Default is "16".
# NOTES
You want to put this into a dedicated room that contains a 3D skybox.
The scale modifier is more like a divider. You want to keep these
divisable by 2 to avoid any precision funkyness.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
sky_camera:NSEntity
{

View File

@ -14,22 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED button_target (0 .5 .8) ? BUTTA_USE BUTTA_TEXON
Non-moving button that can either be used by hand, or shot.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"delay" : Time until target is triggered.
-------- SPAWNFLAGS --------
BUTTA_USE : Button becomes 'use' only, clients have to interact with it manually instead of shooting it.
BUTTA_TEXON : Texture choices will be inverted in case multiple frames exist.
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
/** Spawnflags that button_target supports. */
typedef enumflags
{
@ -37,6 +21,22 @@ typedef enumflags
BUTTA_TEXON /**< Button texture starts in the **ON** state. */
} sf_button_target_t;
/*!QUAKED button_target (0 .5 .8) ? BUTTA_USE BUTTA_TEXON
# OVERVIEW
Non-moving button that can either be used by hand, or shot.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "delay" : Time in seconds until target is triggered.
# SPAWNFLAGS
- BUTTA_USE (1) : Button becomes 'use' only, clients have to interact with it manually instead of shooting it.
- BUTTA_TEXON (2) : Texture choices will be inverted in case multiple frames exist.
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
button_target:NSSurfacePropEntity
{
@ -46,7 +46,6 @@ public:
virtual void Respawn(void);
virtual void Trigger(entity,int);
virtual void Damage(void);
};
void

View File

@ -14,25 +14,25 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED cycler (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED cycler (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Animation cycler entity. For development purposes mainly.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"angles" : Sets the pitch, yaw and roll angles of the model.
"sequence" : Sets the animation the model should start in.
"model" : Model file that will be displayed by the entity.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "sequence" : Sets the animation the model should start in.
- "model" : Model file that will be displayed by the entity.
-------- NOTES --------
# NOTES
Upon damage, the cycler will switch between all available animation
sequences. This is really for test-maps and showroom entities.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
cycler:NSSurfacePropEntity
{

View File

@ -14,20 +14,20 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED cycler_sprite (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED cycler_sprite (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Decorative, does nothing yet.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"angles" : Sets the pitch, yaw and roll angles of the model.
"model" : Model file that will be displayed by the entity.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "model" : Model file that will be displayed by the entity.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
cycler_sprite:NSRenderableEntity
{

View File

@ -14,34 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_beverage (1 0 0) (-8 -8 -8) (8 8 8)
Upon triggered, the entity will spawn item_food in its place in
the shape of a soda can.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"health" : Amount of soda-cans that can be dispensed at maximum
"angles" : Sets the pitch, yaw and roll angles of the soda
"skin" : Sets the beverage type. Values from 0-6 are valid. Check notes.
-------- NOTES --------
Mainly used in vending machines. You can choose a few select types of beverage.
Beverage-list:
0 : Coca Cola
1 : Sprite
2 : Diet Coke
3 : Orange
4 : Surge
5 : Moxie
6 : Random (will pack one of the above, picked at the start of the map)
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
/* dependency from item_food.cpp */
void item_sodacan(void);
@ -56,6 +28,34 @@ typedef enum
SKIN_RANDOM
} sodaskin_t;
/*!QUAKED env_beverage (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Upon triggered, the entity will spawn item_food in its place in
the shape of a soda can.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "health" : Amount of soda-cans that can be dispensed at maximum
- "angles" : Sets the pitch, yaw and roll angles of the soda
- "skin" : Sets the beverage type. Values from 0-6 are valid. Check notes.
# NOTES
Mainly used in vending machines. You can choose a few select types of beverage.
Beverage-list:
- 0 : Coca Cola
- 1 : Sprite
- 2 : Diet Coke
- 3 : Orange
- 4 : Surge
- 5 : Moxie
- 6 : Random (will pack one of the above, picked at the start of the map)
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_beverage:NSRenderableEntity
{

View File

@ -14,27 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_explosion (1 0 0) (-8 -8 -8) (8 8 8) ENVEXPLO_NODAMAGE ENVEXPLO_REPEATABLE ENVEXPLO_NOBALL ENVEXPLO_NOSMOKE ENVEXPLO_NODECAL ENVEXPLO_NOSPARKS
When triggered, creates an explosion at its location.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"iMagnitude" : Magnitude of the explosion.
-------- SPAWNFLAGS --------
ENVEXPLO_NODAMAGE : Make this explosion purely decorative, without radius damage.
ENVEXPLO_REPEATABLE : Makes this explosion triggerable more than once.
ENVEXPLO_NOBALL : Spawn no fireball.
ENVEXPLO_NOSMOKE : Spawn no smoke.
ENVEXPLO_NODECAL : Leave no decal upon explosion.
ENVEXPLO_NOSPARKS : Don't spawn any sparks upon exploding.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
ENVEXPLO_NODAMAGE,
@ -45,6 +24,27 @@ enumflags
ENVEXPLO_NOSPARKS
};
/*!QUAKED env_explosion (1 0 0) (-8 -8 -8) (8 8 8) ENVEXPLO_NODAMAGE ENVEXPLO_REPEATABLE ENVEXPLO_NOBALL ENVEXPLO_NOSMOKE ENVEXPLO_NODECAL ENVEXPLO_NOSPARKS
# OVERVIEW
When triggered, creates an explosion at its location.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "iMagnitude" : Magnitude of the explosion.
# SPAWNFLAGS
- ENVEXPLO_NODAMAGE (1) : Make this explosion purely decorative, without radius damage.
- ENVEXPLO_REPEATABLE (2) : Makes this explosion triggerable more than once.
- ENVEXPLO_NOBALL (4) : Spawn no fireball.
- ENVEXPLO_NOSMOKE (8) : Spawn no smoke.
- ENVEXPLO_NODECAL (16) : Leave no decal upon explosion.
- ENVEXPLO_NOSPARKS (32) : Don't spawn any sparks upon exploding.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_explosion:NSPointTrigger
{

View File

@ -14,27 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_fade (0 0 0) (-8 -8 -8) (8 8 8) EVF_FADEDROM EVF_MODULATE EVF_ONLYUSER
Overlay that blinds/obscures players vision when triggered.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"rendercolor" : RGB8 Color of the fade effect.
"renderamt" : A8 alpha value we'll hit at max.
"duration" : Duration of the effect in seconds.
"holdtime" : How long we'll hold on the max color/alpha.
-------- SPAWNFLAGS --------
EVF_FADEDROM : Inverts the fading animation.
EVF_MODULATE : Modulate tints the image after "rendercolor" instead of obscuring it.
EVF_ONLYUSER : Don't blind everyone, just the activator.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
EVF_FADEDROM,
@ -42,6 +21,27 @@ enumflags
EVF_ONLYUSER
};
/*!QUAKED env_fade (0 0 0) (-8 -8 -8) (8 8 8) EVF_FADEDROM EVF_MODULATE EVF_ONLYUSER
# OVERVIEW
Overlay that blinds/obscures players vision when triggered.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "rendercolor" : RGB8 Color of the fade effect.
- "renderamt" : A8 alpha value we'll hit at max.
- "duration" : Duration of the effect in seconds.
- "holdtime" : How long we'll hold on the max color/alpha.
# SPAWNFLAGS
- EVF_FADEDROM (1) : Inverts the fading animation.
- EVF_MODULATE (2) : Modulate tints the image after "rendercolor" instead of obscuring it.
- EVF_ONLYUSER (4) : Don't blind everyone, just the activator.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_fade:NSRenderableEntity
{

View File

@ -14,26 +14,26 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_global (1 0 0) (-8 -8 -8) (8 8 8) GLOBAL_SETSPAWN
Persistent storage for variables that carry over level changes.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"globalstate" : The variable name in which we hold information in.
"initialstate" : Initial mode: 0 = off, 1 = on, 2 = dead
"triggermode" : Mode when triggered: 0 = off, 1 = on, 2 = dead
-------- SPAWNFLAGS --------
GLOBAL_SETSPAWN : Without this set, it'll only modify existing variables.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#define GLOBAL_SETSPAWN 1
/*!QUAKED env_global (1 0 0) (-8 -8 -8) (8 8 8) GLOBAL_SETSPAWN
# OVERVIEW
Persistent storage for variables that carry over level changes.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "globalstate" : The variable name in which we hold information in.
- "initialstate" : Initial mode: 0 = off, 1 = on, 2 = dead
- "triggermode" : Mode when triggered: 0 = off, 1 = on, 2 = dead
# SPAWNFLAGS
- GLOBAL_SETSPAWN (1) : Without this set, it'll only modify existing variables.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_global:NSPointTrigger
{

View File

@ -14,25 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_hudhint (0 0 0) (-8 -8 -8) (8 8 8) EHH_ALLPLAYERS
Will display a hint message to the client who activates it.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"rendercolor" : RGB8 Color of the fade effect.
"renderamt" : A8 alpha value we'll hit at max.
"duration" : Duration of the effect in seconds.
"holdtime" : How long we'll hold on the max color/alpha.
-------- SPAWNFLAGS --------
EHH_ALLPLAYERS : Send the hint notifcation to all connected clients.
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
void env_hudhint_send(entity eActivator, string strMessage, int iFlags);
enumflags
@ -40,6 +21,25 @@ enumflags
EHH_ALLPLAYERS
};
/*!QUAKED env_hudhint (0 0 0) (-8 -8 -8) (8 8 8) EHH_ALLPLAYERS
# OVERVIEW
Will display a hint message to the client who activates it.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "rendercolor" : RGB8 Color of the fade effect.
- "renderamt" : A8 alpha value we'll hit at max.
- "duration" : Duration of the effect in seconds.
- "holdtime" : How long we'll hold on the max color/alpha.
# SPAWNFLAGS
- EHH_ALLPLAYERS (1) : Send the hint notifcation to all connected clients.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
env_hudhint:NSPointTrigger
{

View File

@ -14,32 +14,32 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_message (1 0 0) (-8 -8 -8) (8 8 8) EMF_ONCE EMF_ALLPLAYERS
Displays a basic message or titles.txt entry.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"message" : Message to send to players
"messagesound" : PCM sample to play when triggered. Leave empty if desired.
"messagevolume" : PCM sample volume. Only relevant when "messagesound" is set.
"messageattenuation" : PCM sample attenuation. Ditto.
-------- SPAWNFLAGS --------
EMF_ONCE : Removes itself after being triggered once.
EMF_ALLPLAYERS : Send the message to all clients instead of only the activator.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
EMF_ONCE,
EMF_ALLPLAYERS
};
/*!QUAKED env_message (1 0 0) (-8 -8 -8) (8 8 8) EMF_ONCE EMF_ALLPLAYERS
# OVERVIEW
Displays a basic message or titles.txt entry.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "message" : Message to send to players
- "messagesound" : PCM sample to play when triggered. Leave empty if desired.
- "messagevolume" : PCM sample volume. Only relevant when "messagesound" is set.
- "messageattenuation" : PCM sample attenuation. Ditto.
# SPAWNFLAGS
- EMF_ONCE (1) : Removes itself after being triggered once.
- EMF_ALLPLAYERS (2) : Send the message to all clients instead of only the activator.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_message:NSPointTrigger
{

View File

@ -14,59 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_render (1 0 0) (-8 -8 -8) (8 8 8) SF_NORENDERFX SF_NORENDERAMT SF_NORENDERMODE SF_NORENDERCOLOR
Changes the visual appearance of a target.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"rendermode" : Render-Mode the target changes to.
"renderamt" : Render-Amount the target changes to.
"rendercolor" : Render-Color the target changes to.
"renderfx" : Render-FX the target changes to.
-------- SPAWNFLAGS --------
SF_NORENDERFX : Don't set the Render-FX attribute on the target.
SF_NORENDERAMT : Don't set the Render-Amount attribute on the target.
SF_NORENDERMODE : Don't set the Render-Mode attribute on the target.
SF_NORENDERCOLOR : Don't set the Render-Color attribute on the target.
-------- NOTES --------
The Render-FX values are currently unimplemented, except for the hologram setting.
Supported Render-Mode ("rendermode") values:
0 : Normal; Default.
1 : Color; Tints the entity after whatever "rendercolor" is set to.
2 : Texture; ???
3 : Glow; object scales against the camera depending on distance like a flare.
4 : Solid; Make transparent by respecting transparent pixels (GoldSrc)
5 : Additive; Blend the object additively against the world.
6 : Fullbright; Render the object without lighting.
Supported Render-FX ("renderfx") values:
0 : Normal
1 : Slow pulse
2 : Fast pulse
3 : Slow, wide, pulse
4 : Fast, wide, pulse
5 : Slow fade away
6 : Fast fade away
7 : Slow become solid
8 : Fast become solid
9 : Slow strobe
10 : Fast strobe
11 : Faster strobe
12 : Slow flicker
13 : Fast flicker
14 : Constant glow
15 : Distort
16 : Hologram
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
SF_NORENDERFX,
@ -75,6 +22,59 @@ enumflags
SF_NORENDERCOLOR
};
/*!QUAKED env_render (1 0 0) (-8 -8 -8) (8 8 8) SF_NORENDERFX SF_NORENDERAMT SF_NORENDERMODE SF_NORENDERCOLOR
# OVERVIEW
Changes the visual appearance of a target.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "rendermode" : Render-Mode the target changes to.
- "renderamt" : Render-Amount the target changes to.
- "rendercolor" : Render-Color the target changes to.
- "renderfx" : Render-FX the target changes to.
# SPAWNFLAGS
- SF_NORENDERFX (1) : Don't set the Render-FX attribute on the target.
- SF_NORENDERAMT (2) : Don't set the Render-Amount attribute on the target.
- SF_NORENDERMODE (4) : Don't set the Render-Mode attribute on the target.
- SF_NORENDERCOLOR (8) : Don't set the Render-Color attribute on the target.
# NOTES
The Render-FX values are currently unimplemented, except for the hologram setting.
Supported Render-Mode ("rendermode") values:
- 0 : Normal; Default.
- 1 : Color; Tints the entity after whatever "rendercolor" is set to.
- 2 : Texture; ???
- 3 : Glow; object scales against the camera depending on distance like a flare.
- 4 : Solid; Make transparent by respecting transparent pixels (GoldSrc)
- 5 : Additive; Blend the object additively against the world.
- 6 : Fullbright; Render the object without lighting.
Supported Render-FX ("renderfx") values:
- 0 : Normal
- 1 : Slow pulse
- 2 : Fast pulse
- 3 : Slow, wide, pulse
- 4 : Fast, wide, pulse
- 5 : Slow fade away
- 6 : Fast fade away
- 7 : Slow become solid
- 8 : Fast become solid
- 9 : Slow strobe
- 10 : Fast strobe
- 11 : Faster strobe
- 12 : Slow flicker
- 13 : Fast flicker
- 14 : Constant glow
- 15 : Distort
- 16 : Hologram
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_render:NSRenderableEntity
{

View File

@ -14,27 +14,27 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_shake (1 0.5 0) (-8 -8 -8) (8 8 8) EVS_GLOBAL
Causes an earthquake/shaking effect when triggered.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"radius" : Radius of the quake/shake effect.
"amplitude" : Amplitude of the effect.
"duration" : Duration of the effect in seconds.
"frequency" : The frequency of the shake.
-------- SPAWNFLAGS --------
EVS_GLOBAL : Affect all clients, ignoring "radius" entirely.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#define EVS_GLOBAL 1
/*!QUAKED env_shake (1 0.5 0) (-8 -8 -8) (8 8 8) EVS_GLOBAL
# OVERVIEW
Causes an earthquake/shaking effect when triggered.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "radius" : Radius of the quake/shake effect.
- "amplitude" : Amplitude of the effect.
- "duration" : Duration of the effect in seconds.
- "frequency" : The frequency of the shake.
# SPAWNFLAGS
- EVS_GLOBAL : Affect all clients, ignoring "radius" entirely.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_shake:NSPointTrigger
{

View File

@ -14,29 +14,29 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_shooter (1 0 0) (-8 -8 -8) (8 8 8) EVSHOOTER_REPEATABLE
Shoots model entities from its location.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"angles" : Sets the pitch, yaw and roll direction of the shooter.
"shootmodel" : Model file to shoot.
"shootsounds" : PCM sample to play whenever a piece shoots out.
"m_iGibs" : Amount of models shot in total.
"m_flDelay" : Delay before being able to be fired again.
"m_flVelocity" : Speed of the models in units per second.
"m_flVariance" : Delay between shots.
"m_flGibLife" : Life of the individual model piece.
"scale" : Scale modifier of the model pieces.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#define EVSHOOTER_REPEATABLE 1
/*!QUAKED env_shooter (1 0 0) (-8 -8 -8) (8 8 8) EVSHOOTER_REPEATABLE
# OVERVIEW
Shoots model entities from its location.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "angles" : Sets the pitch, yaw and roll direction of the shooter.
- "shootmodel" : Model file to shoot.
- "shootsounds" : PCM sample to play whenever a piece shoots out.
- "m_iGibs" : Amount of models shot in total.
- "m_flDelay" : Delay before being able to be fired again.
- "m_flVelocity" : Speed of the models in units per second.
- "m_flVariance" : Delay between shots.
- "m_flGibLife" : Life of the individual model piece.
- "scale" : Scale modifier of the model pieces.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_shooter:NSPointTrigger
{

View File

@ -14,28 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED env_spark (1 0 0) (-8 -8 -8) (8 8 8) x x x x x EVSPARK_TOGGLE EVSPARK_STARTON
Creates a series (or just one) spark effect with sound when triggered.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"angles" : Sets the pitch, yaw and roll angles of the spark.
"MaxDelay" : Delay between sparks when start-on (or toggle) is set
-------- SPAWNFLAGS --------
EVSPARK_TOGGLE : When triggered, it'll spark continously with "MaxDelay" dictating the interval.
EVSPARK_STARTON : Start sparking upon spawning, at least waiting til "MaxDelay" seconds has passed.
-------- NOTES --------
The spawnflags EVSPARK_TOGGLE and EVSPARK_STARTON are often used together.
Without them set, it'll of course only spark once whenever it's triggered.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
EVSPARK_UNUSED1,
@ -47,6 +25,28 @@ enumflags
EVSPARK_STARTON
};
/*!QUAKED env_spark (1 0 0) (-8 -8 -8) (8 8 8) x x x x x EVSPARK_TOGGLE EVSPARK_STARTON
# OVERVIEW
Creates a series (or just one) spark effect with sound when triggered.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "angles" : Sets the pitch, yaw and roll angles of the spark.
- "MaxDelay" : Delay between sparks when start-on (or toggle) is set
# SPAWNFLAGS
- EVSPARK_TOGGLE (32) : When triggered, it'll spark continously with "MaxDelay" dictating the interval.
- EVSPARK_STARTON (64) : Start sparking upon spawning, at least waiting til "MaxDelay" seconds has passed.
# NOTES
The spawnflags EVSPARK_TOGGLE and EVSPARK_STARTON are often used together.
Without them set, it'll of course only spark once whenever it's triggered.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
env_spark:NSPointTrigger
{

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_areaportal (0 .5 .8) ?
/*!QUAKED func_areaportal (0 .5 .8) ?
# OVERVIEW
Manages a space between two areas.
Requires to be positioned within an areaportal helper brush.
-------- KEYS --------
"targetname" : Name
"StartOpen" : Sets the initial state. If 1 the portal will start open.
# KEYS
- "targetname" : Name
- "StartOpen" : Sets the initial state. If 1 the portal will start open.
-------- INPUTS --------
"Open" : Open the areaportal.
"Close" : Close the areaportal.
"Toggle" : Toggle the areaportal.
# INPUTS
- "Open" : Open the areaportal.
- "Close" : Close the areaportal.
- "Toggle" : Toggle the areaportal.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake II (1997).
*/
class
func_areaportal:NSEntity
{

View File

@ -14,43 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_breakable (0 .5 .8) ? SF_TRIGGER SF_TOUCH SF_PRESSURE
Brush volume that can break into lots of little pieces.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"health" : Health of the entity.
"material" : Material it's made of (See material-list below).
"delay" : Delay in seconds of when it breaks under pressure.
"explodemagnitude" : Strength of the explosion.
-------- SPAWNFLAGS --------
SF_TRIGGER : Breakable is invincible and has to be triggered in order to break.
SF_TOUCH : Break when an entity collides into it at high speed (damage is speed in units * 0.01).
SF_PRESSURE : Initiate break once someone is standing on top of it.
-------- NOTES --------
The strength of the explosion decides the radius (magnitude * 2.5) and the
maximum damage the explosion will do in the center. It has a linear fall-off.
Material-list:
0 : Glass
1 : Wood
2 : Metal
3 : Flesh
4 : Cinder
5 : Tile
6 ; Computer
7 : Glass (Unbreakable)
8 : Rock
9 : None
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
SF_TRIGGER,
@ -115,6 +78,43 @@ const string funcbreakable_surftable[] = {
"gs_material_rocks"
};
/*!QUAKED func_breakable (0 .5 .8) ? SF_TRIGGER SF_TOUCH SF_PRESSURE
# OVERVIEW
Brush volume that can break into lots of little pieces.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "health" : Health of the entity.
- "material" : Material it's made of (See material-list below).
- "delay" : Delay in seconds of when it breaks under pressure.
- "explodemagnitude" : Strength of the explosion.
# SPAWNFLAGS
- SF_TRIGGER (1) : Breakable is invincible and has to be triggered in order to break.
- SF_TOUCH (2) : Break when an entity collides into it at high speed (damage is speed in units * 0.01).
- SF_PRESSURE (4) : Initiate break once someone is standing on top of it.
# NOTES
The strength of the explosion decides the radius (magnitude * 2.5) and the
maximum damage the explosion will do in the center. It has a linear fall-off.
Material-list:
- 0 : Glass
- 1 : Wood
- 2 : Metal
- 3 : Flesh
- 4 : Cinder
- 5 : Tile
- 6 ; Computer
- 7 : Glass (Unbreakable)
- 8 : Rock
- 9 : None
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_breakable:NSSurfacePropEntity
{

View File

@ -14,19 +14,20 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_brush (0 .5 .8) ?
/*!QUAKED func_brush (0 .5 .8) ?
# OVERVIEW
Combination of func_illusionary, func_wall, func_wall_toggle.
When triggered, it'll become invisible and lose its collision.
-------- KEYS --------
"targetname" : Name
"Solidity" : Mode for choosing solidity. 0 : Toggle, 1 : Never, 2 : Always.
"StartDisabled" : Will make it spawn invisible.
"solidbsp" : Type of collision model to choose. 0 : Per-Poly, 1 : BSP file.
"excludednpc" : Name of the NPC classname that will not collide with this entity
"invert_exclusion" : Set to 1 if you want the 'excludednpc' key to act inverted
# KEYS
- "targetname" : Name
- "Solidity" : Mode for choosing solidity. 0 : Toggle, 1 : Never, 2 : Always.
- "StartDisabled" : Will make it spawn invisible.
- "solidbsp" : Type of collision model to choose. 0 : Per-Poly, 1 : BSP file.
- "excludednpc" : Name of the NPC classname that will not collide with this entity
- "invert_exclusion" : Set to 1 if you want the 'excludednpc' key to act inverted
-------- NOTES --------
# NOTES
The main thing func_brush is concerned with is appearance.
When you trigger it on/off, it'll be made visible/invisible.
Collision however depends on the setting of the "Solidity" key.
@ -34,10 +35,9 @@ If "Solidity" is toggle, the collision will ne enabled/disabled depending
on whether or not the entity is visible/invisible.
By default it's visible and has collision.
-------- HISTORY --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
func_brush:NSRenderableEntity
{

View File

@ -14,43 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_button (0 .5 .8) ? SF_BTT_NOMOVE x x x x SF_BTT_TOGGLE SF_BTT_SPARKS x SF_BTT_TOUCH_ONLY
A brush entity which can be used either by touching, interaction (via a games'
use-key/button or other targetting methods.
It will then travel, similar to a door to a specified direction.
Once it's fully pushed in, it'll trigger its targets, then return back to its
original position.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"speed" : Movement speed of the door in game-units per second.
"lip" : How many units remain visible when fully pushed in.
"snd_pressed" : The sound shader name to play when pressed down.
"snd_unpressed" : The sound shader name to play when the button becomes raised.
"wait" : Time to wait in seconds before the button becomes raised.
"delay" : Delay until the Target gets triggered.
"sounds" : Obsolete legacy key for HL/Q1 style buttons to decide which sounds to play.
"health" : Amount of damage this button takes before it triggers. Will reset.
-------- OUTPUTS --------
"OnDamaged" : Fired when the button is damaged.
"OnPressed" : Fired when the button is pressed.
"OnUseLocked" : Fired when the button is used while locked.
"OnIn" : Fired when the button reaches the in/pressed position.
"OnOut" : Fired when the button reaches the out/released position.
-------- SPAWNFLAGS --------
SF_BTT_NOMOVE : Don't move when it's activated.
SF_BTT_TOGGLE : Don't move back to the raised state automatically.
SF_BTT_SPARKS : Spawn decorative sparks when used.
SF_BTT_TOUCH_ONLY : Disable 'use' key/button. Only collision will activate it.
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
enumflags
{
SF_BTT_NOMOVE,
@ -78,6 +41,43 @@ enum
FRAME_ON
};
/*!QUAKED func_button (0 .5 .8) ? SF_BTT_NOMOVE x x x x SF_BTT_TOGGLE SF_BTT_SPARKS x SF_BTT_TOUCH_ONLY
# OVERVIEW
A brush entity which can be used either by touching, interaction (via a games'
use-key/button or other targetting methods.
It will then travel, similar to a door to a specified direction.
Once it's fully pushed in, it'll trigger its targets, then return back to its
original position.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "speed" : Movement speed of the door in game-units per second.
- "lip" : How many units remain visible when fully pushed in.
- "snd_pressed" : The sound shader name to play when pressed down.
- "snd_unpressed" : The sound shader name to play when the button becomes raised.
- "wait" : Time to wait in seconds before the button becomes raised.
- "delay" : Delay until the Target gets triggered.
- "sounds" : Obsolete legacy key for HL/Q1 style buttons to decide which sounds to play.
- "health" : Amount of damage this button takes before it triggers. Will reset.
-------- OUTPUTS --------
- "OnDamaged" : Fired when the button is damaged.
- "OnPressed" : Fired when the button is pressed.
- "OnUseLocked" : Fired when the button is used while locked.
- "OnIn" : Fired when the button reaches the in/pressed position.
- "OnOut" : Fired when the button reaches the out/released position.
# SPAWNFLAGS
- SF_BTT_NOMOVE (1) : Don't move when it's activated.
- SF_BTT_TOGGLE (32) : Don't move back to the raised state automatically.
- SF_BTT_SPARKS (64) : Spawn decorative sparks when used.
- SF_BTT_TOUCH_ONLY (256) : Disable 'use' key/button. Only collision will activate it.
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
func_button:NSSurfacePropEntity
{

View File

@ -14,21 +14,25 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_conveyor (0 .5 .8) ?
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
STUB!
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#define SF_CONVEYOR_VISUAL 1
#define SF_CONVEYOR_NOTSOLID 2
/*!QUAKED func_conveyor (0 .5 .8) ? SF_CONVEYOR_VISUAL SF_CONVEYOR_NOTSOLID
# OVERVIEW
A conveyor belt entity. Texture will move along in the direction and speed of the conveyor.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
# SPAWNFLAGS
- SF_CONVEYOR_VISUAL (1) : This conveyor does not affect entities physically.
- SF_CONVEYOR_NOTSOLID (2) : This conveyor is non-solid.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_conveyor:NSRenderableEntity
{

View File

@ -14,18 +14,19 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_detail (0 .5 .8) ?
/*!QUAKED func_detail (0 .5 .8) ?
# OVERVIEW
A "fake" entity for level editors.
All geometry that's turned into a func_detail will be ignored during VIS.
This will speed up compile time and reduce tesselation, in theory.
-------- KEYS --------
"_rs" : Specifies if the geometry will recieve shadows (RAD lighting).
"_cs" : Specifies if the geometry will cast shadows (RAD lighting).
# KEYS
- "_rs" : Specifies if the geometry will recieve shadows (RAD lighting).
- "_cs" : Specifies if the geometry will cast shadows (RAD lighting).
-------- NOTES --------
# NOTES
If you don't want this entity to have collision, consider using func_detail_illusionary.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake II (1997).
*/

View File

@ -14,19 +14,20 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_detail_illusionary (0 .5 .8) ?
/*!QUAKED func_detail_illusionary (0 .5 .8) ?
# OVERVIEW
A "fake" entity for level editors.
It is almost identical to func_detail except that it has no collision.
Think of it as an alternative to func_illusionary and nonsolid surfaceparms,
except that it does not use an entity slot or require custom materials.
-------- KEYS --------
"_rs" : Specifies if the geometry will recieve shadows (RAD lighting).
"_cs" : Specifies if the geometry will cast shadows (RAD lighting).
# KEYS
- "_rs" : Specifies if the geometry will recieve shadows (RAD lighting).
- "_cs" : Specifies if the geometry will cast shadows (RAD lighting).
-------- NOTES --------
# NOTES
If you want this entity to have collision, consider using func_detail.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake II (1997).
*/

View File

@ -14,43 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_door (0 .5 .8) ? SF_MOV_OPEN x SF_MOV_UNLINK SF_MOV_PASSABLE x SF_MOV_TOGGLE x x SF_MOV_USE
This sliding door entity has the ability to slide forth and back on any
axis. It is often used for primitive elevators as well.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"speed" : Movement speed in game-units per second.
"lip" : Sets how many units are still visible after a door moved.
"delay" : Time until triggering target.
"wait" : When to move back.
"netname" : Target to trigger when door returns to its initial position.
"dmg" : Damage to inflict upon anything blocking the way.
"snd_open" : Sound shader to play for when the door opens.
"snd_close" : Sound shader to play for when the door closes.
"snd_stop" : Sound shader to play for when the door stops moving.
"movesnd" : Legacy integer value pointing to a predefined move sound.
"stopsnd" : Legacy integer value pointing to a predefined stop sound.
"forceclosed": Will make sure the door will not bounce back when something is blocking it
-------- SPAWNFLAGS --------
SF_MOV_OPEN : Swaps the positions between raised and lowered state.
SF_MOV_UNLINK : Currently unimplemented.
SF_MOV_PASSABLE : Don't test against any collision with this door.
SF_MOV_TOGGLE : Door cannot be opened by physical means, only by a trigger.
SF_MOV_USE : Players can press the "use" button/key to activate this door.
-------- NOTES --------
The keys "movesnd" and "stopsnd" are obsolete. Their values point towards
the samples doors/doormoveX.wav and doors/doorstopX.wav respectively, where
X is the integer value set in "movesnd" and "stopsnd".
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
enumflags {
SF_MOV_OPEN,
SF_MOV_RESERVED1,
@ -71,6 +34,43 @@ enum
DOORSTATE_DOWN
};
/*!QUAKED func_door (0 .5 .8) ? SF_MOV_OPEN x SF_MOV_UNLINK SF_MOV_PASSABLE x SF_MOV_TOGGLE x x SF_MOV_USE
# OVERVIEW
This sliding door entity has the ability to slide forth and back on any
axis. It is often used for primitive elevators as well.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "speed" : Movement speed in game-units per second.
- "lip" : Sets how many units are still visible after a door moved.
- "delay" : Time until triggering target.
- "wait" : When to move back.
- "netname" : Target to trigger when door returns to its initial position.
- "dmg" : Damage to inflict upon anything blocking the way.
- "snd_open" : Sound shader to play for when the door opens.
- "snd_close" : Sound shader to play for when the door closes.
- "snd_stop" : Sound shader to play for when the door stops moving.
- "movesnd" : Legacy integer value pointing to a predefined move sound.
- "stopsnd" : Legacy integer value pointing to a predefined stop sound.
- "forceclosed": Will make sure the door will not bounce back when something is blocking it
# SPAWNFLAGS
- SF_MOV_OPEN : Swaps the positions between raised and lowered state.
- SF_MOV_UNLINK : Currently unimplemented.
- SF_MOV_PASSABLE : Don't test against any collision with this door.
- SF_MOV_TOGGLE : Door cannot be opened by physical means, only by a trigger.
- SF_MOV_USE : Players can press the "use" button/key to activate this door.
# NOTES
The keys "movesnd" and "stopsnd" are obsolete. Their values point towards
the samples doors/doormoveX.wav and doors/doorstopX.wav respectively, where
X is the integer value set in "movesnd" and "stopsnd".
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
func_door:NSRenderableEntity
{

View File

@ -14,43 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_door_rotating (0 .5 .8) ? SF_ROT_OPEN SF_ROT_BACKWARDS x SF_ROT_PASSABLE SF_ROT_ONEWAY SF_ROT_TOGGLE SF_ROT_ZAXIS SF_ROT_XAXIS SF_ROT_USE SF_ROT_NOMONSTERS
Rotating brush door entity. It's basically the same as func_door, it just does
not move on any axis, it tilts along a pivot point defined by an origin brush.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"speed" : Speed at which the door turns.
"snd_open" : Sound shader to play for when the door opens.
"snd_close" : Sound shader to play for when the door closes.
"snd_stop" : Sound shader to play for when the door stops rotating.
"movesnd" : Legacy integer value pointing to a predefined move sound.
"stopsnd" : Legacy integer value pointing to a predefined stop sound.
"distance" : The degrees which the door will turn.
"dmg" : The damage inflicted upon objects blocking the way of the door.
"wait" : Time that has to pass for the door to automatically close.
"netname" : Target to trigger when the door closes back up.
-------- SPAWNFLAGS --------
SF_ROT_OPEN : Door is in the open position by default.
SF_ROT_BACKWARDS : Flip the direction of a one-way door.
SF_ROT_PASSABLE : Door has no collision model to speak of.
SF_ROT_ONEWAY : Door will only open one-way as opposed to both ways.
SF_ROT_TOGGLE : Door will have to be triggered by something to open/close.
SF_ROT_ZAXIS : Door will tilt along the Z axis.
SF_ROT_XAXIS : Door will tilt on the X axis.
SF_ROT_USE : Player has to press the 'use' key to interact with it.
SF_ROT_NOMONSTERS : Monsters cannot open this door.
-------- NOTES --------
Please include an origin brush so that a pivot point will be defined.
-------- TRIVIA --------
This entity was introduced in Quake II (1997).
*/
enumflags
{
SF_ROT_OPEN,
@ -67,6 +30,43 @@ enumflags
#define SF_DOOR_SILENT 0x80000000i
/*!QUAKED func_door_rotating (0 .5 .8) ? SF_ROT_OPEN SF_ROT_BACKWARDS x SF_ROT_PASSABLE SF_ROT_ONEWAY SF_ROT_TOGGLE SF_ROT_ZAXIS SF_ROT_XAXIS SF_ROT_USE SF_ROT_NOMONSTERS
# OVERVIEW
Rotating brush door entity. It's basically the same as func_door, it just does
not move on any axis, it tilts along a pivot point defined by an origin brush.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "speed" : Speed at which the door turns.
- "snd_open" : Sound shader to play for when the door opens.
- "snd_close" : Sound shader to play for when the door closes.
- "snd_stop" : Sound shader to play for when the door stops rotating.
- "movesnd" : Legacy integer value pointing to a predefined move sound.
- "stopsnd" : Legacy integer value pointing to a predefined stop sound.
- "distance" : The degrees which the door will turn.
- "dmg" : The damage inflicted upon objects blocking the way of the door.
- "wait" : Time that has to pass for the door to automatically close.
- "netname" : Target to trigger when the door closes back up.
# SPAWNFLAGS
- SF_ROT_OPEN (1) : Door is in the open position by default.
- SF_ROT_BACKWARDS (2) : Flip the direction of a one-way door.
- SF_ROT_PASSABLE (8) : Door has no collision model to speak of.
- SF_ROT_ONEWAY (16) : Door will only open one-way as opposed to both ways.
- SF_ROT_TOGGLE (32) : Door will have to be triggered by something to open/close.
- SF_ROT_ZAXIS (64) : Door will tilt along the Z axis.
- SF_ROT_XAXIS (128) : Door will tilt on the X axis.
- SF_ROT_USE (256) : Player has to press the 'use' key to interact with it.
- SF_ROT_NOMONSTERS (512) : Monsters cannot open this door.
# NOTES
Please include an origin brush so that a pivot point will be defined.
# TRIVIA
This entity was introduced in Quake II (1997).
*/
class
func_door_rotating:NSRenderableEntity
{

View File

@ -14,15 +14,16 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_group (0 .5 .8) ?
/*!QUAKED func_group (0 .5 .8) ?
# OVERVIEW
A "fake" entity for level editors, used to group together patches and
brushes for easy moving. All geometry in the group will become
worldspawn upon compile.
-------- KEYS --------
# KEYS
"_rs" : Specifies if the geometry will recieve shadows (RAD lighting).
"_cs" : Specifies if the geometry will cast shadows (RAD lighting).
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake III Arena (1999).
*/

View File

@ -14,22 +14,22 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_guntarget (0 .5 .8) ?
Gun targets brushes that trigger a target once they 'die'.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"health" : Health until it stops and triggers its targets.
"speed" : Speed in units per second at which it moves.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#define SF_GUNTARGET_ON 1
/*!QUAKED func_guntarget (0 .5 .8) ?
# OVERVIEW
Gun targets brushes that trigger a target once they 'die'.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "health" : Health until it stops and triggers its targets.
- "speed" : Speed in units per second at which it moves.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_guntarget:NSSurfacePropEntity
{

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_healthcharger (0 .5 .8) ?
/*!QUAKED func_healthcharger (0 .5 .8) ?
# OVERVIEW
Brush that fills up your health when used, to a maximum of 100 HP.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"snd_first" : Sound to play when first used.
"snd_charging" : Sound to play when first charging.
"snd_done" : Sound to play when first finished charging.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "snd_first" : Sound to play when first used.
- "snd_charging" : Sound to play when first charging.
- "snd_done" : Sound to play when first finished charging.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_healthcharger:NSRenderableEntity
{

View File

@ -14,20 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_mortar_field (0 .5 .8) ?
/*!QUAKED func_mortar_field (0 .5 .8) ?
# OVERVIEW
This brush volume acts as mortar drop area.
When triggered, it'll drop mortar shells straight to the ground (with a bit
of spread if specified).
-------- KEYS --------
"targetname" : Name
"m_flSpread" : Maximum spread in game-units
"m_flCount" : Number of bombs dropped per strike
"m_flControl" : Targeting type. 0 = random, 1 = activator, 2 = controlled
"m_iszXController" : Name of the momentary_rot_button providing X-offset
"m_iszYController" : Name of the momentary_rot_button providing Y-offset
# KEYS
- "targetname" : Name
- "m_flSpread" : Maximum spread in game-units
- "m_flCount" : Number of bombs dropped per strike
- "m_flControl" : Targeting type. 0 = random, 1 = activator, 2 = controlled
- "m_iszXController" : Name of the momentary_rot_button providing X-offset
- "m_iszYController" : Name of the momentary_rot_button providing Y-offset
-------- NOTES --------
# NOTES
It can be set to three different targeting modes, 0 will pick any
random point in the volume as a drop position. 1 will target the person or
entity activating it and 2 is a more complex mode which requires two
@ -38,10 +39,9 @@ between mortar shell drops) that I haven't implemented yet.
I'll turn those into map attribute keys so people can finally control
sound, damage, delay and so on.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_mortar_field:NSBrushTrigger
{

View File

@ -14,29 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_pendulum (0 .5 .8) ? FUNCPEND_STARTON x x FUNCPEND_NONSOLID FUNCPEND_RETURNONTRIGGER x FUNCPEND_XAXIS FUNCPEND_YAXIS
A brush that swings along a pivot point like a pendulum.
-------- KEYS --------
"targetname" : Name
"damp" : Dampening factor.
"distance" : Swinging distance in euler-angles.
"speed" : Speed at which it swings in units-per-second.
-------- SPAWNFLAGS --------
FUNCPEND_STARTON : Start swinging immediately.
FUNCPEND_NONSOLID : Don't do collision testing against this entity.
FUNCPEND_RETURNONTRIGGER : Once it gets triggered it'll return to its starting position.
FUNCPEND_XAXIS : Swing on the X-axis.
FUNCPEND_YAXIS : Swing on the Y-axis.
-------- NOTES --------
Please include an origin brush so that a pivot point will be defined.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
FUNCPEND_STARTON,
@ -49,6 +26,29 @@ enumflags
FUNCPEND_YAXIS
};
/*!QUAKED func_pendulum (0 .5 .8) ? FUNCPEND_STARTON x x FUNCPEND_NONSOLID FUNCPEND_RETURNONTRIGGER x FUNCPEND_XAXIS FUNCPEND_YAXIS
# OVERVIEW
A brush that swings along a pivot point like a pendulum.
# KEYS
- "targetname" : Name
- "damp" : Dampening factor.
- "distance" : Swinging distance in euler-angles.
- "speed" : Speed at which it swings in units-per-second.
# SPAWNFLAGS
- FUNCPEND_STARTON (1) : Start swinging immediately.
- FUNCPEND_NONSOLID (8) : Don't do collision testing against this entity.
- FUNCPEND_RETURNONTRIGGER (16) : Once it gets triggered it'll return to its starting position.
- FUNCPEND_XAXIS (64) : Swing on the X-axis.
- FUNCPEND_YAXIS (128) : Swing on the Y-axis.
# NOTES
Please include an origin brush so that a pivot point will be defined.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_pendulum:NSRenderableEntity
{

View File

@ -14,19 +14,19 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_physbox (0 .5 .8) ? x x x x x x x x x x x x FNCPHYBX_ASLEEP
Physics brush.
-------- KEYS --------
"targetname" : Name
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
#ifndef PHYSICS_STATIC
#define FNCPHYBX_ASLEEP 4096
/*!QUAKED func_physbox (0 .5 .8) ? x x x x x x x x x x x x FNCPHYBX_ASLEEP
# OVERVIEW
Physics brush.
# KEYS
- "targetname" : Name
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
func_physbox:NSPhysicsEntity
{

View File

@ -14,18 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_plat (0 .5 .8) ? FNCPLAT_TRIGGER
It's a simple elevator. It goes down... and back up.
-------- KEYS --------
"targetname" : Name
"speed" : Speed of the lift in units per second
"height" : Number of units the lift is supposed to move down
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
enumflags
{
FNCPLAT_TRIGGER,
@ -39,6 +27,25 @@ enum
PLATSTATE_DOWN
};
/*!QUAKED func_plat (0 .5 .8) ? FNCPLAT_TRIGGER
# OVERVIEW
It's a simple elevator. It goes down... and back up.
# KEYS
- "targetname" : Name
- "speed" : Speed of the lift in units per second
- "height" : Number of units the lift is supposed to move down
# SPAWNFLAGS
- FNCPLAT_TRIGGER (1) : Has to be triggered to move.
# NOTES
By default, touching the platform near its end/start point results in the platform
to be called up/down.
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
func_plat:NSRenderableEntity
{

View File

@ -14,23 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_platrot (0 .5 .8) ?
A vertically moving platform that rotates.
-------- KEYS --------
"targetname" : Name
"noise1" : Sound when moving
"noise2" : Sound when stopped
"speed" : Speed of rotation in u/s
"height" : Vertical travel distance
"rotation" : Rotation amount, in degrees
-------- NOTES --------
-------- HISTORY --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
FNCPLAT_TRIGGER,
@ -44,6 +27,25 @@ enum
PLATSTATE_DOWN
};
/*!QUAKED func_platrot (0 .5 .8) ?
# OVERVIEW
A vertically moving platform that rotates.
# KEYS
- "targetname" : Name
- "noise1" : Sound when moving
- "noise2" : Sound when stopped
- "speed" : Speed of rotation in u/s
- "height" : Vertical travel distance
- "rotation" : Rotation amount, in degrees
# NOTES
Spins.
-------- HISTORY --------
This entity was introduced in Half-Life (1998).
*/
class
func_platrot:NSRenderableEntity
{

View File

@ -14,23 +14,28 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_pushable (0 .5 .8) ? SF_TRIGGER SF_TOUCH SF_PRESSURE
/*!QUAKED func_pushable (0 .5 .8) ? SF_TRIGGER SF_TOUCH SF_PRESSURE
# OVERVIEW
This is essentially the same entity as a func_breakable, but
a player can push and pull it around the level.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
-------- NOTES --------
# SPAWNFLAGS
- SF_TRIGGER (1) : Break only when triggered.
- SF_TOUCH (2) : Touch can break.
- SF_PRESSURE (4) : Standing on top can break.
# NOTES
It uses stepping player physics to move around.
Please look at func_breakable for more entity keys, inputs and outputs.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_pushable:func_breakable
{

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_recharge (0 .5 .8) ?
/*!QUAKED func_recharge (0 .5 .8) ?
# OVERVIEW
Brush that fills up your armor when used, to a maximum of 100 points.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"snd_first" : Sound to play when first used.
"snd_charging" : Sound to play when first charging.
"snd_done" : Sound to play when first finished charging.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "snd_first" : Sound to play when first used.
- "snd_charging" : Sound to play when first charging.
- "snd_done" : Sound to play when first finished charging.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_recharge:NSRenderableEntity
{

View File

@ -14,31 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_rot_button (0 .5 .8) ? FNCROTBUT_NONSOLID FNCROTBUT_REVERSE x x x FNCROTBUT_TOGGLE FNCROTBUT_XAXIS FNCROTBUT_YAXIS FNCROTBUT_TOUCHABLE
A button that rotates along a pivot point. Used for valves, spigots and alike.
-------- KEYS --------
"targetname" : Name
"target" : Name of the entity to trigger when opened
"speed" : How fast the button rotates when activated.
"health" : If non-zero, the button must be damaged to turn.
"wait" : Time to wait before button resets itself. -1 makes it stay set.
"distance" : Distance in degrees the button will rotate.
-------- SPAWNFLAGS --------
FNCROTBUT_NONSOLID : Don't do collision testing against this entity.
FNCROTBUT_REVERSE : Rotate the counter-clockwise.
FNCROTBUT_TOGGLE : Can only be activated via trigger, not player interaction.
FNCROTBUT_XAXIS : Rotate along the X-axis.
FNCROTBUT_YAXIS : Rotate along the Y-axis.
-------- NOTES --------
Please include an origin brush so that a pivot point will be defined.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
FNCROTBUT_NONSOLID,
@ -60,6 +35,31 @@ enum
ROTBTNSTATE_CLOSING
};
/*!QUAKED func_rot_button (0 .5 .8) ? FNCROTBUT_NONSOLID FNCROTBUT_REVERSE x x x FNCROTBUT_TOGGLE FNCROTBUT_XAXIS FNCROTBUT_YAXIS FNCROTBUT_TOUCHABLE
# OVERVIEW
A button that rotates along a pivot point. Used for valves, spigots and alike.
# KEYS
- "targetname" : Name
- "target" : Name of the entity to trigger when opened
- "speed" : How fast the button rotates when activated.
- "health" : If non-zero, the button must be damaged to turn.
- "wait" : Time to wait before button resets itself. -1 makes it stay set.
- "distance" : Distance in degrees the button will rotate.
# SPAWNFLAGS
- FNCROTBUT_NONSOLID (1) : Don't do collision testing against this entity.
- FNCROTBUT_REVERSE (2) : Rotate the counter-clockwise.
- FNCROTBUT_TOGGLE (32) : Can only be activated via trigger, not player interaction.
- FNCROTBUT_XAXIS (64) : Rotate along the X-axis.
- FNCROTBUT_YAXIS (128) : Rotate along the Y-axis.
# NOTES
Please include an origin brush so that a pivot point will be defined.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_rot_button:NSSurfacePropEntity
{

View File

@ -14,36 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_rotating (0 .5 .8) ? FR_STARTON FR_REVERSE FR_ZAXIS FR_XAXIS FR_ACCDCC FR_FANPAIN FR_NOTSOLID FR_SMALLRADIUS FR_MRADIUS FR_LRADIUS FR_TOGGLEDIR
Rotating brush object. Useful for fans, etc.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"speed" : Speed in units per second.
"dmg" : Damage applied to entity blocking its rotational path.
-------- SPAWNFLAGS --------
FR_STARTON : Start on.
FR_REVERSE : Spin in reverse.
FR_ZAXIS : Spin on the Z-axis.
FR_XAXIS : Spin on the X-axis.
FR_ACCDCC : Enable acceleration and de-acceleration.
FR_FANPAIN : Will damage entities that collide when turned on.
FR_NOTSOLID : Don't do collision testing against this entity.
FR_SMALLRADIUS : Fan sound will have a small playback radius.
FR_MRADIUS : Fan sound will have a medium playback radius.
FR_LRADIUS : Fan sound will have a large playback radius.
FR_TOGGLEDIR : Reverses direction when triggered.
-------- NOTES --------
Please include an origin brush so that a pivot point will be defined.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
#ifdef GS_DEVELOPER
var int autocvar_dev_rotspeed = 0;
#endif
@ -63,6 +33,36 @@ enumflags
FR_TOGGLEDIR
};
/*!QUAKED func_rotating (0 .5 .8) ? FR_STARTON FR_REVERSE FR_ZAXIS FR_XAXIS FR_ACCDCC FR_FANPAIN FR_NOTSOLID FR_SMALLRADIUS FR_MRADIUS FR_LRADIUS FR_TOGGLEDIR
# OVERVIEW
Rotating brush object. Useful for fans, etc.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "speed" : Speed in units per second.
- "dmg" : Damage applied to entity blocking its rotational path.
# SPAWNFLAGS
- FR_STARTON (1) : Start on.
- FR_REVERSE (2) : Spin in reverse.
- FR_ZAXIS (4) : Spin on the Z-axis.
- FR_XAXIS (8) : Spin on the X-axis.
- FR_ACCDCC (16) : Enable acceleration and de-acceleration.
- FR_FANPAIN (32) : Will damage entities that collide when turned on.
- FR_NOTSOLID (64) : Don't do collision testing against this entity.
- FR_SMALLRADIUS (128) : Fan sound will have a small playback radius.
- FR_MRADIUS (256) : Fan sound will have a medium playback radius.
- FR_LRADIUS (512) : Fan sound will have a large playback radius.
- FR_TOGGLEDIR (1024) : Reverses direction when triggered.
# NOTES
Please include an origin brush so that a pivot point will be defined.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_rotating:NSRenderableEntity
{

View File

@ -14,47 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_tank (0 .5 .8) ? FNCTANK_ACTIVE x x x FNCTANK_DIRECTONLY FNCTANK_CONTROLLABLE
A mountable tank gun turret type entity. A player (or NPC) can interact with
it and shoot it. It's in the same family as the func_tankmortar entity, the
difference being that this shoots bullets and not mortar blasts.
-------- KEYS --------
"targetname" : Name
"yawrate" : The speed of the left/right movement of the gun.
"yawrange" : Range of left/right movement in degrees.
"pitchrate" : The speed of the up/down movement of the gun.
"pitchrange" : Range of up/down movement in degrees.
"barrel" : Distance from origin to barrel tip in units.
"barrely" : Horizontal distance origin to the center of the barrel tip.
"barrelz" : Vertical distance origin to the center of the barrel tip.
"firerate" : Number of bullets fired per second.
"bullet_damage" : Damage each fired bullet does.
"firespread" : Accuracy of the gun. 0 is best, 4 is worst.
"persistance" : Time in seconds for how long an NPC might continue shooting.
"minRange" : Minimum range the target can be at for an NPC to fire.
"maxRange" : Maximum range the target can be at for an NPC to fire.
"spritesmoke" : Sprite to spawn for 'smoke' when the entity is fired.
"spriteflash" : Sprite to spawn for a 'muzzleflash' when the entity is fired.
"spritescale" : Scale multiplier for both smoke and flash sprites.
"rotatesound" : Sound file to play in a loop while barrel is rotating.
-------- SPAWNFLAGS --------
FNCTANK_ACTIVE : Unimplemented.
FNCTANK_DIRECTONLY : Unimplemented.
FNCTANK_CONTROLLABLE : Unimplemented.
-------- NOTES --------
I don't like the sprite stuff tacked on at all because of the extra networking
involved and because it's so awfully GoldSrc specific.
Eventually I need to design a more generic routine that allows people to just
refer to materials with the appropriate blend-modes instead of hardcoding that
some random sprites needs to be treated additive.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
/* TODO: Implement these */
enumflags
{
@ -66,6 +25,47 @@ enumflags
FNCTANK_CONTROLLABLE
};
/*!QUAKED func_tank (0 .5 .8) ? FNCTANK_ACTIVE x x x FNCTANK_DIRECTONLY FNCTANK_CONTROLLABLE
# OVERVIEW
A mountable tank gun turret type entity. A player (or NPC) can interact with
it and shoot it. It's in the same family as the func_tankmortar entity, the
difference being that this shoots bullets and not mortar blasts.
# KEYS
- "targetname" : Name
- "yawrate" : The speed of the left/right movement of the gun.
- "yawrange" : Range of left/right movement in degrees.
- "pitchrate" : The speed of the up/down movement of the gun.
- "pitchrange" : Range of up/down movement in degrees.
- "barrel" : Distance from origin to barrel tip in units.
- "barrely" : Horizontal distance origin to the center of the barrel tip.
- "barrelz" : Vertical distance origin to the center of the barrel tip.
- "firerate" : Number of bullets fired per second.
- "bullet_damage" : Damage each fired bullet does.
- "firespread" : Accuracy of the gun. 0 is best, 4 is worst.
- "persistance" : Time in seconds for how long an NPC might continue shooting.
- "minRange" : Minimum range the target can be at for an NPC to fire.
- "maxRange" : Maximum range the target can be at for an NPC to fire.
- "spritesmoke" : Sprite to spawn for 'smoke' when the entity is fired.
- "spriteflash" : Sprite to spawn for a 'muzzleflash' when the entity is fired.
- "spritescale" : Scale multiplier for both smoke and flash sprites.
- "rotatesound" : Sound file to play in a loop while barrel is rotating.
# SPAWNFLAGS
- FNCTANK_ACTIVE (1) : TODO: Start active?
- FNCTANK_DIRECTONLY (16) : TODO: ?
- FNCTANK_CONTROLLABLE (32) : TODO: Can be interacted with similar to a tankmortar?
# NOTES
I don't like the sprite stuff tacked on at all because of the extra networking
involved and because it's so awfully GoldSrc specific.
Eventually I need to design a more generic routine that allows people to just
refer to materials with the appropriate blend-modes instead of hardcoding that
some random sprites needs to be treated additive.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_tank:NSVehicle
{

View File

@ -14,17 +14,17 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_tankcontrols (0 .5 .8) ?
/*!QUAKED func_tankcontrols (0 .5 .8) ?
# OVERVIEW
Brush that marks the usable region of a func_tankmortar, in order
to gain control.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_tankcontrols:NSBrushTrigger
{

View File

@ -14,34 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_tracktrain (0 .5 .8) ? TRAIN_WAIT TRAIN_NOPITCH x TRAIN_NOTSOLID
Moving platform following along path_corner entities, aka nodes.
Most of its behaviour is controlled by the path_corner entities it passes over.
See the entity definition for path_corner to find out more.
-------- KEYS --------
"targetname" : Name
"target" : First node.
"killtarget" : Target to kill when triggered.
"dmg" : Damage to inflict upon a person blocking the way.
"snd_move" : Path to sound sample which plays when it's moving.
"snd_stop" : Path to sound sample which plays when it stops moving.
-------- NOTES --------
Upon level entry, the func_tracktrain will spawn right where its first path_corner
node is. This is so you can light the func_tracktrain somewhere else - like a lonely
box somewhere outside the playable area.
If no targetname is specified, the train will move on its own at map-launch.
Marking the func_tracktrain with the flag TRAIN_NOTSOLID will make entities not
collide with the train. This is best used for things in the distance or for
when lasers are following this train as a sort of guide.
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
enumflags
{
TRAIN_WAIT,
@ -50,6 +22,33 @@ enumflags
TRAIN_NOTSOLID
};
/*!QUAKED func_tracktrain (0 .5 .8) ? TRAIN_WAIT TRAIN_NOPITCH x TRAIN_NOTSOLID
# OVERVIEW
An interactive train that moves along a path akin to func_train.
# KEYS
- "targetname" : Name
- "target" : First node.
- "killtarget" : Target to kill when triggered.
- "dmg" : Damage to inflict upon a person blocking the way.
- "snd_move" : Path to sound sample which plays when it's moving.
- "snd_stop" : Path to sound sample which plays when it stops moving.
# SPAWNFLAGS
- TRAIN_WAIT (1) : Stop at each path_corner until we're triggered again.
- TRAIN_NOPITCH (2) : Train does not pivot up/down at all.
- TRAIN_NOTSOLID (8) : Don't do collision testing against this entity.
# NOTES
Upon level entry, the func_tracktrain will spawn right where its first path_corner
node is. This is so you can light the func_tracktrain somewhere else - like a lonely
box somewhere outside the playable area.
If no targetname is specified, the train will move on its own at map-launch.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_tracktrain:NSRenderableEntity
{

View File

@ -14,18 +14,18 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_traincontrols (0 .5 .8) ?
/*!QUAKED func_traincontrols (0 .5 .8) ?
# OVERVIEW
Brush that marks the usable region of a func_tracktrain, in order
to gain control.
-------- KEYS --------
"targetname" : Name
"target" : Name of the func_vehicle to control
# KEYS
- "targetname" : Name
- "target" : Name of the func_vehicle to control
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_traincontrols:NSBrushTrigger
{

View File

@ -14,24 +14,33 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_train (0 .5 .8) ? TRAIN_WAIT x x TRAIN_NOTSOLID
enumflags
{
TRAIN_WAIT,
TRAIN_UNUSED1,
TRAIN_UNUSED2,
TRAIN_NOTSOLID
};
/*!QUAKED func_train (0 .5 .8) ? TRAIN_WAIT x x TRAIN_NOTSOLID
# OVERVIEW
Moving platform following along path_corner entities, aka nodes.
Most of its behaviour is controlled by the path_corner entities it passes over.
See the entity definition for path_corner to find out more.
-------- KEYS --------
"targetname" : Name
"target" : First node.
"killtarget" : Target to kill when triggered.
"dmg" : Damage to inflict upon a person blocking the way.
"snd_move" : Path to sound sample which plays when it's moving.
"snd_stop" : Path to sound sample which plays when it stops moving.
# KEYS
- "targetname" : Name
- "target" : First node.
- "killtarget" : Target to kill when triggered.
- "dmg" : Damage to inflict upon a person blocking the way.
- "snd_move" : Path to sound sample which plays when it's moving.
- "snd_stop" : Path to sound sample which plays when it stops moving.
-------- SPAWNFLAGS --------
TRAIN_WAIT : Stop at each path_corner until we're triggered again.
TRAIN_NOTSOLID : Don't do collision testing against this entity.
# SPAWNFLAGS
- TRAIN_WAIT (1) : Stop at each path_corner until we're triggered again.
- TRAIN_NOTSOLID (8) : Don't do collision testing against this entity.
-------- NOTES --------
# NOTES
Upon level entry, the func_train will spawn right where its first path_corner
node is. This is so you can light the func_train somewhere else - like a lonely
box somewhere outside the playable area.
@ -42,18 +51,9 @@ Marking the func_train with the flag TRAIN_NOTSOLID will make entities not
collide with the train. This is best used for things in the distance or for
when lasers are following this train as a sort of guide.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
enumflags
{
TRAIN_WAIT,
TRAIN_UNUSED1,
TRAIN_UNUSED2,
TRAIN_NOTSOLID
};
class
func_train:NSRenderableEntity
{

View File

@ -14,25 +14,30 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_vehiclecontrols (0 .5 .8) ?
/*!QUAKED func_vehiclecontrols (0 .5 .8) ?
# OVERVIEW
Brush that marks the usable region of a func_vehicle, in order
to gain control.
-------- KEYS --------
"targetname" : Name
"target" : Name of the func_vehicle to control
# KEYS
- "targetname" : Name
- "target" : Name of the func_vehicle to control
-------- NOTES --------
# NOTES
It's the same as func_tracktraincontrols, except that it's for
func_vehicle instead of func_tracktrain.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Counter-Strike (2000).
*/
class
func_vehiclecontrols:func_traincontrols
{
void func_vehiclecontrols(void);
};
void
func_vehiclecontrols(void)
func_vehiclecontrols::func_vehiclecontrols(void)
{
spawnfunc_func_traincontrols();
self.classname = "func_vehiclecontrols";
}
}

View File

@ -14,24 +14,24 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED func_wall_toggle (0 .5 .8) ? FTW_STARTHIDDEN
Brush that can be hidden and reappear when triggered.
-------- KEYS --------
"targetname" : Name
-------- SPAWNFLAGS --------
FTW_STARTHIDDEN : Start invisible upon spawning.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
FTW_STARTHIDDEN
};
/*!QUAKED func_wall_toggle (0 .5 .8) ? FTW_STARTHIDDEN
# OVERVIEW
Brush that can be hidden and reappear when triggered.
# KEYS
- "targetname" : Name
# SPAWNFLAGS
- FTW_STARTHIDDEN (1) : Start invisible upon spawning.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
func_wall_toggle:NSRenderableEntity
{

View File

@ -14,32 +14,32 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED game_counter (0 .5 .8) (-8 -8 -8) (8 8 8) GMCNT_REMOVE GMCNT_RESET
This entity counts the number of times it has been triggered and activates its
target when it reaches a specified number.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"master" : Master entity (optional)
"killtarget" : Target to kill when triggered.
"health" : Number of times the entity has to be triggered.
"frags" : Starting value of this game_counter.
-------- SPAWNFLAGS --------
GMCNT_REMOVE : Remove permanently once it fired its target.
GMCNT_RESET : Reset internal counter to starting value once it fired its target.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
GMCNT_REMOVE,
GMCNT_RESET
};
/*!QUAKED game_counter (0 .5 .8) (-8 -8 -8) (8 8 8) GMCNT_REMOVE GMCNT_RESET
# OVERVIEW
This entity counts the number of times it has been triggered and activates its
target when it reaches a specified number.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "master" : Master entity (optional)
- "killtarget" : Target to kill when triggered.
- "health" : Number of times the entity has to be triggered.
- "frags" : Starting value of this game_counter.
# SPAWNFLAGS
- GMCNT_REMOVE (1) : Remove permanently once it fired its target.
- GMCNT_RESET (2) : Reset internal counter to starting value once it fired its target.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
game_counter:NSPointTrigger
{

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED game_counter_set (0 .5 .8) (-8 -8 -8) (8 8 8) GMCNTS_REMOVE
/*!QUAKED game_counter_set (0 .5 .8) (-8 -8 -8) (8 8 8) GMCNTS_REMOVE
# OVERVIEW
When triggered, it'll change the internal counter of its target (a game_counter)
to the specified value within.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"master" : Master entity (optional)
"frags" : New value of the target game_counter.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "master" : Master entity (optional)
- "frags" : New value of the target game_counter.
-------- SPAWNFLAGS --------
GMCNT_REMOVE : Remove permanently once it fired its target.
# SPAWNFLAGS
- GMCNT_REMOVE (1) : Remove permanently once it fired its target.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
enumflags
{
GMCNTS_REMOVE,

View File

@ -14,14 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED game_player_equip (1 0 0) (-8 -8 -8) (8 8 8) GPEFL_TRIGGERONLY
enumflags
{
GPEFL_TRIGGERONLY
};
/*!QUAKED game_player_equip (1 0 0) (-8 -8 -8) (8 8 8) GPEFL_TRIGGERONLY
# OVERVIEW
Entity that emits items when triggered, or upon player spawn (MP-only).
-------- KEYS --------
"targetname" : Name
"master" : Team Master
# KEYS
- "targetname" : Name
- "master" : Team Master
-------- NOTES --------
# SPAWNFLAGS
- GPEFL_TRIGGERONLY (1) : See notes.
# NOTES
When the flag GPEFL_TRIGGERONLY is set, the entity has to be triggered
in order to 'give' the activator the item. Otherwise it'll automatically
'give' every client its noted items upon spawning.
@ -34,15 +43,9 @@ expected behaviour. Some modifications might depend on that...
I still need to implement the Team Master functionality.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
enumflags
{
GPEFL_TRIGGERONLY
};
class
game_player_equip:NSPointTrigger
{

View File

@ -14,38 +14,38 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED game_text (1 0 0) (-8 -8 -8) (8 8 8) GTF_ALLPLAYERS
This entity displays a message of your choice on-screen.
-------- KEYS --------
"targetname" : Name
"message" : Text to display. Can be a titles.txt entry.
"x" : Horizontal position of text. (0 - 1.0 = left to right, -1 = center)
"y" : Vertical position of text. (0 - 1.0 = top to bottom, -1 = center)
"effect" : Effect to apply to the text. 0 : Fade In/Out; 1 : Credits; 2 : Scan Out
"color" : The main colour in RGB255.
"color2" : The highlight colour in RGB255.
"fadein" : Time taken to fade in each character.
"fadeout" : Time taken to fade out message.
"holdtime" : Length of time to hold message on screen after fading in.
"fxtime" : Time the highlight lags behind the leading edge of the text in seconds.
"channel" : Message channel to use. Meant for overriding messages.
-------- SPAWNFLAGS --------
GTF_ALLPLAYERS : Broadcast message to all players, not just the activator.
-------- NOTES --------
Line breaks inside "message" can be added with a \n character.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
GTF_ALLPLAYERS
};
/*!QUAKED game_text (1 0 0) (-8 -8 -8) (8 8 8) GTF_ALLPLAYERS
# OVERVIEW
This entity displays a message of your choice on-screen.
# KEYS
- "targetname" : Name
- "message" : Text to display. Can be a titles.txt entry.
- "x" : Horizontal position of text. (0 - 1.0 = left to right, -1 = center)
- "y" : Vertical position of text. (0 - 1.0 = top to bottom, -1 = center)
- "effect" : Effect to apply to the text. 0 : Fade In/Out; 1 : Credits; 2 : Scan Out
- "color" : The main colour in RGB255.
- "color2" : The highlight colour in RGB255.
- "fadein" : Time taken to fade in each character.
- "fadeout" : Time taken to fade out message.
- "holdtime" : Length of time to hold message on screen after fading in.
- "fxtime" : Time the highlight lags behind the leading edge of the text in seconds.
- "channel" : Message channel to use. Meant for overriding messages.
# SPAWNFLAGS
- GTF_ALLPLAYERS (1) : Broadcast message to all players, not just the activator.
# NOTES
Line breaks inside "message" can be added with a \n character.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
game_text:NSPointTrigger
{

View File

@ -14,27 +14,30 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED gibshooter (1 0 0) (-8 -8 -8) (8 8 8) GIBS_REPEATABLE
/*!QUAKED gibshooter (1 0 0) (-8 -8 -8) (8 8 8) GIBS_REPEATABLE
# OVERVIEW
Shoots model bouncy entities from its location.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"angles" : Sets the pitch, yaw and roll direction of the shooter.
"shootmodel" : Model file to shoot.
"shootsounds" : PCM sample to play whenever a piece shoots out.
"m_iGibs" : Amount of models shot in total.
"m_flDelay" : Delay before being able to be fired again.
"m_flVelocity" : Speed of the models in units per second.
"m_flVariance" : Delay between shots.
"m_flGibLife" : Life of the individual model piece.
"scale" : Scale modifier of the model pieces.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "angles" : Sets the pitch, yaw and roll direction of the shooter.
- "shootmodel" : Model file to shoot.
- "shootsounds" : PCM sample to play whenever a piece shoots out.
- "m_iGibs" : Amount of models shot in total.
- "m_flDelay" : Delay before being able to be fired again.
- "m_flVelocity" : Speed of the models in units per second.
- "m_flVariance" : Delay between shots.
- "m_flGibLife" : Life of the individual model piece.
- "scale" : Scale modifier of the model pieces.
-------- TRIVIA --------
# SPAWNFLAGS
- GIBS_REPEATABLE (1) : Can be triggered repeatedly.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
gibshooter:env_shooter
{

View File

@ -14,77 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_hint (0 0 0) (-8 -8 -8) (8 8 8) x x x x x x x x x x x x x x x x HINTSF_ALLOWJUMPUP
Helper entity for the AI routines. Defines where to go for
sensible defense/offensive or other hints.
-------- KEYS --------
"targetname" : Name
"hinttype" : Hint type, this controls this hints' purpose. See notes
"hintactivity" : Associated animation activity. Once an NPC goes to this node they'll play it
"nodeFOV" : Field of view of the node. You'll probably want to set a sensible angle too.
"StartHintDisabled" : Whether or not to 'hide' the hint on start, requiring activation to work.
"Group" : Hint group definition. Some NPCs are set up to only look for their specific group.
"IgnoreFacing" : Whether or not we need to ignore the angle (?), see notes.
"MinimumState" : The minimum AI state required to use this hint, see notes.
"MaximumState" : The maximum AI state allowed to use this hint, see notes.
-------- SPAWNFLAGS --------
HINTSF_ALLOWJUMPUP : Allow the AI to 'jump' up this node.
-------- NOTES --------
The 'hinttype' field can be one of these integer values:
HINT_NONE = 0
HINT_WORLD_WINDOW = 2
HINT_WORLD_WORK_POSITION = 12
HINT_WORLD_VISUALLY_INTERESTING = 13
HINT_WORLD_VISUALLY_INTERESTING_DONT_AIM = 14
HINT_WORLD_INHIBIT_COMBINE_MINES = 15
HINT_WORLD_VISUALLY_INTERESTING_STEALTH = 16
HINT_TACTICAL_COVER_MED = 100
HINT_TACTICAL_COVER_LOW = 101
HINT_TACTICAL_WASTESCANNER = 102
HINT_TACTICAL_PINCH = 103
HINT_TACTICAL_GUARD_POINT = 104
HINT_TACTICAL_ENEMY_DISADVANTAGED = 105
HINT_HEALTH_KIT = 106
HINT_ANTLION_BURROW_POINT = 400
HINT_ANTLION_THUMPER_FLEE_POINT = 401
HINT_HEADCRAB_BURROW_POINT = 450
HINT_CROW_FLYTO_POINT = 700
HINT_CROW_PERCH_POINT = 701
HINT_FOLLOW_WAIT_POINT = 900
HINT_JUMP_OVERRIDE = 901
HINT_PLAYER_SQUAD_TRANSITON_POINT = 902
HINT_NPC_EXIT_POINT = 903
HINT_STRIDER_NODE = 904
HINT_PLAYER_ALLY_MOVE_AWAY_DEST = 950
HINT_PLAYER_ALLY_FEAR_DEST = 951
HINT_WORLD_MACHINERY = 1000
HINT_WORLD_BLINKING_LIGHT = 1001
HINT_WORLD_HUMAN_BLOOD = 1002
HINT_WORLD_ALIEN_BLOOD = 1003
The 'IgnoreFacing' field can be one of 3 values:
IGNORE_NO = 0
IGNORE_YES = 1
IGNORE_DEFAULT = 2
The 'MinimumState' and 'MaximumState' field can be one of 3 values:
AISTATE_IDLE = 0
AISTATE_ALERT = 1
AISTATE_COMBAT = 2
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
Some functionality of this entity was meant to be part of `info_node` in the original Half-Life (1998).
However, that was never completed.
*/
/* hint types taken from https://developer.valvesoftware.com/wiki/Hint_nodes#Hint */
typedef enum
{
@ -137,6 +66,77 @@ typedef enum
#define HINTSF_ALLOWJUMPUP 65536
/*!QUAKED info_hint (0 0 0) (-8 -8 -8) (8 8 8) x x x x x x x x x x x x x x x x HINTSF_ALLOWJUMPUP
# OVERVIEW
Helper entity for the AI routines. Defines where to go for
sensible defense/offensive or other hints.
# KEYS
- "targetname" : Name
- "hinttype" : Hint type, this controls this hints' purpose. See notes
- "hintactivity" : Associated animation activity. Once an NPC goes to this node they'll play it
- "nodeFOV" : Field of view of the node. You'll probably want to set a sensible angle too.
- "StartHintDisabled" : Whether or not to 'hide' the hint on start, requiring activation to work.
- "Group" : Hint group definition. Some NPCs are set up to only look for their specific group.
- "IgnoreFacing" : Whether or not we need to ignore the angle (?), see notes.
- "MinimumState" : The minimum AI state required to use this hint, see notes.
- "MaximumState" : The maximum AI state allowed to use this hint, see notes.
# SPAWNFLAGS
- HINTSF_ALLOWJUMPUP (65536) : Allow the AI to 'jump' up this node.
# NOTES
The 'hinttype' field can be one of these integer values:
- HINT_NONE = 0
- HINT_WORLD_WINDOW = 2
- HINT_WORLD_WORK_POSITION = 12
- HINT_WORLD_VISUALLY_INTERESTING = 13
- HINT_WORLD_VISUALLY_INTERESTING_DONT_AIM = 14
- HINT_WORLD_INHIBIT_COMBINE_MINES = 15
- HINT_WORLD_VISUALLY_INTERESTING_STEALTH = 16
- HINT_TACTICAL_COVER_MED = 100
- HINT_TACTICAL_COVER_LOW = 101
- HINT_TACTICAL_WASTESCANNER = 102
- HINT_TACTICAL_PINCH = 103
- HINT_TACTICAL_GUARD_POINT = 104
- HINT_TACTICAL_ENEMY_DISADVANTAGED = 105
- HINT_HEALTH_KIT = 106
- HINT_ANTLION_BURROW_POINT = 400
- HINT_ANTLION_THUMPER_FLEE_POINT = 401
- HINT_HEADCRAB_BURROW_POINT = 450
- HINT_CROW_FLYTO_POINT = 700
- HINT_CROW_PERCH_POINT = 701
- HINT_FOLLOW_WAIT_POINT = 900
- HINT_JUMP_OVERRIDE = 901
- HINT_PLAYER_SQUAD_TRANSITON_POINT = 902
- HINT_NPC_EXIT_POINT = 903
- HINT_STRIDER_NODE = 904
- HINT_PLAYER_ALLY_MOVE_AWAY_DEST = 950
- HINT_PLAYER_ALLY_FEAR_DEST = 951
- HINT_WORLD_MACHINERY = 1000
- HINT_WORLD_BLINKING_LIGHT = 1001
- HINT_WORLD_HUMAN_BLOOD = 1002
- HINT_WORLD_ALIEN_BLOOD = 1003
The 'IgnoreFacing' field can be one of 3 values:
- IGNORE_NO = 0
- IGNORE_YES = 1
- IGNORE_DEFAULT = 2
The 'MinimumState' and 'MaximumState' field can be one of 3 values:
- AISTATE_IDLE = 0
- AISTATE_ALERT = 1
- AISTATE_COMBAT = 2
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
Some functionality of this entity was meant to be part of `info_node` in the original Half-Life (1998).
However, that was never completed.
*/
class
info_hint:NSPointTrigger
{

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_intermission (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED info_intermission (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
An entity that's used to create an 'Intermission' camera.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
Some mods use this while displaying the final scores, once a timelimit
is hit etc.
When Intermission is active, the players camera will be teleported here
and angles towards the aim target.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
info_intermission:NSPointTrigger
{

View File

@ -14,16 +14,16 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_node (0 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED info_node (0 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
It's a node, helping monsters navigate on the ground.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
info_node:NSPointTrigger
{

View File

@ -14,16 +14,16 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_node_air (0 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED info_node_air (0 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
It's a node, helping monsters navigate in the air as well as underwater.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
info_node_air:NSPointTrigger
{

View File

@ -14,24 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_notnull (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED info_notnull (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Helper entity for the game-logic its vast array of entities.
It is most commonly used to aim active in-game entities towards a specific
location.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
For tasks such as aiming static/lightmapped light sources during the compiling
process, please use info_null instead as it'll get removed after it has served
its purpose.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
info_notnull:NSPointTrigger
{

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_null (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED info_null (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Helper entity for the map creation process only.
It is supposed to be removed after compilation of a .bsp file.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
If you're pointing any active game-logic entities to this entity,
prepare to crash.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
info_null:NSPointTrigger
{

View File

@ -14,16 +14,17 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED infodecal (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED infodecal (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Projects a decals.wad texture onto the nearest surface.
It'll automatically figure out the surface based on distance.
The texture will be aligned along the surface texture normals.
-------- KEYS --------
"targetname" : Name
"texture" : Name of the texture inside decals.wad it projects onto a surface.
# KEYS
- "targetname" : Name
- "texture" : Name of the texture inside decals.wad it projects onto a surface.
-------- NOTES --------
# NOTES
This entity currently only works on BSP version 30 levels.
If a targetname is supplied, it will have to be triggered by an entity in order
@ -32,10 +33,9 @@ to appear. Afterwards it cannot be triggered again.
It will pick the nearest wall (currently checking a distance of 128 units,
which is probably overkill). No angle has to be supplied.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
infodecal:NSPointTrigger
{

View File

@ -14,18 +14,18 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED item_food (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED item_food (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
This is a food item that will give the user 1 health when touched.
-------- KEYS --------
"targetname" : Name
"angles" : Sets the pitch, yaw and roll angles of the model.
"model" : Model file that will be displayed by the entity.
# KEYS
- "targetname" : Name
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "model" : Model file that will be displayed by the entity.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
item_food:NSEntity
{

View File

@ -14,24 +14,25 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED light (1 0 0) (-8 -8 -8) (8 8 8) LFL_LINEAR x LFL_DARK LFL_NOGRID x x
/*!QUAKED light (1 0 0) (-8 -8 -8) (8 8 8) LFL_LINEAR x LFL_DARK LFL_NOGRID x x
# OVERVIEW
Infinitely small point of light illuminating the scene.
-------- KEYS --------
"targetname" : Name
"target" : When set, targets an enity instead, becoming a spotlight
"light" : Light intensity value. Default is '300'
"color" : Normalized RGB color value. Default is [1,1,1]
"color255" : RGB255 color value. e.g. '255 255 255' for white
"extradist" : The additional distance it should attempt to travel.
"radius" : Sets the light cone radius for spotlights. Default is '64'
"fade" : Sets the fade-distance of a light when LFL_LINEAR is set
"anglescale" : Sets the light angle scale of non-linear lights
"deviance" : Sets the deviance, jitter effect for each light sample.
"samples" : Number of light samples. This also needs to be set > 0.0 for deviance to work.
"filter" : Setting to blur the light/shadows resulting from this light.
"start_active" : Set to either 0 or 1 to tell the light in what mode to start in.
"style" : Light style ID. 0-11 are defined, 12-32 are reserved for switched
# KEYS
- "targetname" : Name
- "target" : When set, targets an enity instead, becoming a spotlight
- "light" : Light intensity value. Default is '300'
- "color" : Normalized RGB color value. Default is [1,1,1]
- "color255" : RGB255 color value. e.g. '255 255 255' for white
- "extradist" : The additional distance it should attempt to travel.
- "radius" : Sets the light cone radius for spotlights. Default is '64'
- "fade" : Sets the fade-distance of a light when LFL_LINEAR is set
- "anglescale" : Sets the light angle scale of non-linear lights
- "deviance" : Sets the deviance, jitter effect for each light sample.
- "samples" : Number of light samples. This also needs to be set > 0.0 for deviance to work.
- "filter" : Setting to blur the light/shadows resulting from this light.
- "start_active" : Set to either 0 or 1 to tell the light in what mode to start in.
- "style" : Light style ID. 0-11 are defined, 12-32 are reserved for switched
lights. List of pre-defined styles:
0 = Normal
1 = Flicker A
@ -50,53 +51,20 @@ Infinitely small point of light illuminating the scene.
'a' being dark. 'z' being fully lit. Can be a string of characters
that'll interpolate between at 10 FPS ingame.
-------- SPAWNFLAGS --------
LFL_LINEAR : Use linear falloff instead of inverse-square falloff.
LFL_DARK : Darken, instead of lighting the lightmap.
LFL_NOGRID : This light does not affect the lightgrid.
# SPAWNFLAGS
- LFL_LINEAR (1) : Use linear falloff instead of inverse-square falloff.
- LFL_DARK (4) : Darken, instead of lighting the lightmap.
- LFL_NOGRID (8) : This light does not affect the lightgrid.
-------- NOTES --------
# NOTES
In idTech 2/GoldSrc etc. spawnflag 1 means a light starts off.
This doesn't exist in idTech3 because lightstyles were not a thing.
To avoid huge amounts of lightmap abuse, please consider using light_dynamic
or env_projectedtexture for toggled or flickering lights.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
/*QUAKED light_surface (1 0 0) (-8 -8 -8) (8 8 8)
Material property modifier related to lighting.
-------- KEYS --------
"targetname" : Name
"surfacename" : Material to make a light emitting surface.
"light" : Light intensity value.
"color" : Normalized RGB color value. E.g. '1.0 1.0 1.0'
"color255" : RGB255 color value. E.g. '255 255 255'
"subdivisions" : Defines how many surfacelights are spawned for this surface.
"bouncescale" : How strong photons will bounce for radiosity operations. Default is 1.0.
"backsplash_fraction" : When > 0, creates a backsplash light that illuminates our material. Default is 5 (percent).
"backsplash_distance" : How many units away from the surface the backsplash light will be placed. Default is 23 (units).
"style" : What lightstyle group the emitted light will belong to.
-------- NOTES --------
Instead of having hundreds of off-shoot materials for your level, you can use
this to quickly make sure an existing material is adjusted for your level.
The backsplash_fraction key can be set to 100 (percent) to ensure it's mostly
illuminated, however since the lights are round you might have some slightly
darker parts in the corners of a perfectly square surface. Keep this in mind.
If you have round surfaces, especially patches, you should definitely adjust the
backsplash_distance key to make sure the light is spawning out far enough.
One giant, half circle patch surface might see issues otherwise. Not tested
though.
-------- TRIVIA --------
This entity was introduced in Nuclide (2021).
*/
class
light:NSPointTrigger
{
@ -265,4 +233,39 @@ light::Trigger(entity act, int state)
CLASSEXPORT(light_spot, light)
CLASSEXPORT(light_environment, light)
CLASSEXPORT(light_surface, light)
/*!QUAKED light_surface (1 0 0) (-8 -8 -8) (8 8 8)
Material property modifier related to lighting.
# KEYS
- "targetname" : Name
- "surfacename" : Material to make a light emitting surface.
- "light" : Light intensity value.
- "color" : Normalized RGB color value. E.g. '1.0 1.0 1.0'
- "color255" : RGB255 color value. E.g. '255 255 255'
- "subdivisions" : Defines how many surfacelights are spawned for this surface.
- "bouncescale" : How strong photons will bounce for radiosity operations. Default is 1.0.
- "backsplash_fraction" : When > 0, creates a backsplash light that illuminates our material. Default is 5 (percent).
- "backsplash_distance" : How many units away from the surface the backsplash light will be placed. Default is 23 (units).
- "style" : What lightstyle group the emitted light will belong to.
# NOTES
Instead of having hundreds of off-shoot materials for your level, you can use
this to quickly make sure an existing material is adjusted for your level.
The backsplash_fraction key can be set to 100 (percent) to ensure it's mostly
illuminated, however since the lights are round you might have some slightly
darker parts in the corners of a perfectly square surface. Keep this in mind.
If you have round surfaces, especially patches, you should definitely adjust the
backsplash_distance key to make sure the light is spawning out far enough.
One giant, half circle patch surface might see issues otherwise. Not tested
though.
# TRIVIA
This entity was introduced in Nuclide (2021).
*/
class light_surface:light
{
};

View File

@ -14,28 +14,29 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED logic_auto (1 0 0) (-8 -8 -8) (8 8 8) TA_USEONCE
/*!QUAKED logic_auto (1 0 0) (-8 -8 -8) (8 8 8) TA_USEONCE
# OVERVIEW
Will automatically trigger its outputs when the level has spawned.
This is Source's variant of trigger_auto. If you want to talk to old-styled
targets instead, use that instead.
-------- KEYS --------
"targetname" : Name
"globalstate" : The env_global state to read before firing.
# KEYS
- "targetname" : Name
- "globalstate" : The env_global state to read before firing.
-------- INPUTS --------
"OnMapSpawn" : Triggered when the map is loaded for any reason.
"OnNewGame" : Triggered only when a new game starts on this level.
"OnLoadGame : Triggered when the map is loaded via save game.
"OnMapTransition" : Triggered when we load this map via level transition.
"OnBackgroundMap" : Triggered if this map is used as a menu background.
"OnMultiNewMap" : Same as 'OnMapSpawn' but only valid in multiplayer.
"OnMultiNewRound" : Triggered only during round restarts in multiplayer.
# INPUTS
- "OnMapSpawn" : Triggered when the map is loaded for any reason.
- "OnNewGame" : Triggered only when a new game starts on this level.
- "OnLoadGame : Triggered when the map is loaded via save game.
- "OnMapTransition" : Triggered when we load this map via level transition.
- "OnBackgroundMap" : Triggered if this map is used as a menu background.
- "OnMultiNewMap" : Same as 'OnMapSpawn' but only valid in multiplayer.
- "OnMultiNewRound" : Triggered only during round restarts in multiplayer.
-------- SPAWNFLAGS --------
TA_USEONCE : Remove itself from the level permanently when activated.
# SPAWNFLAGS
- TA_USEONCE (1) : Remove itself from the level permanently when activated.
-------- NOTES --------
# NOTES
When a logic_auto is removed via TA_USEONCE it won't survive match respawns.
Source Engine behaviour (do not fix):
@ -43,7 +44,7 @@ The output 'OnMultiNewMap' is also triggered during round restarts.
This would make 'OnMultiNewRound' redundant, however 'OnMultiNewRound' does
not get called upon map start.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/

View File

@ -14,13 +14,14 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED momentary_door (0 .5 .8) ?
/*!QUAKED momentary_door (0 .5 .8) ?
# OVERVIEW
Dynamic door that will move back down if it's not being used.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,27 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED momentary_rot_button (0 .5 .8) ? MRBFL_DOORHACK MRBFL_NOTUSE x x MRBFL_AUTORETURN x MRBFL_XAXIS MRBFL_YAXIS
Dyanmic button/wheel/lever that moves back into its original position when not
in use. It affects momentary_door.
-------- KEYS --------
"targetname" : Name
"distance" : Maximum distance it'll turn until it stops.
"speed" : Speed at which it rotates/turns.
"returnspeed" : Speed at which it returns to its original position.
-------- SPAWNFLAGS --------
MRBFL_DOORHACK : This entity will move along with another momentary_rot_button of the same name.
MRBFL_NOTUSE : Don't allow interaction via "use" key/button.
MRBFL_AUTORETURN : Rotate back to its original state when not being used.
MRBFL_XAXIS : Rotate along the X-axis.
MRBFL_YAXIS : Rotate along the Y-axis.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
MRBFL_DOORHACK,
@ -47,6 +26,27 @@ enumflags
MRBFL_YAXIS
};
/*!QUAKED momentary_rot_button (0 .5 .8) ? MRBFL_DOORHACK MRBFL_NOTUSE x x MRBFL_AUTORETURN x MRBFL_XAXIS MRBFL_YAXIS
# OVERVIEW
Dyanmic button/wheel/lever that moves back into its original position when not
in use. It affects momentary_door.
# KEYS
- "targetname" : Name
- "distance" : Maximum distance it'll turn until it stops.
- "speed" : Speed at which it rotates/turns.
- "returnspeed" : Speed at which it returns to its original position.
# SPAWNFLAGS
- MRBFL_DOORHACK (1) : This entity will move along with another momentary_rot_button of the same name.
- MRBFL_NOTUSE (2) : Don't allow interaction via "use" key/button.
- MRBFL_AUTORETURN (16) : Rotate back to its original state when not being used.
- MRBFL_XAXIS (64) : Rotate along the X-axis.
- MRBFL_YAXIS (128) : Rotate along the Y-axis.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
momentary_rot_button:NSMomentary
{

View File

@ -14,18 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED monster_furniture (1 0 0) (-8 -8 -8) (8 8 8)
Decorative, does nothing yet.
-------- KEYS --------
"targetname" : Name
"angles" : Sets the pitch, yaw and roll angles of the model.
"model" : Model file that will be displayed by the entity.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
MF_WAITTILSEEN,
@ -38,6 +26,18 @@ enumflags
MF_FADECORPSE
};
/*!QUAKED monster_furniture (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Decorative, does nothing yet.
# KEYS
- "targetname" : Name
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "model" : Model file that will be displayed by the entity.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
monster_furniture:NSMonster
{

View File

@ -14,18 +14,19 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED monster_generic (1 0 0) (-8 -8 -8) (8 8 8) x x MGF_NONSOLID
/*!QUAKED monster_generic (1 0 0) (-8 -8 -8) (8 8 8) x x MGF_NONSOLID
# OVERVIEW
Decorative, does nothing yet.
-------- KEYS --------
"targetname" : Name
"angles" : Sets the pitch, yaw and roll angles of the model.
"model" : Model file that will be displayed by the entity.
# KEYS
- "targetname" : Name
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "model" : Model file that will be displayed by the entity.
-------- SPAWNFLAGS --------
MGF_NONSOLID : Don't test collision against this entity.
# SPAWNFLAGS
- MGF_NONSOLID (4) : Don't test collision against this entity.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,26 +14,27 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED monstermaker (1 0 0) (-8 -8 -8) (8 8 8) MMF_STARTON x MMF_NONTOGGLE MMF_MONSTERCLIP
/*!QUAKED monstermaker (1 0 0) (-8 -8 -8) (8 8 8) MMF_STARTON x MMF_NONTOGGLE MMF_MONSTERCLIP
# OVERVIEW
The monster maker is the end-all solution to timed/controlled spawning of
monster entities.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"monstertype" : Type of monster to spawn, represents their entity classname.
"monstercount" : Maximum amount of monsters you want spawned in total.
"delay" : Delay between spawns in seconds.
"child_name" : Applies this as a 'targetname' to spawned monsters.
"child_alivemax" : Maximum amount of spawned monsters that are alive at a time.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "monstertype" : Type of monster to spawn, represents their entity classname.
- "monstercount" : Maximum amount of monsters you want spawned in total.
- "delay" : Delay between spawns in seconds.
- "child_name" : Applies this as a 'targetname' to spawned monsters.
- "child_alivemax" : Maximum amount of spawned monsters that are alive at a time.
-------- SPAWNFLAGS --------
MMF_STARTON : Start on automatically.
MMF_NONTOGGLE : Spawn only one monster with each trigger.
MMF_MONSTERCLIP : Spawned monsters will be blocked by func_monsterclip entities.
# SPAWNFLAGS
- MMF_STARTON (1) : Start on automatically.
- MMF_NONTOGGLE (2) : Spawn only one monster with each trigger.
- MMF_MONSTERCLIP (4) : Spawned monsters will be blocked by func_monsterclip entities.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,24 +14,24 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED multi_manager (1 0 0) (-8 -8 -8) (8 8 8) MM_MULTITHREADED
#define MM_MULTITHREADED 1
/*!QUAKED multi_manager (1 0 0) (-8 -8 -8) (8 8 8) MM_MULTITHREADED
# OVERVIEW
Triggers a maximum of 16 user defined entities with additonal timers.
Add a target's name as an entity key, with the value set to the time in seconds
that'll pass before the entity will be triggered.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- SPAWNFLAGS --------
MM_MULTITHREADED : Allow the multi_manager to be triggered again before it has
# SPAWNFLAGS
- MM_MULTITHREADED (1) : Allow the multi_manager to be triggered again before it has
finished triggering it's previous list of entities.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
#define MM_MULTITHREADED 1
class
multi_manager_sub:NSPointTrigger
{

View File

@ -14,21 +14,21 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED multisource (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED multisource (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
An AND-gate of sorts. Every entity that targets this must return a positive
state for it to trigger its target.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"globalstate" : env_global variable to track.
"delay" : Delay until we trigger our target.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "globalstate" : env_global variable to track.
- "delay" : Delay until we trigger our target.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
multisource:NSPointTrigger
{

View File

@ -14,23 +14,24 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED path_corner (1 0 0) (-8 -8 -8) (8 8 8) PC_WAIT PC_TELEPORT PC_FIREONCE
/*!QUAKED path_corner (1 0 0) (-8 -8 -8) (8 8 8) PC_WAIT PC_TELEPORT PC_FIREONCE
# OVERVIEW
Node entities used for func_trains and func_guntargets.
-------- KEYS --------
"targetname" : Name
"target" : Next node.
"message" : Target to trigger when a train passes this node.
"speed" : New speed for passing train.
"yaw_speed" : New yaw rotation for passing train. Currently unused.
"wait" : Waiting time until we go to the next node.
# KEYS
- "targetname" : Name
- "target" : Next node.
- "message" : Target to trigger when a train passes this node.
- "speed" : New speed for passing train.
- "yaw_speed" : New yaw rotation for passing train. Currently unused.
- "wait" : Waiting time until we go to the next node.
-------- SPAWNFLAGS --------
PC_WAIT : Train will stop moving once passed. Needs retrigger to progress.
PC_TELEPORT : Train passing will immediately teleport to "target".
PC_FIREONCE : Only fire its target (message) once.
# SPAWNFLAGS
- PC_WAIT (1) : Train will stop moving once passed. Needs retrigger to progress.
- PC_TELEPORT (2) : Train passing will immediately teleport to "target".
- PC_FIREONCE (4) : Only fire its target (message) once.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/

View File

@ -14,16 +14,17 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED path_track (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED path_track (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Node entities used for func_tracktrains.
It's like a path_corner, but for tracktrains.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,24 +14,24 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED player_loadsaved (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED player_loadsaved (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
This trigger reloads the last autosaved game with a custom message.
This is commonly used when a mission objective has failed.
-------- KEYS --------
"targetname" : Name
"message" : Message to display
"messagetime" : Message lifetime (not implemented)
"loadtime" : Time until we load the last autosave
"duration" : Fade effect total duration
"holdtime" : Fade effect hold time
"rendercolor" : Fade effect color vector (RGB255)
"renderamt" : Fade effect alpha value
# KEYS
- "targetname" : Name
- "message" : Message to display
- "messagetime" : Message lifetime (not implemented)
- "loadtime" : Time until we load the last autosave
- "duration" : Fade effect total duration
- "holdtime" : Fade effect hold time
- "rendercolor" : Fade effect color vector (RGB255)
- "renderamt" : Fade effect alpha value
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
player_loadsaved:NSRenderableEntity /* for the rendercolor values */
{

View File

@ -14,16 +14,16 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED player_weaponstrip (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED player_weaponstrip (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Strips the activator of all of its weapons.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
player_weaponstrip:NSPointTrigger
{

View File

@ -14,32 +14,32 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED point_camera (1 0 0) (-8 -8 -8) (8 8 8) PCAMFL_STARTOFF
/*!QUAKED point_camera (1 0 0) (-8 -8 -8) (8 8 8) PCAMFL_STARTOFF
# OVERVIEW
A virtual camera of which its output can be displayed on a rendertarget.
This plays well with the func_monitor entity.
-------- KEYS --------
"targetname" : Name
"FOV" : Field of view in degrees
"UseScreenAspectRatio" : Forces the aspect ratio to be the same as the game's.
"fogEnable" : Enable fog in the camera's view.
"fogColor" : Color of the fog in RGB255.
"fogStart" : Near fog plane.
"fogEnd" : Far fog plane.
# KEYS
- "targetname" : Name
- "FOV" : Field of view in degrees
- "UseScreenAspectRatio" : Forces the aspect ratio to be the same as the game's.
- "fogEnable" : Enable fog in the camera's view.
- "fogColor" : Color of the fog in RGB255.
- "fogStart" : Near fog plane.
- "fogEnd" : Far fog plane.
-------- INPUTS --------
"ChangeFOV" : Change the camera's field of view.
"SetOnAndTurnOthersOff" : Turn this camera on while deactivating all others.
"SetOn" : Turn this camera on.
"SetOff" : Turn this camera off.
# INPUTS
- "ChangeFOV" : Change the camera's field of view.
- "SetOnAndTurnOthersOff" : Turn this camera on while deactivating all others.
- "SetOn" : Turn this camera on.
- "SetOff" : Turn this camera off.
-------- SPAWNFLAGS --------
PCAMFL_STARTOFF : Start with the camera turned off, outputting no signal.
# SPAWNFLAGS
- PCAMFL_STARTOFF (1) : Start with the camera turned off, outputting no signal.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
point_camera:NSPointTrigger
{

View File

@ -14,22 +14,26 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED prop_dynamic (0 0.2 1) (-8 -8 -8) (8 8 8) x x x x x x x x PRPDYN_NONSOLID
Client-side decorative model entity.
-------- KEYS --------
"model" : Model file that will be displayed by the entity.
"modelscale" : Scale modifier of the model. Default is "1".
"angles" : Sets the pitch, yaw and roll angles of the model.
"_cs" : Toggles if the prop casts a shadow or not.
"solid" : Specifies which collision model to use (0: Nonsolid; 2: BBox; 6: Per-poly)
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
#define PRPDYN_NONSOLID 256
/*!QUAKED prop_dynamic (0 0.2 1) (-8 -8 -8) (8 8 8) x x x x x x x x PRPDYN_NONSOLID
# OVERVIEW
Client-side decorative model entity.
# KEYS
- "model" : Model file that will be displayed by the entity.
- "modelscale" : Scale modifier of the model. Default is "1".
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "_cs" : Toggles if the prop casts a shadow or not.
- "solid" : Specifies which collision model to use (0: Nonsolid; 2: BBox; 6: Per-poly)
# SPAWNFLAGS
- PRPDYN_NONSOLID (256) : Prop is non-solid.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
There are two ways of making a prop_dynamic non-solid.
*/
class
prop_dynamic:NSSurfacePropEntity
{

View File

@ -14,19 +14,22 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED prop_physics (0 0 0.8) (-16 -16 -16) (16 16 16) PRPPHYS_ASLEEP
Physics model
-------- KEYS --------
"targetname" : Name
-------- TRIVIA --------
This entity was introduced in Half-Life 2 (2004).
*/
#ifndef PHYSICS_STATIC
#define PRPPHYS_ASLEEP 1
/*!QUAKED prop_physics (0 0 0.8) (-16 -16 -16) (16 16 16) PRPPHYS_ASLEEP
# OVERVIEW
Physics model
# KEYS
- "targetname" : Name
# SPAWNFLAGS
- PRPPHYS_ASLEEP (1) : Prop starts without physics and stays until it is impacted.
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
prop_physics:NSPhysicsEntity
{

View File

@ -14,30 +14,30 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED prop_static (0 0.2 1) (-8 -8 -8) (8 8 8) SF_BASIC_COL
/*!QUAKED prop_static (0 0.2 1) (-8 -8 -8) (8 8 8) SF_BASIC_COL
# OVERVIEW
Decorative model entity that gets baked into the level file.
-------- KEYS --------
"model" : Model file that will be displayed by the entity.
"modelscale" : Scale modifier of the model. Default is "1".
"modelscale_vec" : Scale modifier, but in vector format
"angles" : Sets the pitch, yaw and roll angles of the model.
"_cs" : Toggles if the prop casts a shadow or not.
"_ls" : Lightmap scale multiplier for the resulting surfaces.
"_sn" : Shading angle related to lightmap phong shading.
"_remap" : Force the model surfaces to use a specified material.
# KEYS
- "model" : Model file that will be displayed by the entity.
- "modelscale" : Scale modifier of the model. Default is "1".
- "modelscale_vec" : Scale modifier, but in vector format
- "angles" : Sets the pitch, yaw and roll angles of the model.
- "_cs" : Toggles if the prop casts a shadow or not.
- "_ls" : Lightmap scale multiplier for the resulting surfaces.
- "_sn" : Shading angle related to lightmap phong shading.
- "_remap" : Force the model surfaces to use a specified material.
-------- NOTES --------
# NOTES
After compilation, the source model is no longer required and the
resulting entity is removed. This ensures that models are rendered in the
same batch as the world. This makes sense for one giant unique model in
the map, but for multiple repetitive uses of the same model you'll actually
waste disk space and memory. Use wisely.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life 2 (2004).
*/
class
prop_static:NSRenderableEntity
{

View File

@ -14,19 +14,20 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED random_speaker (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED random_speaker (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
This entity plays a .wav file at random intervals.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered
"killtarget" : Target to kill when triggered
"rsnoise" : Path to the sound file.
"volume" : Volume to play the sound as (normalized, 0.0 - 1.0).
"wait" : Minimum time for sound repetition in %.
"random" : Random % of this added to wait.
# KEYS
- "targetname" : Name
- "target" : Target when triggered
- "killtarget" : Target to kill when triggered
- "rsnoise" : Path to the sound file.
- "volume" : Volume to play the sound as (normalized, 0.0 - 1.0).
- "wait" : Minimum time for sound repetition in %.
- "random" : Random % of this added to wait.
-------- NOTES --------
# NOTES
To explain the math behind it:
The 'wait' key specifies the minimum time it waits to play itself again,
however we always add a bit of a random interval on top.
@ -34,10 +35,9 @@ The random interval is a set percentage of the specified 'wait' time.
For example, if 'wait' is 10 and 'random' is 50, then it'll always be
a random interval between 10 and 15 seconds in total.
-------- TRIVIA --------
# TRIVIA
It was introduced in Gunman Chronicles (2000).
*/
class
random_speaker:NSPointTrigger
{

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED random_trigger (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED random_trigger (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
When triggered, it'll calculate some random interval until it triggers
its targets, based on some limits given.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered
"killtarget" : Target to kill when triggered
"start_state" : Start state (either 0 or 1)
"wait" : Minimum time
"random_min" : Minimum added random time
"random_max" : Maximum added random time
# KEYS
- "targetname" : Name
- "target" : Target when triggered
- "killtarget" : Target to kill when triggered
- "start_state" : Start state (either 0 or 1)
- "wait" : Minimum time
- "random_min" : Minimum added random time
- "random_max" : Maximum added random time
-------- TRIVIA --------
# TRIVIA
It was introduced in Gunman Chronicles (2000).
*/
class
random_trigger:NSPointTrigger
{

View File

@ -14,24 +14,24 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED scripted_sentence (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED scripted_sentence (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Triggers a sound event on the client side associated with an entity in the
world. It'll enable mouth flapping and all sorts of other cool effects.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"entity" : Name of the entity that'll speak the sentence.
"sentence" : Name of sentence from titles.txt.
"pitch" : Desired sound pitch. May be overridden in the titles.txt entry.
"delay" : Delay before it'll be triggered? UNUSED RIGHT NOW.
"wait" : Delay before it can be triggered again? UNUSED RIGHT NOW.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "entity" : Name of the entity that'll speak the sentence.
- "sentence" : Name of sentence from titles.txt.
- "pitch" : Desired sound pitch. May be overridden in the titles.txt entry.
- "delay" : Delay before it'll be triggered? UNUSED RIGHT NOW.
- "wait" : Delay before it can be triggered again? UNUSED RIGHT NOW.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
scripted_sentence:NSPointTrigger
{

View File

@ -14,48 +14,8 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED scripted_sequence (1 0 0) (-8 -8 -8) (8 8 8) x x SSFL_REPEATABLE SSFL_LEAVECORPSE x SSFL_NOINTERRUPT SSFL_OVERRIDEAI SSFL_NOSCRIPTMOVE
Allow an actor to be selected and given an action to perform.
This is done in the form of playing an animation.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"m_iszEntity" : Entity targetname OR classname description to target
"m_iszPlay" : After the monster has moved to the action point, play this animation
"m_iszIdle" : Animation to play until the scripted_sequence is triggered
"m_flRadius" : Search radius for m_targetMonster if a classname is specified
"m_flRepeat" : Loop? Unused.
"m_fMoveTo" : How we move to perform m_iActionAnim
-------- SPAWNFLAGS --------
SSFL_REPEATABLE : Can trigger the sequence more than once.
SSFL_LEAVECORPSE : When the actor is done, they'll be frozen.
SSFL_NOINTERRUPT : Don't allow any interruption of the actor when in-sequence.
SSFL_OVERRIDEAI : Don't allow the actor to call think/sound functions while playing.
-------- NOTES --------
f_fMoveTo values:
0 = Don't move or turn
1 = Walk to the scripted_sequence
2 = Run to the scripted_sequence
3 = Unused/Not defined. Do not use this.
4 = Warp to the location of the scripted_sequence and perform the animation.
5 = Turn to the scripted_sequence's angle before performing the animation.
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
float(float modidx, string framename) frameforname = #276;
float(float modidx, float framenum) frameduration = #277;
/*
* Scripted Sequences
* ==================
* Allow a monster to be selected and given an action to perform.
* This is done in the form of an animation.
*/
/* If enabled, the sequence can be triggered more than once.
* Otherwise the entity will be removed once the sequence is complete. */
@ -87,6 +47,40 @@ enum
SS_TURNTOFACE /* Turn to the scripted_sequence's angle before performing the animation. */
};
/*!QUAKED scripted_sequence (1 0 0) (-8 -8 -8) (8 8 8) x x SSFL_REPEATABLE SSFL_LEAVECORPSE x SSFL_NOINTERRUPT SSFL_OVERRIDEAI SSFL_NOSCRIPTMOVE
# OVERVIEW
Allow an actor to be selected and given an action to perform.
This is done in the form of playing an animation.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "m_iszEntity" : Entity targetname OR classname description to target
- "m_iszPlay" : After the monster has moved to the action point, play this animation
- "m_iszIdle" : Animation to play until the scripted_sequence is triggered
- "m_flRadius" : Search radius for m_targetMonster if a classname is specified
- "m_flRepeat" : Loop? Unused.
- "m_fMoveTo" : How we move to perform m_iActionAnim
# SPAWNFLAGS
- SSFL_REPEATABLE (4) : Can trigger the sequence more than once.
- SSFL_LEAVECORPSE (8) : When the actor is done, they'll be frozen.
- SSFL_NOINTERRUPT (32) : Don't allow any interruption of the actor when in-sequence.
- SSFL_OVERRIDEAI (64) : Don't allow the actor to call think/sound functions while playing.
# NOTES
f_fMoveTo values:
- 0 = Don't move or turn
- 1 = Walk to the scripted_sequence
- 2 = Run to the scripted_sequence
- 3 = Unused/Not defined. Do not use this.
- 4 = Warp to the location of the scripted_sequence and perform the animation.
- 5 = Turn to the scripted_sequence's angle before performing the animation.
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
scripted_sequence:NSPointTrigger
{

View File

@ -14,36 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED speaker (1 0 0) (-8 -8 -8) (8 8 8)
Creates a public announcement system that randomly plays announcements from
the sentences.txt file.
-------- KEYS --------
"targetname" : Name
"preset" : Preset sentence group.
"message" : Sentence group name (used when preset is 0)
"health" : Message volume (value from 0-10)
-------- NOTES --------
Valid values for 'preset":
0 = Use Sentence group name
1 = C1A0_
2 = C1A1_
3 = C1A2_
4 = C1A3_
5 = C1A4_
6 = C2A1_
7 = C2A2_
8 = C2A3_
9 = C2A4_
10 = C2A5_
11 = C3A1_
12 = C3A2_
-------- TRIVIA --------
This entity was introduced in Half-Life (1998).
*/
enumflags
{
SPEAKFL_SILENT
@ -64,6 +34,36 @@ string g_speaker_hlpresets[] = {
"!C3A2_"
};
/*!QUAKED speaker (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
Creates a public announcement system that randomly plays announcements from
the sentences.txt file.
# KEYS
- "targetname" : Name
- "preset" : Preset sentence group.
- "message" : Sentence group name (used when preset is 0)
- "health" : Message volume (value from 0-10)
# NOTES
Valid values for 'preset":
- 0 = Use Sentence group name
- 1 = C1A0_
- 2 = C1A1_
- 3 = C1A2_
- 4 = C1A3_
- 5 = C1A4_
- 6 = C2A1_
- 7 = C2A2_
- 8 = C2A3_
- 9 = C2A4_
- 10 = C2A5_
- 11 = C3A1_
- 12 = C3A2_
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
speaker:NSTalkMonster
{

View File

@ -14,13 +14,14 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED info_player_start (1 1 1) (-16 -16 -36) (16 16 36)
/*!QUAKED info_player_start (1 1 1) (-16 -16 -36) (16 16 36)
# OVERVIEW
Player spawn position for single-player games.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
This entity is also used in Counter-Strike (2000) and its beta versions to mark
spawn-positions for the Counter-Terrorist team.
@ -30,17 +31,18 @@ or multiplayer coop (if info_player_coop spawn points don't exist).
Mods may choose to have additional fields that are not documented here as part
of the entity, keep that in mind.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
/*QUAKED info_player_deathmatch (1 1 1) (-16 -16 -36) (16 16 36)
/*!QUAKED info_player_deathmatch (1 1 1) (-16 -16 -36) (16 16 36)
# OVERVIEW
Player spawn position for deathmatch games.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
This entity is also used in Counter-Strike (2000) and its beta versions to mark
spawn-positions for the Terrorist team.
@ -51,17 +53,18 @@ based modes.
Mods may choose to have additional fields that are not documented here as part
of the entity, keep that in mind.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/
/*QUAKED info_player_coop (1 1 1) (-16 -16 -36) (16 16 36)
/*!QUAKED info_player_coop (1 1 1) (-16 -16 -36) (16 16 36)
# OVERVIEW
Player spawn position for cooperative games.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- NOTES --------
# NOTES
In order for a player to spawn here, the game needs to take place on a map
for singleplayer with cooperative multiplayer enabled.
If this entity isn't present on such a mode, info_player_start will be the
@ -70,7 +73,7 @@ fallback spawn-point.
Mods may choose to have additional fields that are not documented here as part
of the entity, keep that in mind.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/

View File

@ -14,24 +14,25 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED targ_speaker (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED targ_speaker (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
This entity plays a sample upon triggering at a specified volume.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered
"killtarget" : Target to kill when triggered
"tsnoise" : Path to the sound file
"volume" : Volume to play the sound as (normalized, 0.0 - 1.0)
# KEYS
- "targetname" : Name
- "target" : Target when triggered
- "killtarget" : Target to kill when triggered
- "tsnoise" : Path to the sound file
- "volume" : Volume to play the sound as (normalized, 0.0 - 1.0)
-------- TRIVIA --------
# TRIVIA
It was introduced in Gunman Chronicles (2000).
It's not any more useful than an ambient_generic.
I suspect it's a carry-over from when Gunman was a Quake II mod, as
Quake/Quake II did not have an entity that allowed custom sound samples
to be played.
*/
class
targ_speaker:NSPointTrigger
{

View File

@ -14,23 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED target_cdaudio (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED target_cdaudio (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
A radius based trigger_cdaudio.
Disables itself upon activation.
-------- KEYS --------
"targetname" : Name
"health" : Music track to play (1-30). -1 to stop.
"radius" : Radius in which the entity will be triggered in.
# KEYS
- "targetname" : Name
- "health" : Music track to play (1-30). -1 to stop.
- "radius" : Radius in which the entity will be triggered in.
-------- NOTES --------
# NOTES
I honestly don't know what the point is, as trigger_cdaudio should
act the same in practice.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
target_cdaudio:NSPointTrigger
{

View File

@ -14,22 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_auto (1 0 0) (-8 -8 -8) (8 8 8) TA_USEONCE
/*!QUAKED trigger_auto (1 0 0) (-8 -8 -8) (8 8 8) TA_USEONCE
# OVERVIEW
Will automatically trigger its target when the level has spawned.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"delay" : Time in seconds until it triggers its target.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "delay" : Time in seconds until it triggers its target.
-------- SPAWNFLAGS --------
TA_USEONCE : Remove itself from the level permanently when activated.
# SPAWNFLAGS
- TA_USEONCE (1) : Remove itself from the level permanently when activated.
-------- NOTES --------
# NOTES
When a trigger_auto is removed via TA_USEONCE it won't survive match respawns.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,17 +14,17 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_autosave (0 .5 .8) ?
/*!QUAKED trigger_autosave (0 .5 .8) ?
# OVERVIEW
Volume that'll save the current game when a client enters its bounds.
This entity does not work in multiplayer.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
trigger_autosave:NSBrushTrigger
{

View File

@ -14,14 +14,15 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_cdaudio (0 .5 .8) ?
/*!QUAKED trigger_cdaudio (0 .5 .8) ?
# OVERVIEW
Switches the background music track when triggered.
-------- KEYS --------
"targetname" : Name
"health" : Music track to play.
# KEYS
- "targetname" : Name
- "health" : Music track to play.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/

View File

@ -14,22 +14,23 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_changelevel (0 .5 .8) ? LC_NOINTERMISSION LC_USEONLY
/*!QUAKED trigger_changelevel (0 .5 .8) ? LC_NOINTERMISSION LC_USEONLY
# OVERVIEW
When a Landmark is specified, you will have to position two info_landmark
entities across your two levels with the same name. They'll mark a translation
point for the coordinates in your levels.
-------- KEYS --------
"targetname" : Name
"map" : Next .bsp file name to transition to.
"landmark" : Landmark name to target.
"changedelay" : Time in seconds until the transition happens.
# KEYS
- "targetname" : Name
- "map" : Next .bsp file name to transition to.
- "landmark" : Landmark name to target.
- "changedelay" : Time in seconds until the transition happens.
-------- SPAWNFLAGS --------
LC_NOINTERMISSION : Don't show intermission cam (unimplemented).
LC_USEONLY : Can't activate through touching, only via triggers.
# SPAWNFLAGS
- LC_NOINTERMISSION (1) : Don't show intermission cam (unimplemented).
- LC_USEONLY (2) : Can't activate through touching, only via triggers.
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Quake (1996).
*/

View File

@ -14,19 +14,19 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_changetarget (1 0 0) (-8 -8 -8) (8 8 8)
/*!QUAKED trigger_changetarget (1 0 0) (-8 -8 -8) (8 8 8)
# OVERVIEW
When triggered, trigger_changetarget changes the 'target' value of any entity
to something else.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered
"m_iszNewTarget" : Name of the new 'target' value for the targeted entity
# KEYS
- "targetname" : Name
- "target" : Target when triggered
- "m_iszNewTarget" : Name of the new 'target' value for the targeted entity
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
trigger_changetarget:NSPointTrigger
{

View File

@ -14,21 +14,6 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_counter (0 .5 .8) ? TRCNT_SILENT TRCNT_NOCLIENTS TRCNT_PUSHABLES
This entity counts the number of times it has been triggered and activates its
target when it reaches a specified number.
-------- KEYS --------
"targetname" : Name
"target" : Target when triggered.
"killtarget" : Target to kill when triggered.
"count" : Number of times the entity has to be triggered.
"delay" : Delay in seconds until target is triggered.
-------- TRIVIA --------
This entity was introduced in Quake (1996).
*/
enumflags
{
TRCNT_SILENT,
@ -36,6 +21,21 @@ enumflags
TRCNT_PUSHABLES
};
/*!QUAKED trigger_counter (0 .5 .8) ? TRCNT_SILENT TRCNT_NOCLIENTS TRCNT_PUSHABLES
# OVERVIEW
This entity counts the number of times it has been triggered and activates its
target when it reaches a specified number.
# KEYS
- "targetname" : Name
- "target" : Target when triggered.
- "killtarget" : Target to kill when triggered.
- "count" : Number of times the entity has to be triggered.
- "delay" : Delay in seconds until target is triggered.
# TRIVIA
This entity was introduced in Quake (1996).
*/
class
trigger_counter:NSBrushTrigger
{

View File

@ -14,17 +14,17 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*QUAKED trigger_endsection (0 .5 .8) ?
/*!QUAKED trigger_endsection (0 .5 .8) ?
# OVERVIEW
This trigger shuts down the server.
Useful for when a singleplayer game ends, as it takes you to the main menu.
-------- KEYS --------
"targetname" : Name
# KEYS
- "targetname" : Name
-------- TRIVIA --------
# TRIVIA
This entity was introduced in Half-Life (1998).
*/
class
trigger_endsection:NSBrushTrigger
{

Some files were not shown because too many files have changed in this diff Show More