#
Client Game Module Classes

## Class

## ClientGameCommandManager -> Listener -> Class

> `(`

> Signals the beginning of a block of commands

> `)`

> Signals the end of a block of commands

> `accel( Float xAcc, Float yAcc, Float zAcc )`

> Set the acceleration of the spawned tempmodel.
> This acceleration is applied using the world axis

> `alias( String alias, String realPath, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ] )`

> Create an alias to the specified path

> `aliascache( String alias, String realPath, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ] )`

> Create an alias to the specified path and cache the resource

> `align`

> Align the tempmodels to the direction they are traveling

> `alignonce`

> Align the tempmodels to the direction they are traveling at the time they are initialized

> `alpha( Float alpha )`

> Set the alpha of the spawned tempmodel

> `angles( [ String [random|crandom] ], [ Float pitch ], [ String [random|crandom] ], [ Float yaw ], [ String [random|crandom] ], [ Float roll ] )`

> If random is specified, the component will range from 0 to +specified value.
> If crandom is specified, the component will range from -specified to +specified value.
> If neither random or crandom is specified, then the component will be just set
> without randomness.

> `anim( String animation )`

> Set a tempmodel the the specified animation

> `animateonce`

> Set a tempmodel to animate once and then get removed

> `avelocity( Float yawVel, Float pitchVel, Float rollVel )`

> Set the angular velocity of the spawned tempmodel

> `beam_offset_endpoints`

> Make the beams endpoints offset to reduce the bunching up effect

> `beamdelay( [ String [random] ], [ Float delay ] )`

> Set the delay time between creating new beams.
> If the keyword random is specified, the delay between beams will occur randomly between 0 and the time specified

> `beamlength( Float length )`

> Set the length of the beam or trace length (for decals)

> `beampersist`

> Make the beams persist instead of blinking out

> `beamshader( String shadername )`

> Set the shader to use for the beam

> `beamsphere( Integer count )`

> Create a sphere shaped beam effect from the origin. Count is the number of beams

> `beamtoggledelay( [ String [random] ], [ Float delay ] )`

> Set a delay between toggling the beams on and off.
> If the keyword random is specified, the delay between toggling will occur randomly between 0 and the time specified

> `bouncedecal( Integer maxamount, [ Integer temporary ] )`

> Put a mark when the tempmodel bounces and hits a surface
> maxamount = Max amount of decals to make when bouncing
> temporary = specify 1 for a temporary mark that only appears for a short time, 0 for a decal that stays aroung longer (default is 0)

> `bouncefactor( Float factor )`

> Set the bounciness of a tempmodel when it hits a solid.
> A factor > 1 will make the model bounce higher and higher on each hit

> `bouncesound( String sound, [ Float [delay] ] )`

> When bouncing, what sound to play on impact and an option delay (default is 1 second) between playing this sound

> `bouncesoundonce( String sound )`

> When bouncing, what sound to play on impact one time

> `cache( String resourceName )`

> Cache the specified resource

> `circle`

> Set the tempmodels to be spawned in a circle around the origin
> This circle will be generated in the X/Y axis of the model

> `client( [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ] )`

> Execute the specified command arg string

> `collision( [ String water ] )`

> Turn on collision for the tempmodel.
> If the keyword water is specified, then the tempmodel will collide with water

> `color( Float red, Float green, Float blue, [ Float alpha ] )`

> Set the color (modulate) of the spawned tempmodel.

> `commanddelay( Float time, Integer commandnumber, [ String [arg1] ], [ String [arg2] ], [ String [arg3] ], [ String [arg4] ], [ String [arg5] ], [ String [arg6] ] )`

> Set the time delay between this command getting executed. This requires a command number to be assigned here.
> This is internally used to keep track of the commands this entity executes and will resolve naming conflicts.

> `count( Integer count )`

> Set the number of tempmodels that are spawned
> This is only used for the originspawn and tagspawn commands,
> and not for emitters, use spawnrate instead

> `decalradius( Float radius )`

> Set the radius of the decal

> `decalshader( String shadername )`

> Set the shader to use for the impact decal

> `detail`

> Set emitter/tempmodel to be detail. Which can be turned off by detail

> `dietouch`

> Set the spawned tempmodels to die when they touch a solid

> `dlight( Float red, Float green, Float blue, Float intensity, [ String type1 ], [ String type2 ] )`

> This makes the emitter itself a dynamic lightThe red,green,blue parms are the color of the light
> The intensity is the radius of the light
> type is the type of light to create (lensflare,viewlensflare,additive)

> `duplicatecount( Integer num )`

> Set a duplication number for the tempmodels

> `emitteroff( String emitterName )`

> Turn the specified emitter off

> `emitteron( String emitterName )`

> Turn the specified emitter on

> `endalpha( Float alpha )`

> Set the alpha of the beam's endpoint

> `entcolor( Float red, Float green, Float blue, [ Float alpha ] )`

> Set the color(modulate) of this entity

> `fade`

> Set the tempmodel to fade out over it's life

> `fadedelay( Float time )`

> Set the amount of time to delay a fade

> `fadein( Float time )`

> Set the tempmodel to fade in over the specified time

> `flicker`

> Set the tempmodel to change it's alpha every frame. Creates a flickering effect

> `footstep`

> Play a footstep sound that is appropriate to the surface we are currently stepping on

> `globalfade( [ String [in|out] ] )`

> Set the tempmodels to globally fade in or out together

> `hardlink`

> Set the tempmodels linked to the model they are spawned from, so they move with it

> `inwardsphere`

> Create the tempmodels in a sphere around the origin, and adjust their
> angle so they point toward the center of the sphere. This is best used with a
> spehere radius and some velocity so the models look like they're heading toward the
> center of the sphere.

> `life( Float life )`

> Set the life (in seconds) of the spawned tempmodel

> `lightstyle( String nameOfImage )`

> Set a lightstyle to determine the color of this tempmodel, the image
> specified is used to determine the look of the light style

> `loopsound( String soundName, [ Float volume ], [ Float min_distance ] )`

> Play the specifed sound as a looping sound

> `maxoffset( Float maxoffset )`

> Set the maximum offset from center in a beam

> `minoffset( Float minoffset )`

> Set the minimum offset from center in a beam

> `model( String modelname1, [ String modelname2 ], [ String modelname3 ], [ String modelname4 ], [ String modelname5 ], [ String modelname6 ] )`

> Set the modelname of the tempmodel. If more than 1 model is specified, it will
> be randomly chosen when spawned

> `numsegments( Integer numsegments )`

> Set the number of segments in a beam

> `offset( [ String [random|crandom] ], [ Float offsetX ], [ String [random|crandom] ], [ Float offsetY ], [ String [random|crandom] ], [ Float offsetZ ] )`

> If random is specified, the component will range from 0 to +specified offset.
> If crandom is specified, the component will range from -specified to +specified offset.
> If neither random or crandom is specified, then the component will just be added on
> without randomness.
> This offset is applied using the world axis.

> `offsetalongaxis( [ String [crandom|random] ], Float offsetx, [ String [crandom|random] ], Float offsety, [ String [crandom|random] ], Float offsetz )`

> If random is specified, the component will range from 0 to specified offset.
> If crandom is specified, the component will range from -specified to +specified offset.
> If neither random or crandom is specified, then the component will just be added on
> without randomness.
> This offset is applied using the model's local axis

> `orientation( Float degrees )`

> Set the degrees to orient the decal. Specify 'random' to use a random orientation

> `originbeamemitter`

> Spawn beams from the origin.
> This command is followed by a ( to specify a block of commands that modify the beam

> `originbeamspawn`

> Spawn a beam from the origin.
> This command is followed by a ( to specify a block of commands that modify the beam

> `origindlight( Float red, Float green, Float blue, Float intensity, Float life, [ String type1 ], [ String type2 ] )`

> Spawn a dynamic light from the origin of the model
> The red,green,blue parms are the color of the light
> The intensity is the radius of the light
> type is the type of light to create (lensflare,viewlensflare,additive)

> `originemitter( String emitterName )`

> Create an emitter that spawns tempmodels from the origin.
> This command is followed by a ( to specify a block of commands that modify the tempmodels

> `originspawn`

> Spawn tempmodels from the origin.
> This command is followed by a ( to specify a block of commands that modify the tempmodels

> `parallel`

> Set tempmodel to be parallel to the viewer

> `parentangles`

> Set the tempmodels angles to that of its parent

> `parentlink`

> Set the tempmodels linked to the parent, so they move with the parent model

> `physicsrate( String rate )`

> Set the rate (in updates per second) for the tempmodel's physics to be updated

> `print( String string )`

> Prints a string.

> `radius( Float radius )`

> Set the radius of the sphere for the inwardsphere amd sphere settings

> `randomchance( Float percentage, [ String [arg1] ], [ String [arg2] ], [ String [arg3] ], [ String [arg4] ], [ String [arg5] ], [ String [arg6] ] )`

> Set the percentage chance that command will occur

> `randomroll`

> Set the tempmodels so they pick a random roll value every frame

> `randvel( [ String [random|crandom] ], [ Float xVel ], [ String [random|crandom] ], [ Float yVel ], [ String [random|crandom] ], [ Float zVel ] )`

> Add a random component to the regular velocity.
> If random is specified, the component will range from 0 to specified velocity.
> If crandom is specified, the component will range from -specified to +specified velocity.
> If neither random or crandom is specified, then the component will just be added on
> without randomness.
> This velocity is applied using the world axis

> `randvelaxis( [ String [random|crandom] ], [ Float forwardVel ], [ String [random|crandom] ], [ Float rightVel ], [ String [random|crandom] ], [ Float upVel ] )`

> Add a random component to the regular velocity.
> If random is specified, the component will range from 0 to specified velocity.
> If crandom is specified, the component will range from -specified to +specified velocity.
> If neither random or crandom is specified, then the component will just be added on
> without randomness.
> This velocity is applied using the parent axis

> `scale( Float scale )`

> Set the scale of a spawned tempmodel

> `scalemax( Float scalemax )`

> Set the maximum scale of a spawned tempmodel

> `scalemin( Float scalemin )`

> Set the minimum scale of a spawned tempmodel

> `scalerate( Float rate )`

> Set the scaling rate of the spawned tempmodel
> If a negative rate is used, the model will shrink

> `scaleupdown`

> Set the tempmodel to scale up to scale value and then down.

> `sound( String soundName, [ Integer channel ], [ Float volume ], [ Float min_distance ] )`

> Play the specified sound

> `spawnrate( Float rate )`

> Set the spawnrate of the emitter (models per second).
> This is only used for emitters and not for the originspawn and tagspawn commands

> `sphere`

> Set the tempmodels to spawn in a sphere around the origin.
> If sphereradius is set, the tempmodels will spawn at the radius distance from
> the origin

> `spread( Float spreadx, Float spready )`

> Add a random variance in the spawned beam in the forward direction by the amound specified in spreadx and spready

> `startoff`

> Signals an emitter to start in the off state (no tempmodels are emitted)

> `stopsound( Integer channel )`

> Stops the sound on the specified channel.

> `swarm( Integer frequency, Float maxspeed, Float delta )`

> Create a swarm like effect that the tempmodels follow when they are spawned
> frequency is how often they change direction
> maxspeed is how fast the tempmodel will move (it's randomly generated every
> time the frequency is hit
> delta is how much the tempmodel moves toward the origin every frame

> `swipe( [ Vector origin ] )`

> Do a swipe and add it on to the swipe rendering list.

> `swipeoff`

> Signal the end of a swipe

> `swipeon( String shader, String startTagName, Float endTagNamelife, Float life )`

> Signal the start of a swipe from the current tag

> `tagbeamemitter( String tagstart, String tagend, String name )`

> Create a beam emitter that uses 2 tags to determine it's start and end position

> `tagbeamspawn( String tagstart, Float name )`

> Create a beam emitter that uses the tag to determine it's starting position.

> `tagdlight( String tagName, Float red, Float green, Float blue, Float intensity, Float life, [ String type1 ], [ String type2 ] )`

> Spawn a dynamic light from the specified tag
> The red,green,blue parms are the color of the light
> The intensity is the radius of the light
> type is the type of light to create (lensflare,viewlensflare,additive)

> `tagemitter( String tagName, String emitterName )`

> Create an emitter that spawns tempmodels from the specified tag.
> This command is followed by a ( to specify a block of commands that modify the tempmodels

> `taglist( String arg1, String arg2, [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ], [ String arg7 ], [ String arg8 ] )`

> Set the tag list to create a beam that travels between all the tags

> `tagspawn( String tagName )`

> Spawn tempmodels from the specified tag.
> This command is followed by a ( to specify a block of commands that modify the tempmodels

> `tagtraceimpactmark( String tagname, [ Integer temporary ] )`

> Perform a trace from the specified tag to the maxlength and put the shader as a decal on the surface it hits
> temporary = specify 1 for a temporary mark that only appears for a short time, 0 for a decal that stays aroung longer (default is 0)

> `tagtraceimpactsound( String tagname, Integer maxlength )`

> Perform a trace from the specified tag to the maxlength and play a sound at that position

> `tagtraceimpactspawn( String tagname )`

> Perform a trace from the specified tag to the maxlength and spawn the specified model there.

> `tracecount( Integer count )`

> Set the number of traces that are done

> `tracelength( Float length )`

> Set the length of the trace for the decal

> `trail( String shader, String startTag, String endTag, Float life )`

> Set the tempmodel to have a swipe that follows it

> `twinkle( Float mintimeoff, Float maxtimeoff, Float mintimeon, Float maxtimeon )`

> Set the tempmodel to twinkle with the specified settings

> `uselasttraceend`

> Makes this trace command use the end results of the last trace command

> `velocity( Float forwardVelocity )`

> Set the forward velocity of the spawned tempmodel

> `wavy( [ String [random|crandom] ], [ Float distance ] )`

> Set the tempmodel to move in a wavy path to a maxmimun of the distance specified
> If random is specified, the distance is between 0 and +specified distance
> If crandom is specified, the distance is between -specified and +specified distance

## EmitterLoader -> Listener -> Class

> `emitter( String emittername )`

> Create a new emitter

## Event -> Class

## Listener -> Class

> `immediateremove`

> Removes this listener immediately.

> `remove`

> Removes this listener the next time events are processed.

## Script -> Class

## 6 Client Game Module Classes.
107 Client Game Module Events.