#
Game Module Classes

## Actor, Animate, Entity, ScriptSlave, ScriptThread, Sentient, Trigger, World

## Actor (monster_generic) -> Sentient -> Animate -> Entity -> Listener -> Class

> `active( Integer active_flag )`

> Specifies whether the actor's is active or not.

> `actor_pickup( String tag_name )`

> Makes the actor pickup current pickup_ent (should only be called from a tiki).

> `actor_throw( String tag_name )`

> Makes the actor throw whatever is in its hand (should only be called from a tiki).

> `actorfade`

> Makes the actor fade out.

> `addhealth( Float health_to_add, Float maxhealth )`

> Adds health to the actor.

> `ai_deaf`

> Makes the actor ignore sounds.

> `ai_dumb`

> Makes the actor ignore sounds and sight.

> `ai_off`

> Turns the AI off for this actor.

> `ai_on`

> Turns the AI on for this actor.

> `allowfall( [ Boolean allow_fall_bool ] )`

> Makes the actor ignore falls when trying to move.

> `allowhangback( Integer allow_bool )`

> Sets whether or not the actor will bother to hang back.

> `allowtalk( Integer allow_bool )`

> Sets whether or not the actor will bother to talk to the player.

> `alwaysgivewater( Boolean give_water )`

> Turns the always give water bool on off (gives water from soul sucker weapon).

> `anim( String anim_name )`

> Starts the PlayAnim behavior.

> `anim_done`

> Called when the actor's animation is done, it is not meant to be called from script.

> `animal`

> Makes the actor neutral to all.

> `attack( Entity ent )`

> Makes the actor attack the specified entity.

> `attackablebyactors( Boolean attackable_by_actors )`

> Sets whether or not this actor is allowed to be attacked by other actors.

> `attackactors`

> Sets this actor to attack other actors.

> `attackmode( Boolean attack_bool )`

> Makes the actor go directly into attacking the player if bool is true.

> `attackplayer`

> Makes enemies of all the players.

> `bleed_after_death( Boolean bleed_bool )`

> Sets whether or not the actor will bleed after dying.

> `blind`

> Makes the actor permanently blind (will never try to see).

> `bounceoff`

> Makes projectiles bounce off of actor (if they can't damage actor).

> `bounceoffeffect( String bounce_off_effect_name )`

> Sets the name of the effect to play when something bounces off the actor.

> `bounceoffevent( Vector object_origin )`

> Lets the actor know something just bounces off of it.

> `bullet( String tag_name, [ Boolean use_current_pitch ] )`

> Fires a bullet from the actor from the specified tag towards the current enemy.

> `canbefinishedby( String mod1, [ String mod2 ], [ String mod3 ], [ String mod4 ], [ String mod5 ], [ String mod6 ] )`

> Adds to the can be finished by list for this actor.

> `canwalkonothers`

> Allows the actor to walk on top of others.

> `changetype( String new_model_name )`

> Changes the actor to the specified new type of actor.

> `chargewater( Float damage, Float range )`

> Does a charge water attack.

> `civilian`

> Makes the actor nuetral to all, runs from danger.

> `clearspawnitems`

> Clears the list of items to spawn when this actor is killed.

> `damage_once_start`

> Makes the actor only do melee damage at most once during this attack.

> `damage_once_stop`

> Specifies that the actor is done with the damage once event.

> `damageallowed( Boolean damage_allowed )`

> Turns melee damage on and off.

> `damageangles( Float damage_angles )`

> Sets the the angles where the actor can be hurt (like fov).

> `damageenemy( Float damage )`

> Damages the current enemy by the specified amount.

> `dead`

> Does everything necessary when an actor dies, it is not meant to be called from script.

> `deaf`

> Makes the actor permanently deaf (will always ignore sounds).

> `deathfade`

> Makes the actor fade when dead.

> `deathshrink`

> Makes the actor shrink when dead.

> `deathsink`

> Makes the actor sink into the ground when dead.

> `deathsize( Vector min, Vector max )`

> Sets the actors new size for death.

> `decrementnumspawns`

> Decrements the number of spawns this actor has.

> `dialog( String alias, [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Add a dialog to this sentient.

> `dialogdone`

> Called when the sentient's dialog is done, it is not meant to be called from script.

> `diecompletely( Boolean die_bool )`

> Sets whether or not the actor dies completely (if he doesn't he mostly just runs his kill_thread).

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

> `endthread`

> Ends the actors thread.

> `enemy`

> Makes the actor an enemy to the player.

> `enemytype( String enemytype )`

> Sets the name of this actor's enemy type.

> `eyeoffset( Vector eyeoffset )`

> Sets the actor's eye position.

> `feetwidth( Float feet_width )`

> Sets the width of the feet for this actor if different than the bounding box size.

> `finishedbehavior`

> Ends the current behavior, it is not meant to be called from script.

> `fly( [ Boolean fly_bool ] )`

> Specifies actor as being able to fly (optional bool can turn fly on or off).

> `forwardspeed( Float forwardspeed )`

> Sets the actor's forward speed.

> `fov( Float fov )`

> Sets the actor's field of view (fov).

> `friend`

> Makes the actor allied to the player.

> `getnearestenemy`

> Sets currentEnemy to the nearest enemy.

> `getrandomenemy( Float range )`

> Sets currentEnemy to a random enemy in range.

> `goto( String label )`

> Goes to the specified label.

> `gotonextstage`

> Makes the actor goto his next stage.

> `gotoprevstage`

> Makes the actor goto his previous stage.

> `gotostage( Integer stage_number )`

> Makes the actor goto the specified stage.

> `havething( Integer thing_number, Boolean have_bool )`

> Sets whether or not the actor has this thing number.

> `headtwitch( [ Boolean end ] )`

> Makes the actors head twitch a little(used while talking).

> `headtwitcheveryframe`

> Makes the actors head twitch a little(used while talking).

> `headwatch( Entity entity_to_watch, [ Float max_speed ] )`

> Actor watches the specified entity by turning his head.

> `health( Integer newHealth )`

> set the health of the entity to newHealth

> `heardsound( Entity noisyEntity, Vector noisyLocation )`

> sent to entities when another makes a sound, not for script use

> `idle( [ String state_name ] )`

> Tells the actor to go into idle mode.

> `ifcanhideat( Vector pos, [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Processes command if actor can hide at specified position.

> `ifenemyvisible( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Process the following command if enemy is visible

> `ifenemywithin( Float distance, [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Processes command if actor is within distance of its current enemy.

> `ifnear( String name, Float distance, [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Process the following command if enemy is within specified distance

> `ignore_placement_warning( String warning_string )`

> Makes the specified placement warning not get printed for this actor.

> `ignoremonsterclip`

> Makes the actor ignore monster clip brushes.

> `ignorepainfromactors`

> Makes this actor ignore pain from other actors.

> `ignorewater( Boolean ignore_water_bool )`

> Sets whether or not this actor will ignore water when moving.

> `immortal( Boolean immortal_bool )`

> Sets whether or not the actor is immortal or not.

> `inanimate`

> Makes the actor an inanimate object.

> `incoming_proj( Entity ent )`

> Notifies the actor of an incoming projectile.

> `incrementnumspawns`

> Increments the number of spawns this actor has.

> `jumpto( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Actor jumps to specified path node

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `killthread( String kill_thread )`

> Sets the actor's kill thread.

> `lookat( Entity ent )`

> Specifies an entity to look at.

> `max_inactive_time( Float max_inactive_time )`

> Sets the maximum amount of time an actor will stay idle before going to sleep.
> Also sepecifies the maximum amount of time an actor will keep looking for an
> enemy that the actor can no longer see.

> `maxbosshealth( Float max_boss_health )`

> Sets the actor's max boss health.

> `melee( [ Float damage ], [ String tag_name ], [ String means_of_death ], [ Vector attack_vector ], [ Float knockback ], [ Integer use_pitch_to_enemy ], [ Float attack_min_height ] )`

> Makes the actor do a melee attack.
> attack_vector = "width length height"

> `minmeleeheight( Float minimum_height )`

> Sets the minimum height a melee attack has to be to hurt the actor.

> `monster`

> Makes the actor an enemy to player, civilians, and inanimate objects.

> `mouthangle( Float mouth_angle )`

> Sets the mouth angle of the sentient.

> `name( String name )`

> Specifies the name of this actor type.

> `neverignoresounds`

> Makes the actor always listen to sounds even if it already has an enemy.

> `nochatter`

> Makes the actor not chatter.

> `noland`

> Specifies actor as not being able to walk on land.

> `nomask`

> Makes the actor use a mask of 0.

> `nopainsounds`

> Makes the actor not broadcast sounds (AI stimuli) when taking pain or killed.

> `not_allowed_to_kill`

> Player fails the level if he kills an actor with this set.

> `notifybehavior`

> Notifies the current behavior of an event,it is not meant to be called from script.

> `notifyothersatdeath`

> Makes the actor notify other actors of the same type when killed.

> `notsolidmask`

> Makes the actor use a nonsolid mask.

> `only_shootable`

> Makes the actor solid only to projectiles.

> `pain( Integer damage, Entity attacker, Integer meansofdeath )`

> used to inflict pain to an entity

> `painthreshold( Float pain_threshold )`

> Sets the actor's pain threshold.

> `part_name( String part_name )`

> Specifies the name of this part (implying that this is a multi-part creature.

> `pickupent( Entity entity_to_pickup, String pickup_anim_name )`

> Makes actor pick up the specified entity

> `playdialog( [ String sound_file ], [ String state_name ], [ Entity user ] )`

> Plays a dialog.

> `proj( String tag_name, String projectile_name, [ Integer number_of_tags ], [ Boolean arc_bool ], [ Float speed ] )`

> Fires a projectile from the actor towards the current enemy.

> `push( Vector dir )`

> Pushes the actor in the specified direction.

> `pushable`

> Sets whether or not an actor can be pushed out of the way.

> `register_parts( Entity entity, Integer forward )`

> Registers the passed in part as another part of this actor and specifies
> whether or not to forward this message to the other parts.

> `register_self`

> Starts registration process for multi-entity actors

> `releasenode( Vector pos )`

> Releases a path node from being reserved.

> `remove_useless`

> Removes a useless dead body from the game.

> `reservenode( Vector pos, Float time )`

> Reserves a path node for the specified amount of time.

> `resethead( [ Float max_speed ] )`

> Actor resets its head back to looking forwards.

> `runthread( String label )`

> Runs the specified thread.

> `runto( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Actor runs to specified path node

> `sendcommand( String command, String part_name )`

> Sends a command to another one of its parts.

> `set_idle_state_name( String new_idle_state_name )`

> Sets the actor's new idle state name.

> `setidlethread( String thread )`

> Sets the thread that will be run if this actor gets back to the idle state again.

> `setmask( String mask_name )`

> Sets the actor's mask to the specified mask.

> `simplepathfinding`

> Makes the actor use simplier path finding.

> `sleep`

> Put the actor to sleep.

> `solidmask`

> Makes the actor use a solid mask.

> `spawnactor( String model_name, String tag_name, Integer how_many, Boolean attack, Float width, Float height, [ Float spawn_offset ] )`

> Spawns the specified number of actors.

> `spawnactoratlocation( String model_name, String pathnode_name, Integer how_many_path_nodes, Boolean attack, Float width, Float height )`

> Spawns the specified actor at the specified pathnode.

> `spawnblood( String blood_name, String tag_name, [ Boolean use_last_spawn_result ] )`

> Spawns blood at the specified tag.

> `spawnchance( Float spawn_chance )`

> Sets the chance that this actor will spawn something when killed.

> `spawngib( Vector offset, Float final_pitch, Float width, String cap_name, String surface_name1, [ String surface_name2 ], [ String surface_name3 ], [ String surface_name4 ], [ String surface_name5 ], [ String surface_name6 ], [ String surface_name7 ], [ String surface_name8 ], [ String surface_name9 ] )`

> Spawns a body part.

> `spawngibattag( String tag_name, Float final_pitch, Float width, String cap_name, String surface_name1, [ String surface_name2 ], [ String surface_name3 ], [ String surface_name4 ], [ String surface_name5 ], [ String surface_name6 ], [ String surface_name7 ], [ String surface_name8 ], [ String surface_name9 ] )`

> Spawns a body part.

> `spawnitem( String spawn_item_name )`

> Adds this names item to what will be spawned when this actor is killed.

> `spawnnamedgib( String gib_name, String tag_name, Float final_pitch, Float width )`

> Spawns a body named gib.

> `start`

> Initializes the actor a little, it is not meant to be called from script.

> `statemap( String statemap_name, [ String state_name ] )`

> Sets which statemap file to use and optionally what the first state to go to.

> `staysolid`

> Makes the actor stay solid after death.

> `stopdialog`

> Stops the actor's dialog.

> `suicide`

> Makes the actor commit suicide.

> `swim`

> Specifies actor as being able to swim.

> `targetable( Boolean should_target )`

> Sets whether or not this actor should be targetable by the player.

> `thread( String label )`

> Sets which thread to use for this actor.

> `throwent( String throw_anim_name )`

> Makes actor throw the entity in hands

> `touchtriggers( Boolean touch_triggers_bool )`

> Sets whether or not this actor can touch triggers or not.

> `trigger_field( Vector min, Vector max )`

> Specifies to create a trigger field around the actor of the specified size.

> `trigger_touched( Entity ent )`

> Notifies the actor that its trigger field has been touched.

> `turnspeed( Float turnspeed )`

> Sets the actor's turnspeed.

> `turnto( Float direction )`

> Specifies the direction to look in.

> `turntowardsenemy`

> Turns the actor towards the current enemy.

> `updatebosshealth( Float waterlevel )`

> Tells the actor to update the bosshealth cvar each time it thinks.

> `usegravity( Boolean use_gravity )`

> Tells the actor whether or not to use gravity for this animation.

> `visiondistance( Float vision_distance )`

> Sets the distance the actor can see.

> `wakeup`

> Wake up the actor.

> `walkto( String pathnode, [ String anim_name ] )`

> Actor walks to specified path node

> `walkwatch( String pathnode, Entity entity, [ String anim_name ] )`

> Actor walks to specified path node and watches the specified entity

> `warpto( String node_name )`

> Warps the actor to the specified node

> `watchoffset( Vector offset )`

> Sets the actor's watch offset.

> `waterlevel( Float waterlevel )`

> Sets the actor's water level.

## Aim -> Behavior -> Listener -> Class

## AimAndMelee -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## AimAndShoot -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Ammo -> Class

## AmmoEntity -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

## Animate (animate) -> Entity -> Listener -> Class

> `anim( String animName )`

> set the legs animation to animName.

> `animate_newanim( Integer animNum, Integer bodyPart )`

> Start a new animation, not for script use.

> `animdone`

> Legs animation has finished, not for script use.

> `setframe( Integer frameNumber, [ String animName ] )`

> Set the frame on the legs, if anim is not specified, current is assumed.

> `setmovedelta( Vector moveDelta, Float moveTime )`

> movement from animation, not for script use.

> `stopanimating`

> stop the legs from animating. Animation will end at the end of current cycle.

> `torso_anim( String animName )`

> set the torso animation to animName.

> `torso_animdone`

> Torso animation has finished, not for script use.

> `torso_setframe( Integer frameNumber, [ String animName ] )`

> Set the frame on the torso, if anim is not specified, current is assumed.

> `torso_stopanimating`

> stop the torso from animating. Animation will end at the end of current cycle.

## AntiSBJuice (AntiSBJuice) -> InventoryItem -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `antiSBjuice_wearoff`

> Is called when the effect wears off.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

## Archiver -> Class

## Armor -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

## BackWheels (script_wheelsback) -> VehicleBase -> ScriptModel -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## Behavior -> Listener -> Class

## BurrowAttack -> Behavior -> Listener -> Class

## Camera (func_camera) -> Entity -> Listener -> Class

> `angles( Vector newAngles<0.00...360.00><0.00...360.00><0.00...360.00> )`

> set the angles of the entity to newAngles.

> `auto_active( Boolean newActiveState )`

> Whether or not the auto camera is active.

> `auto_maxfov( Float maxFOV )`

> Sets the maximum FOV that should be used when automatically calculating FOV.

> `auto_radius( Float newRadius )`

> Sets the radius of the automatic camera.

> `auto_starttime( Float newTime )`

> Sets how long it takes for the camera to be switched to.

> `auto_state( String state1, [ String state2 ], [ String state3 ], [ String state4 ], [ String state5 ], [ String state6 ] )`

> Sets the states the player needs to be in for this camera to activate.

> `auto_stoptime( Float newTime )`

> Sets how long it takes for the camera switch back to the player.

> `camera_think`

> Called each frame to allow the camera to adjust its position.

> `continue`

> Continue the camera movement.

> `cut`

> switch camera states immediately, do not transition

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `fadetime( Float fadetime )`

> Sets the fade time for camera transitioning.

> `follow( Entity targetEnt, [ Entity targetWatchEnt ] )`

> Makes the camera follow an entity and optionally watch an entity.

> `follow_distance( Float distance )`

> Sets the camera follow distance.

> `follow_yaw( Float yaw )`

> Sets the yaw offset of the camera following an entity.

> `follow_yaw_absolute`

> Makes the follow camera yaw absolute.

> `follow_yaw_relative`

> Makes the follow camera yaw relative (not absolute).

> `fov( Float fov, [ Float fadeTime ] )`

> Sets the camera's field of view (fov).
> if fadeTime is specified, camera will fade over that time
> if fov is less than 3, than an auto_fov will be assumed
> the value of fov will be the ratio used for keeping a watch
> entity in the view at the right scale

> `lookat( Entity ent )`

> Makes the camera look at an entity.

> `moveto( Entity ent )`

> Move the camera's position to that of the specified entities.

> `movetopos( Vector position )`

> Move the camera's position to the specified position.

> `nextcamera( String nextCamera )`

> Sets the next camera to use.

> `nowatch( [ Float fadeTime ] )`

> Stop watching an entity or looking along a path.
> Camera is now static as far as orientation.
> if fadeTime is specified, camera will fade over that time

> `orbit( Entity targetEnt, [ Entity targetWatchEnt ] )`

> Makes the camera orbit around an entity and optionally watch an entity.

> `orbit_height( Float height )`

> Sets the orbit camera's height.

> `pause`

> Pause the camera.

> `setthread( String thread )`

> Sets the thread to use.

> `speed( Float speed )`

> Sets the camera speed.

> `start`

> Start camera moving.

> `stop`

> Stop the camera movement.

> `thread( String thread )`

> Sets the thread to use.

> `turnto( Vector angle )`

> Makes the camera look in the specified direction.

> `watch( Entity watchEnt, [ Float fadeTime ] )`

> Makes the camera watch an entity.
> if fadeTime is specified, camera will fade over that time

> `watchnode( [ Float fadeTime ] )`

> Makes the camera watch based on what is stored
> in the camera nodes.
> if fadeTime is specified, camera will fade over that time

> `watchpath( [ Float fadeTime ] )`

> Makes the camera look along the path of travel.
> if fadeTime is specified, camera will fade over that time

## CameraManager -> Listener -> Class

> `add`

> Add a new point to the camera path where the player is standing.

> `delete`

> Delete the current path node.

> `hide`

> Hides the paths.

> `load( String filename )`

> Loads a camera path.

> `loop( [ Entity path ] )`

> Loop the current path or the specified one.

> `moveplayer`

> Move the player to the current path node position.

> `new`

> Starts a new path.

> `next`

> Go to the next path node.

> `nextpath`

> Go to the next path.

> `nowatch`

> Set the current path node to watch nothing.

> `play( [ Entity path ] )`

> Play the current path or the specified one once.

> `prev`

> Go to the previous path node.

> `prevpath`

> Go to the previous path.

> `renamepath( String newName )`

> Rename the path to the new name.

> `replace`

> Replace the current path node position/angle with the player's.

> `save( String filename )`

> Saves the camera path.

> `savemap( String filename )`

> Saves the camera path to a map file.

> `setfadetime( Float newFadeTime )`

> Set the fadetime of the current path node.

> `setfov( String newFOV )`

> Set the fov at the current path node.

> `setpath( Entity path )`

> Sets the new path.

> `setspeed( Float speed )`

> Set the speed of the camera at the current path node.

> `settarget( String target )`

> Set the trigger target.

> `settargetname( String targetname )`

> Set the targetname.

> `setthread( String thread )`

> Sets the thread for the current path node.

> `show( [ Entity path ] )`

> Shows the specified path.

> `stop`

> Stop the camera playing path.

> `updateinput`

> Updates the current node with user interface values.

> `watch( String watch )`

> Set the current path node to watch something.

## Chase -> Steering -> Listener -> Class

## CircleAttack -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## CircleEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## CircleOfProtection -> InventoryItem -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `damage( Float damage )`

> Set the amount of damage the COP does

> `damagedelay( Float delay )`

> Set the delay between doing damage

> `knockback( Float knockback )`

> Set the knockback of the damage effect

> `maxradius( Float maxradius )`

> Set the maximum distance for the enemy in order for it to be damaged.

> `minradius( Float minradius )`

> Set the minimum distance for the enemy in order for it to be damaged.

> `useinvitem`

> Use this inventory item.

## Class

## ClusterBomb -> Projectile -> Animate -> Entity -> Listener -> Class

> `clustercount( Integer count )`

> The number of clusters to spawn

> `clustermodel( String modelname )`

> The model of the bombs that are spawned when the main bomb explodes

## CrossbowProjectile -> Projectile -> Animate -> Entity -> Listener -> Class

## Decal -> Entity -> Listener -> Class

## Digest -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

## Door (NormalDoor) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `close`

> Closes the door.

> `dmg( Integer damage )`

> Sets the amount of damage the door will do to entities that get stuck in it.

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `doBlocked( Entity obstacle )`

> sent to entity when blocked.

> `door_triggerfield( Entity other )`

> Is called when a doors trigger field is touched.

> `doorclosed`

> Called when the door finishes closing.

> `dooropened`

> Called when the door finishes opening.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `linkdoor`

> Link doors together.

> `lock`

> Lock the door.

> `open( Entity other )`

> Opens the door.

> `sound_locked( String sound_locked )`

> Sets the sound to use when the door is locked.

> `sound_message( String sound_message )`

> Sets the sound to use when the door displays a message.

> `sound_move( String sound_move )`

> Sets the sound to use when the door moves.

> `sound_stop( String sound_stop )`

> Sets the sound to use when the door stops.

> `time( Float traveltime )`

> Sets the time it takes for the door to open an close.

> `toggledoor( Entity other )`

> Toggles the state of the door (open/close).

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `tryToOpen( Entity other )`

> Tries to open the door.

> `unlock`

> Unlock the door.

> `wait( Float wait )`

> Sets the amount of time to wait before automatically shutting.

## DragEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## DrivableVehicle (script_drivablevehicle) -> Vehicle -> VehicleBase -> ScriptModel -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

## Earthquake (func_earthquake) -> Trigger -> Animate -> Entity -> Listener -> Class

> `duration( Float duration )`

> Sets the duration of the earthquake.

> `earthquake_deactivate`

> Stops the earthquake.

> `magnitude( Float theMagnitude )`

> Sets the magnitude of the earthquake.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## EdenWater (item_edenwater) -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `item_pickup( Entity item )`

> Pickup the specified item.

## Emitter (func_emitter) -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `emitter( String name )`

> Emitter to use

> `idle`

> Animates the puff daddy.

## Entity -> Listener -> Class

> `alias( String alias, String realname, [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String paramater6 ] )`

> create an alias for the given realname
> Valid parameters are as follows:
> global - all instances act as one
> stop - once used, don't use again
> timeout [seconds] - once used wait [seconds] until using again
> maxuse [times] - can only be used [times] times.
> weight [weight] - random weighting

> `aliascache( String alias, String realname, [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String paramater6 ] )`

> create an alias for the given realname and cache the resource
> Valid parameters are as follows:
> global - all instances act as one
> stop - once used, don't use again
> timeout [seconds] - once used wait [seconds] until using again
> maxuse [times] - can only be used [times] times.
> weight [weight] - random weighting

> `alpha( Float newAlpha )`

> Set the alpha of the entity to alpha.

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `angles( Vector newAngles<0.00...360.00><0.00...360.00><0.00...360.00> )`

> set the angles of the entity to newAngles.

> `attach( Entity parent, String tagname, [ Integer use_angles ] )`

> attach this entity to the parent's legs tag called tagname

> `attachmodel( String modelname, String tagname, [ Float scale ], [ String targetname ], [ Boolean detach_at_death ], [ Float removetime ], [ Float fadeintime ], [ Float fadeoutdelay ], [ Float fadetime ], [ Vector offset ] )`

> attach a entity with modelname to this entity to tag called tagname.
> scale - scale of attached entities
> targetname - targetname for attached entities
> detach_at_death - when entity dies, should this model be detached.
> removetime - when the entity should be removed, if not specified, never.
> fadeintime - time to fade the model in over.
> fadeoutdelay - time to wait until we fade the attached model out
> fadeoutspeed - time the model fades out over
> offset - vector offset for the model from the specified tag

> `bind( Entity parent )`

> bind this entity to the specified entity.

> `cache( String resourceName )`

> pre-cache the given resource.

> `censor`

> used to ban certain contact when in parentmode

> `classname( String nameOfClass )`

> Determines what class to use for this entity,
> this is pre-processed from the BSP at the start
> of the level.

> `damage_type( String meansofdeathstring )`

> Set the type of damage that this entity can take

> `deathsinkeachframe`

> Makes the entity sink into the ground and then get removed (this gets called each frame).

> `deathsinkstart`

> Makes the entity sink into the ground and then get removed (this starts it).

> `detach`

> detach this entity from its parent.

> `detachallchildren`

> Detach all the children from the entity.

> `droptofloor( [ Float maxRange ] )`

> drops the entity to the ground, if maxRange is not specified 8192 is used.

> `effects( [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String parameter6 ] )`

> Change the current entity effects flags.
> Valid flags are as follows:
> + sets a flag, - clears a flag
> antisbjuice - anti sucknblow juiceeveryframe - process commands every time entity is rendered

> `explosionattack( String explosionModel, [ String tagName ] )`

> Spawn an explosion optionally from a specific tag

> `fade( [ Float fadetime<0.00...max_float> ], [ Float target_alpha<0.00...1.00> ] )`

> Fade the entity's alpha, reducing it by 0.03
> every FRAMETIME, until it has faded out, does not remove the entity

> `fadein( [ Float fadetime<0.00...max_float> ], [ Float target_alpha<0.00...1.00> ] )`

> Fade the entity's alpha and scale in, increasing it by 0.03
> every FRAMETIME, until it has faded completely in to 1.0.
> If fadetime or target_alpha are defined, they will override
> the default values.

> `fadeout( [ Float fadetime<0.00...max_float> ], [ Float target_alpha<0.00...1.00> ] )`

> Fade the entity's alpha and scale out, reducing it by 0.03
> every FRAMETIME, until it has faded out. If fadetime or
> target_alpha are defined, they will override the defaults.
> Once the entity has been completely faded, the entity is removed.

> `flags( [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String parameter6 ] )`

> Change the current entity flags.
> Valid flags are as follows:
> + sets a flag, - clears a flag
> blood - should it bleed
> explode - should it explode when dead
> die_gibs - should it spawn gibs when dead
> god - makes the entity invincible

> `ghost`

> make non-solid but still send to client regardless of hide status.

> `gravity( Float gravityValue )`

> Change the gravity on this entity

> `health( Integer newHealth )`

> set the health of the entity to newHealth

> `hide`

> hide the entity, opposite of show.

> `hurt( Integer damage, [ String means_of_death ], [ Vector direction ] )`

> Inflicts damage if the entity is damageable. If the number of damage
> points specified in the command argument is greater or equal than the
> entity's current health, it will be killed or destroyed.

> `ifskill( Integer skillLevel, String command, [ String argument1 ], [ String argument2 ], [ String argument3 ], [ String argument4 ], [ String argument5 ] )`

> if the current skill level is skillLevel than execute command

> `joinTeam( Entity teamMember )`

> join a bind team.

> `kill`

> console based command to kill yourself if stuck.

> `killattach`

> kill all the attached entities.

> `killtarget( String targetName )`

> when dying kill entities with this targetName.

> `light( Float red, Float green, Float blue, Float radius )`

> Create a dynmaic light on this entity.

> `lightBlue( Float red )`

> Set the red component of the dynmaic light on this entity.

> `lightGreen( Float red )`

> Set the red component of the dynmaic light on this entity.

> `lightOff`

> Turn the configured dynamic light on this entity off.

> `lightOn`

> Turn the configured dynmaic light on this entity on.

> `lightRadius( Float red )`

> Set the red component of the dynmaic light on this entity.

> `lightRed( Float red )`

> Set the red component of the dynmaic light on this entity.

> `lightStyle( Integer lightStyleIndex )`

> What light style to use for this dynamic light on this entity.

> `lookatme`

> Makes the player look at this object if close.

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

> play a looped-sound with a certain volume and minimum_distance
> which is attached to the current entity.

> `mass( Float massAmount )`

> set the mass of this entity.

> `model( Entity modelName )`

> set the model to modelName.

> `nodamage`

> entity does not take damage.

> `notsolid`

> make non-solid.

> `origin( Vector newOrigin )`

> Set the origin of the entity to newOrigin.

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

> play a sound coming from this entity.
> default channel, CHAN_BODY.

> `processinit( Integer modelIndex )`

> process the init section of this entity, this is an internal command,
> it is not meant to be called from script.

> `quitTeam`

> quit the current bind team

> `removeattachedmodel( String tagname )`

> Removes the model attached to this entity at the specified tag.

> `rendereffects( [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String parameter6 ] )`

> Change the current render effects flags.
> Valid flags are as follows:
> + sets a flag, - clears a flag
> dontdraw - send the entity to the client, but don't draw
> betterlighting - do sphere based vertex lighting on the entity
> lensflare - add a lens glow to the entity at its origin
> viewlensflare - add a view dependent lens glow to the entity at its origin
> lightoffset - use the dynamic color values as a light offset to the model
> skyorigin - this entity is the portal sky origin
> minlight - this entity always has some lighting on it
> fullbright - this entity is always fully lit
> additivedynamiclight - the dynamic light should have an additive effect
> lightstyledynamiclight - the dynamic light uses a light style, use the
> 'lightstyle' command to set the index of the light style to be used

> `scale( Float newScale )`

> set the scale of the entity

> `scriptshader( String shaderCommand, Float argument1, [ Float argument2 ] )`

> alias for shader command, change a specific shader parameter for the entity.
> Valid shader commands are:
> translation [trans_x] [trans_y] - change the texture translation
> offset [offset_x] [offset_y] - change the texture offset
> rotation [rot_speed] - change the texture rotation speed
> frame [frame_num] - change the animated texture frame
> wavebase [base] - change the base parameter of the wave function
> waveamp [amp] - change the amp parameter of the wave function
> wavebase [phase] - change the phase parameter of the wave function
> wavefreq [freq] - change the frequency parameter of the wave function

> `setcontrollerangles( Integer num, Vector angles )`

> Sets the control angles for the specified bone.

> `setsize( Vector mins, Vector maxs )`

> Set the bounding box of the entity to mins and maxs.

> `shader( String shaderCommand, Float argument1, [ Float argument2 ] )`

> change a specific shader parameter for the entity.
> Valid shader commands are:
> translation [trans_x] [trans_y] - change the texture translation
> offset [offset_x] [offset_y] - change the texture offset
> rotation [rot_speed] - change the texture rotation speed
> frame [frame_num] - change the animated texture frame
> wavebase [base] - change the base parameter of the wave function
> waveamp [amp] - change the amp parameter of the wave function
> wavebase [phase] - change the phase parameter of the wave function
> wavefreq [freq] - change the frequency parameter of the wave function

> `show`

> show the entity, opposite of hide.

> `solid`

> make solid.

> `soundevent( [ Float soundRadius ] )`

> Let the AI know that this entity made a sound,
> radius determines how far the sound reaches.

> `spawnflags( Integer flags )`

> spawnflags from the BSP, these are set inside the editor

> `stationary`

> entity does not move, causes no physics to be run on it.

> `stoploopsound`

> Stop the looped-sound on this entity.

> `stopsound( [ Integer channel ] )`

> stop the current sound on the specified channel.
> default channel, CHAN_BODY.

> `surface( String surfaceName, [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String parameter6 ] )`

> change a legs surface parameter for the given surface.
> + sets the flag, - clears the flag
> Valid surface commands are:
> skin1 - set the skin1 offset bit
> skin2 - set the skin2 offset bit
> nodraw - don't draw this surface

> `svflags( [ String parameter1 ], [ String parameter2 ], [ String parameter3 ], [ String parameter4 ], [ String parameter5 ], [ String parameter6 ] )`

> Change the current server flags.
> Valid flags are as follows:
> + sets a flag, - clears a flag
> broadcast - always send this entity to the client

> `takedamage`

> makes entity take damage.

> `target( String targetname_to_target )`

> target another entity with targetname_to_target.

> `targetname( String targetName )`

> set the targetname of the entity to targetName.

> `team( String moveTeam )`

> used to make multiple entities move together.

> `touchtriggers`

> this entity should touch triggers.

> `trigger( String name )`

> Trigger the specified target or entity.

> `unbind`

> unbind this entity.

> `usebbox`

> do not perform perfect collision, use bounding box instead.

## Event -> Class

## ExplodeObject (func_explodeobject) -> MultiExploder -> Trigger -> Animate -> Entity -> Listener -> Class

> `amount( Integer amountOfDebris )`

> How much debris to spawn each time.

> `debrismodel( String debrisModel )`

> What kind of debris to spawn when triggered.

> `severity( Float newSeverity )`

> How violently the debris should be ejected.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## Exploder (func_exploder) -> Trigger -> Animate -> Entity -> Listener -> Class

> `dmg( Integer damage )`

> Sets the damage the explosion does.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## ExplodingWall (func_explodingwall) -> Trigger -> Animate -> Entity -> Listener -> Class

> `anglespeed( Float speed )`

> Set the angle speed.

> `base_velocity( Vector velocity )`

> Set the base velocity.

> `checkonground`

> Check if exploding wall is on ground.

> `dmg( Integer dmg )`

> Set the damage from the exploding wall.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `explosions( Integer explosions )`

> Set the number of explosions.

> `land_angles( Vector angles )`

> Set the land angles.

> `land_radius( Float radius )`

> Set the land radius.

> `random_velocity( Vector velocity )`

> Set the amount of random variation of the base velocity.

> `stoprotating`

> Stop rotating the wall.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## Explosion -> Projectile -> Animate -> Entity -> Listener -> Class

> `constantdamage`

> Makes the explosion do constant damage over the radius

> `damageagain`

> This event is generated each frame if explosion is set to damage each frame

> `damageeveryframe`

> Makes the explosion damage every frame

> `flash( Float time, Float r, Float g, Float b, Float radius )`

> Flash player screens

> `radius( Float projectileRadius )`

> set the radius for the explosion

> `radiusdamage( Float radiusDamage )`

> set the radius damage an explosion does

## FallingRock (func_fallingrock) -> Entity -> Listener -> Class

> `bounce`

> sent to entity when touched.

> `dmg( Integer dmg )`

> Set the damage from the rock.

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `noise( String sound )`

> Set the sound to play when the rock bounces

> `rotate`

> rotates the falling rock.

> `speed( Float speed )`

> Set the speed that the rock moves at.

> `start`

> Starts rock falling.

> `wait( Float wait )`

> How long to wait before rock starts falling.

## FileRead -> Class

## FindCover -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FindEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FindFlee -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Flamethrower -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

## Flashbang -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

## FlashbangProjectile -> Projectile -> Animate -> Entity -> Listener -> Class

> `stunradius( Float radius )`

> Radius of the stun effect

> `stuntime( Float time )`

> Amount of time to stun the target

## Flee -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyCircle -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyClimb -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyCloseToEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyCloseToPlayer -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyDive -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FlyToPoint -> Behavior -> Listener -> Class

## FlyWander -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## FollowPath -> Steering -> Listener -> Class

## FrontWheels (script_wheelsfront) -> VehicleBase -> ScriptModel -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## Fulcrum (func_fulcrum) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `dampening( Float newDampening )`

> dampening of fulcrum.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `limit( Float newLimit )`

> angular limit for the fulcrum.

> `movesound( String newSinkSound )`

> Sound played when fulcrum is moving.

> `reset`

> Reset the fulcrum right now.

> `resetspeed( Float newResetspeed )`

> Speed at which fulcrum resets itself, defaults to 0.002 * speed.

> `speed( Float speed )`

> Speed at which fulcrum operates itself.

## FuncBeam (func_beam) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `activate`

> Activate the beam

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `angles( Vector newAngles<0.00...360.00><0.00...360.00><0.00...360.00> )`

> set the angles of the entity to newAngles.

> `color( Vector beam_color<0.00...1.00><0.00...1.00><0.00...1.00> )`

> Set the color of the beam

> `deactivate`

> Deactivate the beam

> `delay( Float delay )`

> Set the amount of delay on the beam updater

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `endalpha( Float alpha )`

> Set the endpoint alpha value of the beam

> `endpoint( Vector beam_end_point )`

> Set the end point of the beam. The beam will be draw from the origin to
> the end point.

> `findendpoint`

> Find the endpoint of a beam

> `life( Float beam_life )`

> Set the amount of time the beam stays on when activated

> `maxoffset( Float max_offset )`

> Set the maximum offset the beam can travel above, below, forward or back of it's endpoints

> `minoffset( Float min_offset )`

> Set the minimun offset the beam can travel above, below, forward or back of it's endpoints

> `model( Entity modelName )`

> set the model to modelName.

> `numsegments( Integer numsegments )`

> Set the number of segments for the beam

> `numspherebeams( Integer num )`

> Set the number of beams that will be shot out in a sphere like formation

> `overlap( Float beam_overlap )`

> Set the amount of overlap the beams have when they are being strung together

> `persist( Boolean bool )`

> Set the persist property of the beam

> `radius( Float radius )`

> Set the starting radius of the beams if this is a beamsphere

> `shader( String beam_shader )`

> Set the shader that the beam will use

> `shoot`

> Make the beam cause damage to entities that get in the way

> `shootradius( Float radius )`

> Set the radius of the damage area between beam endpoints

> `target( String beam_target )`

> Set the target of the beam. The beam will be drawn from the origin
> to the origin of the target entity

> `tileshader( String beam_shader )`

> Set the shader that the beam will use. This shader will be tiled.

> `toggledelay( [ String [random] ], [ Float time ] )`

> Causes a beam toggling effect. Sets the time between toggling. If random is specified, The time will be between 0 and time

> `updateendpoint`

> Update the endpoint of a beam

> `updateorigin`

> Update the origin of a beam

## FuncRemove (func_remove) -> Entity -> Listener -> Class

## Game -> Class

## GameScript -> Script -> Class

## GameScriptMarker -> Class

## GetCloseToEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## GhostAttack -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Gib (gib) -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `stopped`

> sent when entity has stopped bouncing for MOVETYPE_TOSS.

> `throwgib( Entity ent, Integer velocity, Float scale )`

> Throw a gib.

## GooDebris -> Projectile -> Animate -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

## GooProjectile -> Projectile -> Animate -> Entity -> Listener -> Class

> `debriscount( Integer count )`

> Number of pieces of debris to spawn

> `debrismodel( String modelname )`

> Model name for the debris that is spawned on explosion

## GotoDeadEnemy -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## GotoPathNode -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## GravPath -> Listener -> Class

## GravPathManager -> Class

## GravPathNode (info_grav_pathnode) -> Entity -> Listener -> Class

> `activate`

> Activate the grav path.

> `deactivate`

> Deactivate the grav path.

> `gravpath_create`

> Create the grav path.

> `maxspeed( Float maxspeed )`

> Set the max speed of the grav path.

> `radius( Float radius )`

> Set the radius of the grav path.

> `speed( Float speed )`

> Set the speed of the grav path.

## HeadWatch -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Health (health_020) -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `item_pickup( Entity item )`

> Pickup the specified item.

## HealthInventoryItem -> InventoryItem -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `useinvitem`

> Use this inventory item.

## HealthPlant -> Health -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `fallvelocity( Vector fall_velocity )`

> Sets the fall velocity for this health plant.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## HorizontalPipe (func_horizontalpipe) -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

## HornOfConjuring -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

## Idle -> Behavior -> Listener -> Class

## InfoNotNull (info_notnull) -> Entity -> Listener -> Class

## InfoNull (info_null) -> Entity -> Listener -> Class

## InventoryItem -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `useinvitem`

> Use this inventory item.

## Investigate -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `amount( Integer amount )`

> Sets the amount of the item.

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `coolitem( [ String dialog ], [ String anim_to_play ] )`

> Specify that this is a cool item when we pick it up for the first time.
> If dialog is specified, than the dialog will be played during the pickup.
> If anim_to_play is specified, than the specified anim will be played after
> the initial cinematic.

> `dialogneeded( String dialog_needed )`

> Sets the dialog needed string.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

> `forcecoolitem( [ String dialog ], [ String anim_to_play ] )`

> Specify that this is a cool item when we pick it up regardless of whether or not we have it.
> If dialog is specified, than the dialog will be played during the pickup.
> If anim_to_play is specified, than the specified anim will be played after
> the initial cinematic.

> `item_droptofloor`

> Drops the item to the ground.

> `item_pickup( Entity item )`

> Pickup the specified item.

> `maxamount( Integer max_amount )`

> Sets the max amount of the item.

> `name( String item_name )`

> Sets the item name.

> `no_remove`

> Makes it so the item is not removed from the world when it is picked up.

> `pickup_done`

> Called when the item pickup is done.

> `pickup_thread( String labelName )`

> A thread that is called when an item is picked up.

> `respawn`

> Respawns the item.

> `respawn_done`

> Called when the item respawn is done.

> `respawnsound`

> Turns on the respawn sound for this item.

> `set_respawn( Integer respawn )`

> Turns respawn on or off.

> `set_respawn_time( Float respawn_time )`

> Sets the respawn time.

> `stopped`

> sent when entity has stopped bouncing for MOVETYPE_TOSS.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## Jump -> Steering -> Listener -> Class

## JumpToPathNode -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Land -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Level -> Class

## Levitate -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Light (light) -> Entity -> Listener -> Class

## LightStyleClass -> Class

## Listener -> Class

> `immediateremove`

> Removes this listener immediately.

> `remove`

> Removes this listener the next time events are processed.

## MiscModel (misc_model) -> Entity -> Listener -> Class

## MonkeyBars (func_monkeybars) -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

## Mover (mover) -> Trigger -> Animate -> Entity -> Listener -> Class

> `movedone( Entity finishedEntity )`

> Sent to commanding thread when done with move .

## MultiExploder (func_multi_exploder) -> Trigger -> Animate -> Entity -> Listener -> Class

> `dmg( Integer damage )`

> Sets the damage the explosion does.

> `duration( Float duration )`

> Sets the duration of the explosion.

> `random( Float randomness )`

> Sets the randomness value of the explosion.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `wait( Float explodewait )`

> Sets the wait time of the explosion.

## Object (object) -> Animate -> Entity -> Listener -> Class

> `anim( String animname )`

> Sets up the object with the specified animname.

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `shootable`

> Make the object shootable but not necessarily solid to the player.

## ObstacleAvoidance -> Steering -> Listener -> Class

## Pain -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

## Path -> Class

## PathNode (info_pathnode) -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `angles( Vector angles )`

> Sets the path node's angles.

> `anim( String animname )`

> Sets the animname used for this path node.

> `findchildren`

> Adds this node to the path manager.

> `findentities`

> Finds doors.

> `origin( Vector origin )`

> Sets the path node's origin.

> `spawnflags( Integer node_flags )`

> Sets the path nodes flags.

> `target( String target )`

> Sets the target for this path node.

> `targetname( String targetname )`

> Sets the target name for this path node.

## PathSearch -> Class

> `ai_calcpath( Integer nodenum1, Integer nodenum2 )`

> Calculate path from node1 to node2.

> `ai_clearnodes`

> Clears all of the path nodes.

> `ai_disconnectpath( Integer nodenum1, Integer nodenum2 )`

> Disconnect path between node1 and node2.

> `ai_load( String filename )`

> Loads path nodes.

> `ai_recalcpaths( Integer nodenum )`

> Update the specified node.

> `ai_save( String filename )`

> Save path nodes.

> `ai_savepaths`

> Saves the path nodes under the default name.

> `ai_setflags( Integer nodenum, [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Set the flags for the specified node.

## PickupEntity -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## PlayAnim -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Player (player) -> Sentient -> Animate -> Entity -> Listener -> Class

> `activatedualweapons`

> Activates 2 weapons at once

> `activatenewweapon`

> Active the new weapon specified by useWeapon.

> `activateshield`

> Activates the player's shield

> `actor( String modelname, [ String keyname1 ], [ String value1 ], [ String keyname2 ], [ String value2 ], [ String keyname3 ], [ String value3 ], [ String keyname4 ], [ String value4 ] )`

> Spawns an actor.

> `actorinfo( Integer actor_number )`

> Prints info on the specified actor.

> `adjust_torso( Boolean boolean )`

> Turn or off the torso adjustment

> `animloop_legs`

> Called when the legs animation has finished.

> `animloop_torso`

> Called when the torso animation has finished.

> `changeoutfit( Integer outfit_stage )`

> Change the outfit to the specified stage.

> `clearleftarmtarget`

> Clears the left arm target of the player

> `clearrightarmtarget`

> Clears the right arm target of the player

> `client_endframe`

> Called at the end of each frame for each client.

> `client_move`

> The movement packet from the client is processed by this event.

> `damage_multiplier( Float damage_multiplier )`

> Sets the current damage multiplier

> `deactivateshield`

> Deactivates the player's shield

> `deactivateweapon( String side )`

> Deactivate the weapon in the specified hand.

> `dead`

> Called when the player is dead.

> `dualwield( String weaponleft, String weaponright )`

> Dual wield the specified weapons

> `endlevel`

> Called when the player gets to the end of the level.

> `enter( Entity vehicle, [ String driver_anim ] )`

> Called when someone gets into a vehicle.

> `evaluatetorsoanim`

> Evaluate the torso anim for possible changes

> `exit( Entity vehicle )`

> Called when driver gets out of the vehicle.

> `finishuseanim`

> Fires off all targets associated with a particular useanim.

> `finishuseobject`

> Fires off all targets associated with a particular useobject.

> `forcetorsostate( String torsostate )`

> Force the player's torso to a certain state

> `fov( [ Float fov ] )`

> Sets the fov.

> `gameversion`

> Prints the game version.

> `gib( Integer number, [ Integer power ], [ Float scale ], [ String gibmodel ] )`

> causes entity to spawn a number of gibs

> `give( String name, [ Integer amount ] )`

> Gives the player the specified thing (weapon, ammo, item, etc.) and optionally the amount.

> `giveweapon( String weapon_name )`

> Gives the player the specified weapon.

> `god( [ Integer god_mode ] )`

> Sets the god mode cheat or toggles it.

> `gotkill( Entity victim, Integer damage, Entity inflictor, Integer meansofdeath, Boolean gib )`

> event sent to attacker when an entity dies

> `headtarget`

> Sets the Makes the player try to use whatever is in front of her.

> `hidecoolitem`

> Player is finished showing the cool item, now hide it

> `holster`

> Holsters all wielded weapons, or unholsters previously put away weapons

> `jump( Float height )`

> Makes the player jump.

> `jumpxy( Float forwardmove, Float sidemove, Float speed )`

> Makes the sentient jump.

> `kill`

> console based command to kill yourself if stuck.

> `killclass( String classname, [ Integer except_entity_number ] )`

> Kills all of the entities in the specified class.

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `killent( Integer entity_number )`

> Kills the specified entity.

> `listinventory`

> List of the player's inventory.

> `logstats( Boolean state )`

> Turn on/off the debugging playlog

> `mouthangle( Float mouth_angle )`

> Sets the mouth angle of the sentient.

> `nextpaintime( Float seconds )`

> Set the next time the player experiences pain (Current time + seconds specified).

> `noclip`

> Toggles the noclip cheat.

> `notarget`

> Toggles the notarget cheat.

> `pain( Integer damage, Entity attacker, Integer meansofdeath )`

> used to inflict pain to an entity

> `pickup`

> Picks up a shgliek.

> `playerdone`

> Clears the waitForPlayer script command, allowing threads to run

> `poweruptimer( Integer poweruptimer, Integer poweruptype )`

> Sets the powerup timer and powerup type.

> `putawayweapon( String whichHand )`

> Put away or deactivate the current weapon, whichHand can be left, right or dual.

> `removeclass( String classname, [ Integer except_entity_number ] )`

> Removes all of the entities in the specified class.

> `removeent( Integer entity_number )`

> Removes the specified entity.

> `resethaveitem( String weapon_name )`

> Resets the game var that keeps track that we have gotten this weapon

> `resetstate`

> Reset the player's state table.

> `respawn`

> Respawns the player.

> `safeholster( Boolean putaway )`

> Holsters all wielded weapons, or unholsters previously put away weapons
> preserves state, so it will not holster or unholster unless necessary

> `show`

> show the entity, opposite of hide.

> `showcoolitem`

> Player is showing the cool item, actually display it

> `skipcinematic`

> Skip the current cinematic

> `spawn( String entityname, [ String keyname1 ], [ String value1 ], [ String keyname2 ], [ String value2 ], [ String keyname3 ], [ String value3 ], [ String keyname4 ], [ String value4 ] )`

> Spawns an entity.

> `startcoolitem`

> Player is starting to show off the cool item

> `startuseobject`

> starts up the useobject's animations.

> `state`

> Dumps the player's state to the console.

> `stepup`

> Causes player to step up

> `stopcoolitem`

> Player is starting to show off the cool item

> `stopwatchingactor( Entity actor_to_stop_watching )`

> Makes the player's camera stop watching the specified actor.

> `swipeoff`

> Turn off the sword swiping for the weapon in the specified hand

> `swipeon`

> Turn on the sword swiping for the weapon in the specified hand

> `swordattack( String hand )`

> Makes the player attack with the sword in the specified sword.

> `takepain( Boolean bool )`

> Set whether or not to take pain

> `testthread( String scriptfile, [ String label ] )`

> Starts the named thread at label if provided.

> `throw`

> Throws a shgliek.

> `turn( Float yawangle )`

> Causes player to turn the specified amount.

> `turnlegs( Float yawangle )`

> Turns the players legs instantly by the specified amount.

> `turnupdate( Float yaw, Float timeleft )`

> Causes player to turn the specified amount.

> `updatepoweruptime`

> Called once a second to decrement powerup time.

> `use( String name, [ Integer weapon_hand ] )`

> Use the specified weapon in the hand choosen (optional).

> `usedualwield`

> Use the weapons that are on the dual wield list

> `usestuff`

> Makes the player try to use whatever is in front of her.

> `waitForState( String stateToWaitFor )`

> When set, the player will clear waitforplayer when this state is hit
> in the legs or torso.

> `watchactor( Entity actor_to_watch )`

> Makes the player's camera watch the specified actor.

> `waterpower`

> Sets the eden water level of the player.

> `weaponcommand( String hand, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ], [ String arg7 ] )`

> Pass the args to the active weapon in the specified hand

> `whatis( Integer entity_number )`

> Prints info on the specified entity.

> `wuss`

> Gives player all weapons.

## PlayerDeathmatchStart (info_player_deathmatch) -> PlayerStart -> Entity -> Listener -> Class

## PlayerIntermission (info_player_intermission) -> Camera -> Entity -> Listener -> Class

## PlayerStart (info_player_start) -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `thread( String thread )`

> Set the thread to execute when this player start is used

## PortalCamera (portal_camera) -> Entity -> Listener -> Class

> `roll( Float roll )`

> Sets the portal camera's roll.

## PortalSurface (portal_surface) -> Entity -> Listener -> Class

> `locatecamera`

> Locates the camera position.

## Projectile -> Animate -> Entity -> Listener -> Class

> `addownervelocity( Boolean bool )`

> Set whether or not the owner's velocity is added to the projectile's velocity

> `addvelocity( Float velocity_x, Float velocity_y, Float velocity_z )`

> Set a velocity to be added to the projectile when it is created

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

> set the angular velocity of the projectile

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

> send a command to the beam of this projectile

> `bouncesound`

> Set the name of the sound that is played when the projectile bounces

> `bouncetouch`

> Make the projectile bounce when it hits a non-damageable solid

> `canhitowner`

> Make the projectile be able to hit its owner

> `chargelife`

> set the projectile's life to be determined by the charge time

> `chargespeed`

> set the projectile's speed to be determined by the charge time

> `clearowner`

> Make the projectile be able to hit its owner now

> `dlight( Float red, Float green, Float blue, Float intensity )`

> set the color and intensity of the dynamic light on the projectile

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `drunk`

> Make the projectile drunk

> `explode`

> Make the projectile explode

> `explosionmodel( String modelname )`

> Set the modelname of the explosion to be spawned

> `heatseek`

> Make the projectile heat seek

> `hitdamage( Float projectileHitDamage )`

> set the damage a projectile does when it hits something

> `impactmarkorientation( Float degrees )`

> Set the orientation of the impact mark

> `impactmarkradius( Float radius )`

> Set the radius of the impact mark

> `impactmarkshader( String shader )`

> Set the impact mark of the shader

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `knockback( Float projectileKnockback )`

> set the knockback of the projectile when it hits something

> `life( Float projectileLife )`

> set the life of the projectile

> `meansofdeath( String meansOfDeath )`

> set the meansOfDeath of the projectile

> `minlife( Float minProjectileLife )`

> set the minimum life of the projectile (this is for charge up weapons)

> `minspeed( Float minspeed )`

> set the minimum speed of the projectile (this is for charge up weapons)

> `prethink`

> Make the projectile think to update it's velocity

> `removewhenstopped`

> Make the projectile get removed when it stops

> `speed( Float projectileSpeed )`

> set the speed of the projectile

> `stopped`

> sent when entity has stopped bouncing for MOVETYPE_TOSS.

> `updatebeam`

> Update the attached beam

## PuffDaddy (plant_puffdaddy) -> Animate -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `idle`

> Animates the puff daddy.

## PushObject (func_pushobject) -> Entity -> Listener -> Class

> `dmg( Integer damage )`

> Set the damage.

> `doBlocked( Entity obstacle )`

> sent to entity when blocked.

> `pushsound( String sound )`

> Set the pushing sound

> `start`

> Sets up the pushobject.

## Rain (func_rain) -> Entity -> Listener -> Class

## RandomSpawn (func_randomspawn) -> Spawn -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `max_time( Float maxTime )`

> Maximum time between random spawns.

> `min_time( Float minTime )`

> Minimum time between random spawns.

## RandomSpeaker (sound_randomspeaker) -> TriggerSpeaker -> TriggerPlaySound -> Trigger -> Animate -> Entity -> Listener -> Class

> `chance( Float newChance<0.00...1.00> )`

> Sets the chance that the sound will play when triggered.

> `maxdelay( Float max_delay )`

> Sets the maximum time between playings.

> `mindelay( Float min_delay )`

> Sets the minimum time between playings.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## ReSpawn (func_respawn) -> Spawn -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## Rope (func_rope) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

## RopeBase (func_rope_base) -> RopePiece -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `piecelength( Float length )`

> The distance between each piece of the rope.

> `ropebase_setup`

> Set up the rope base

> `ropedampener( Float value )`

> Horizontal velocity dampener for the rope.

> `ropeshader( String shader )`

> Set the shader to use on the rope.

> `stiffness( Float stiffness<-1.00...1.00> )`

> Movement restricter on the amount that the rope can flex and bend.
> Valid values are from -1 (no restriction) to 1 (tried to be perfectly straight.
> The position of the first rope piece determines what direction the rope is pushed from the base of the rope.

> `strength( Float strength )`

> How strongly a stiff rope goes to position.

## RopePiece (func_rope_piece) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `attachmodel( String modelname )`

> Attach the specified model the this piece of rope

> `damage( Float damage )`

> amount of damage to cause if rope hits something.

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `ropepiece_setup`

> Set up the rope

> `target2( String targetname )`

> Set the target of the rope piece to attach itself to.

> `wigglemove( Float moveamount )`

> the amount of force the random wiggling has.

> `wiggletime( Float time )`

> number of seconds between each time the rope wiggles.

## RotatingDoor (func_rotatingdoor) -> Door -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `doclose`

> Closes the door (special doors).

> `doopen( Entity other )`

> Opens the door (special doors).

> `openangle( Float open_angle )`

> Sets the open angle of the door.

## RunThrough (func_runthrough) -> Entity -> Listener -> Class

> `chance( Float chance )`

> chance that trigger will spawn something.

> `delay( Float delay )`

> time between RunThrough being activated.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `lip( Float lip )`

> distance below trigger we should spawn things.

> `offset( Vector spawn_offset )`

> When triggered, what to offset the spawned object by.

> `spawnmodel( String model_to_spawn )`

> When triggered, what to spawn.

> `speed( Float speed )`

> threshold speed at which RunThrough is activated.

## Script -> Class

## ScriptDoor (script_door) -> Door -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `closethread( String closethread )`

> Set the thread to run when the door is closed (required).

> `doclose`

> Closes the door (special doors).

> `doinit`

> Sets up the script door.

> `doopen( Entity other )`

> Opens the door (special doors).

> `initthread( String initthread )`

> Set the thread to run when the door is initialized (optional).

> `openthread( String openthread )`

> Set the thread to run when the door is opened (required).

## ScriptLibrarian -> Class

## ScriptMaster -> Listener -> Class

## ScriptModel (script_model) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `anim( String anim_name )`

> Sets the script model's animation

> `animonce( String anim_name )`

> Sets the script model's animation but only plays it once

> `gib( Integer number, [ Integer power ], [ Float scale ], [ String gibmodel ] )`

> causes entity to spawn a number of gibs

> `model( Entity modelName )`

> set the model to modelName.

## ScriptOrigin (script_origin) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `model( Entity modelName )`

> set the model to modelName.

## ScriptSkyOrigin (script_skyorigin) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## ScriptSlave (script_object) -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `angles( Vector angles )`

> Sets the angles.

> `bind( Entity parent )`

> bind this entity to the specified entity.

> `closeportal`

> Close the area portal enclosed in this object

> `dmg( Integer damage )`

> Set the damage.

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `doBlocked( Entity obstacle )`

> sent to entity when blocked.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

> `endpath`

> Stop following the path

> `explode( Float damage )`

> Creates an explosion at the script slave's position

> `followpath( Entity path, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ], [ String arg6 ] )`

> Makes the script slave follow the specified path. The allowable arguments are ignoreangles,
> normalangles, loop, and a number specifying the start time.

> `jumpto( String vector_or_entity )`

> Jump to specified vector or entity.

> `model( Entity modelName )`

> set the model to modelName.

> `moveBackward( Float dist )`

> Move the position backward.

> `moveDown( Float dist )`

> Move the position down.

> `moveEast( Float dist )`

> Move the position east.

> `moveForward( Float dist )`

> Move the position forward.

> `moveLeft( Float dist )`

> Move the position left.

> `moveNorth( Float dist )`

> Move the position north.

> `moveRight( Float dist )`

> Move the position right.

> `moveSouth( Float dist )`

> Move the position south.

> `moveto( String vector_or_entity )`

> Move to the specified vector or entity.

> `moveUp( Float dist )`

> Move the position up.

> `moveWest( Float dist )`

> Move the position west.

> `newOrders`

> Inform script that it is about to get new orders.

> `next`

> Goto the next waypoint.

> `noblock`

> Removes the onblock thread.

> `nodamage`

> Removes the ondamage thread.

> `notouch`

> Removes the ontouch thread.

> `notrigger`

> Removes the ontrigger thread.

> `notshootable`

> Makes the script slave not shootable

> `nouse`

> Removes the onuse thread.

> `onblock( String label )`

> Sets what label to jump to and process script at when blocked.

> `ondamage( String label )`

> Sets what label to jump to and process script at when damaged.

> `ontouch( String label )`

> Sets what label to jump to and process script at when touched.

> `ontrigger( String label )`

> Sets what label to jump to and process script at when triggered.

> `onuse( String label )`

> Sets what label to jump to and process script at when used.

> `openportal`

> Open the area portal enclosed in this object

> `physics_off`

> Turn physics off this script object on

> `physics_on`

> Turn physics on this script object on

> `physics_velocity( Vector impulseVector )`

> Add a physical impulse to an object when it is being physically simulated

> `processCommands`

> Move the script slave.

> `rotateaxis( Integer axis, Float avelocity )`

> Rotate about the specified axis at the specified angular velocity.

> `rotateaxisdown( Integer axis, Float angle )`

> Rotate the specified axis down by the specified amount.

> `rotateaxisdownto( Integer axis, Float angle )`

> Rotate the specified axis down to angle.

> `rotateaxisup( Integer axis, Float angle )`

> Rotate the specified axis up by the specified amount.

> `rotateaxisupto( Integer axis, Float angle )`

> Rotate the specified axis up to angle.

> `rotatedownto( Vector direction )`

> Rotate down to the specified direction.

> `rotateto( Vector direction )`

> Rotate to the specified direction.

> `rotateupto( Vector direction )`

> Rotate up to the specified direction.

> `rotateX( Float avelocity )`

> Rotate about the x axis at the specified angular velocity.

> `rotateXdown( Float angle )`

> Rotate the x down by the specified amount.

> `rotateXdownto( Float angle )`

> Rotate the x down to angle.

> `rotateXup( Float angle )`

> Rotate the x up by the specified amount.

> `rotateXupto( Float angle )`

> Rotate the x up to angle.

> `rotateY( Float avelocity )`

> Rotate about the y axis at the specified angular velocity.

> `rotateYdown( Float angle )`

> Rotate the y down by the specified amount.

> `rotateYdownto( Float angle )`

> Rotate the y down to angle.

> `rotateYup( Float angle )`

> Rotate the y up by the specified amount.

> `rotateYupto( Float angle )`

> Rotate the y up to angle.

> `rotateZ( Float avelocity )`

> Rotate about the z axis at the specified angular velocity.

> `rotateZdown( Float angle )`

> Rotate the z down by the specified amount.

> `rotateZdownto( Float angle )`

> Rotate the z down to angle.

> `rotateZup( Float angle )`

> Rotate the z up by the specified amount.

> `rotateZupto( Float angle )`

> Rotate the z up to angle.

> `scriptslave_followingpath`

> Called every frame to actually follow the path

> `scriptslave_movedone`

> Called when the script slave is doen moving

> `setdamage( Integer damage )`

> Set the damage.

> `setmeansofdeath( String means_of_death )`

> Set the damage means of death.

> `speed( Float speed )`

> Sets the speed.

> `time( Float travel_time )`

> Sets the travel time.

> `trigger( Entity ent )`

> Trigger entities target.

> `unbind`

> unbind this entity.

## ScriptThread -> Listener -> Class

> `ai_calcpath( Integer nodenum1, Integer nodenum2 )`

> Calculate path from node1 to node2.

> `ai_disconnectpath( Integer nodenum1, Integer nodenum2 )`

> Disconnect path between node1 and node2.

> `ai_recalcpaths( Integer nodenum )`

> Update the specified node.

> `alias( String alias_name, String real_name, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ] )`

> Sets up an alias.

> `aliascache( String alias_name, String real_name, [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ] )`

> Sets up an alias and caches the resourse.

> `all_ai_off`

> Turns all AI off.

> `all_ai_on`

> Turns all AI back on.

> `assert( Float value )`

> Assert if value is 0.

> `break`

> Asserts so that we can break back into the debugger from script.

> `cache( String resource_name )`

> Cache the specified resource.

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

> Processes a camera command.

> `centerprint( String stuffToPrint )`

> prints the included message in the middle of all player's screens

> `cinematic`

> Turns on cinematic.

> `clear( String var_group )`

> Clears the specified var group.

> `clearfade`

> Clear the fade from the screen

> `clearletterbox( Float time )`

> Clears letterbox mode.

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

> Client only command.

> `control( Entity object )`

> Not used.

> `cuecamera( Entity entity, [ Float switchTime ] )`

> Cue the camera. If switchTime is specified, then the camera
> will switch over that length of time.

> `cueplayer( [ Float switchTime ] )`

> Go back to the normal camera. If switchTime is specified,
> then the camera will switch over that length of time.

> `death_callback`

> Death callback.

> `end`

> End the thread.

> `execute`

> Execute the thread.

> `fadein( Float time, Float red, Float green, Float blue, Float alpha, [ Integer mode ] )`

> Sets up fadein in values.

> `fadeout( Float time, Float red, Float green, Float blue, Float alpha, [ Integer mode ] )`

> Sets up fadeout values.

> `fadesound( Float time )`

> fades the sound out over the given time.

> `fakeplayer`

> Will create a fake version of the player, hide the real one and
> call the fake one 'fakeplayer'.

> `forcemusic( String current, [ String fallback ] )`

> Forces the current and fallback (optional) music moods.

> `freezeplayer`

> Freeze the player.

> `goto( String label )`

> Goes to the specified label.

> `killclass( String class_name, [ Integer except ] )`

> Kills everything in the specified class except for the specified entity (optional).

> `killent( Integer ent_num )`

> Kill the specified entity.

> `killthread( String threadName )`

> kills all threads starting with the specified name

> `letterbox( Float time )`

> Puts the game in letterbox mode.

> `locprint( Integer xoffset, Integer yoffset, String stuffToPrint )`

> prints the included message in the specified location of all player's screens

> `map( String map_name )`

> Starts the specified map.

> `missionfailed`

> Makes the player fail their mission, level restarts.

> `movedone( Entity finishedEntity )`

> Sent to commanding thread when done with move .

> `music( String current, [ String fallback ] )`

> Sets the current and fallback (optional) music moods.

> `musicvolume( Float volume, Float fade_time )`

> Sets the volume and fade time of the music.

> `newline`

> Prints a newline.

> `noncinematic`

> Turns off cinematic.

> `pause`

> Pauses the thread.

> `print( String string )`

> Prints a string.

> `printfloat( Float float )`

> Prints a float.

> `printint( Integer integer )`

> Print integer.

> `printvector( Vector vector )`

> Prints a vector.

> `releaseplayer`

> Release the player.

> `removeclass( String class_name, [ Integer except ] )`

> Removes everything in the specified class except for the specified entity (optional).

> `removeent( Integer ent_num )`

> Removes the specified entity.

> `removefakeplayer`

> Will delete the fake version of the player, un-hide the real one and
> return to the normal game

> `restoremusicvolume( Float fade_time )`

> Restores the music volume to its previous value.

> `restoresoundtrack`

> Restores the soundtrack to the previous one.

> `script_callback( Entity slave, String name, Entity other )`

> Script callback.

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

> Server only command.

> `setcvar( String cvar_name, String value )`

> Sets the value of the specified cvar.

> `setdialogscript( String dialog_script )`

> Set the script to be used when dialog:: is used

> `setlightstyle( Integer lightstyleindex, String lightstyledata )`

> Set up the lightstyle with lightstyleindex to the specified data

> `skipthread( String thread_name )`

> Set the thread to skip.

> `soundtrack( String soundtrack_name )`

> Changes the soundtrack.

> `spawn( String entityname, [ String keyname1 ], [ String value1 ], [ String keyname2 ], [ String value2 ], [ String keyname3 ], [ String value3 ], [ String keyname4 ], [ String value4 ] )`

> Spawn the specified entity.

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

> Server only command.

> `terminate( Integer thread_number )`

> Terminates the specified thread or the current one if none specified.

> `thread( String label )`

> Creates a thread starting at label.

> `thread_callback`

> Thread callback.

> `threadname( String threadName )`

> sets the name of the thread

> `trigger( String name )`

> Trigger the specified target or entity.

> `variable_callback`

> Variable callback.

> `wait( Float wait_time )`

> Wait for the specified amount of time.

> `waitFor( Entity ent )`

> Wait for the specified entity.

> `waitForDeath( String name )`

> Wait for death.

> `waitForDialog( Entity actor, [ Float additional_delay ] )`

> Wait for end of the dialog for the specified actor.
> If additional_delay is specified, than the actor will
> wait the dialog length plus the delay.

> `waitForPlayer`

> Wait for player to be ready.

> `waitForSound( String sound_name, Float delay )`

> Wait for end of the named sound plus an optional delay.

> `waitForThread( Integer thread_number )`

> Wait for the specified thread.

> `waitForVariable( String variable_name )`

> Wait for the specified variable.

## ScriptVariable -> Listener -> Class

> `*=( Float num )`

> Multiplies the current float by the specified number.

> `+=( Float num )`

> Adds the specified number to the current float.

> `-=( Float num )`

> Subtract the specified number to the current float.

> `/=( Float num )`

> Divides the current float by the specified number.

> `=( Float num )`

> Sets the float to the specified number.

> `angles_toforward( Vector angles )`

> Sets the variable (vector) to the forward vector of the specified angles.

> `angles_toleft( Vector angles )`

> Sets the variable (vector) to the left vector of the specified angles.

> `angles_toup( Vector angles )`

> Sets the variable (vector) to the up vector of the specified angles.

> `append( String string_to_append )`

> Appends the specified string to the current string.

> `appendfloat( Float float_to_append )`

> Appends the specified float to the current string.

> `appendint( Integer integer_to_append )`

> Appends the specified integer to the current string.

> `div( Integer num )`

> Divides the current float by the specified number (integer).

> `getcvar( String cvar_name )`

> Sets the variable to the value of the cvar.

> `ifequal( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable equals the specified number.

> `ifgreater( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is greater than the specified number.

> `ifgreaterequal( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is
> greater than or equal to the specified number.

> `ifless( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is less than the specified number.

> `iflessequal( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is less than or equal to the specified number.

> `ifnotequal( Float num, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable doesn't equal the specified number.

> `ifstrequal( String test_string, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable equals the specified string.

> `ifstrnotequal( String test_string, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable doesn't equal the specified string.

> `ifthreadactive( [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the thread
> specified by the current integer value is active.

> `ifthreadnotactive( [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the thread specified
> by the current integer value is not active.

> `mod( Integer num )`

> Gets the mod of the current int by the specified number.

> `randomfloat( Float max_float )`

> Sets the float to a random number.

> `randomint( Integer max_int )`

> Sets the integer to a random number.

> `string( String new_string )`

> Sets the value of the string to the specified one.

> `targetof( Entity ent )`

> Sets string to the specified entities target.

> `vector( Vector new_vector )`

> Sets the variable to the specified vector. New vector can also be a targetname,
> the origin of that entity will be used as the vector.

> `vector_add( Vector new_vector )`

> Adds the specified vector to the variable.

> `vector_cross( Vector vector1, Vector vector2 )`

> Sets the variable to the cross product of the specified vectors.

> `vector_dot( Vector vector1, Vector vector2 )`

> Sets the variable to the dot product of the specified vectors.

> `vector_ifequal( Vector test_vector, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is equal to the specified vector.

> `vector_ifnotequal( Vector test_vector, [ String command ], [ String arg1 ], [ String arg2 ], [ String arg3 ], [ String arg4 ], [ String arg5 ] )`

> Processes the specified command if the variable is not equal to the specified vector.

> `vector_length( Vector new_vector )`

> Sets the variable (float) to the length of the specified vector.

> `vector_normalize`

> Normalize the variable (vector).

> `vector_scale( Float scale )`

> Scales the variable (vector) by the scale value.

> `vector_setx( Float x_coord )`

> Sets the x value of the variable (vector).

> `vector_sety( Float y_coord )`

> Sets the y value of the variable (vector).

> `vector_setz( Float z_coord )`

> Sets the z value of the variable (vector).

> `vector_subtract( Vector new_vector )`

> Subtracts the specified vector from the variable.

> `vector_x( Vector new_vector )`

> Sets the variable (float) to the x value of the specified vector.

> `vector_y( Vector new_vector )`

> Sets the variable (float) to the y value of the specified vector.

> `vector_z( Vector new_vector )`

> Sets the variable (float) to the z value of the specified vector.

## ScriptVariableList -> Class

## Seek -> Steering -> Listener -> Class

## Sentient -> Animate -> Entity -> Listener -> Class

> `ammo( String type, Integer amount )`

> Gives the sentient some ammo.

> `armor( String type, Integer amount )`

> Gives the sentient some armor.

> `blockend`

> Is the end of the sentient's block.

> `blockstart`

> Is the start of the sentient's block.

> `bloodmodel( String bloodModel )`

> set the model to be used when showing blood

> `charge( String hand )`

> Starts the charging of the weapon in the specified hand

> `checkanims`

> Check the animations in the .tik file versus the statefile

> `fire( String hand )`

> Fires the weapon in the specified hand.

> `give( String name )`

> Gives the sentient the targeted item.

> `health( Float health )`

> Gives the sentient the specified amount health.

> `immune( String immune_string1, [ String immune_string2 ], [ String immune_string3 ], [ String immune_string4 ], [ String immune_string5 ], [ String immune_string6 ] )`

> Adds to the immunity list for this sentient.

> `item( String type, Integer amount )`

> Gives the sentient the specified amount of the specified item.

> `jumpxy( Float forwardmove, Float sidemove, Float speed )`

> Makes the sentient jump.

> `maxgibs( Integer max_number_of_gibs )`

> Sets the maximum amount of generic gibs this sentient will spawn when hit.

> `maxmouthangle( Float max_mouth_angle )`

> Sets the max mouth angle.

> `meleeattackend`

> Is the end of the sentient's melee attack.

> `meleeattackstart`

> Is the start of the sentient's melee attack.

> `noshadow`

> Turns off the shadow for this sentient.

> `onfire`

> Called every frame when the sentient is on fire.

> `releasefire( Float fireholdtime )`

> Releases the attack in the time specified.

> `removeimmune( String immune_string1, [ String immune_string2 ], [ String immune_string3 ], [ String immune_string4 ], [ String immune_string5 ], [ String immune_string6 ] )`

> Removes from the immunity list for this sentient.

> `shadow`

> Turns on the shadow for this sentient.

> `spawnbloodygibs( [ Integer number_of_gibs ], [ Float scale ] )`

> Spawns some bloody generic gibs.

> `stopfire( String hand )`

> Stops the firing of the weapon in the specified hand.

> `stoponfire`

> Stops the sentient from being on fire.

> `stunend`

> Is the end of the sentient's stun.

> `stunstart`

> Is the start of the sentient's stun.

> `take( String item_name )`

> Takes away the specified item from the sentient.

> `updateoffsetcolor`

> Updates the offset color.

> `weapon( String weapon_modelname )`

> Gives the sentient the weapon specified.

## Shield -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `damage_reduction( Float percent )`

> Set the percentage to reduce the amount of damage a sentient takes.

## Shock -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## ShockWater -> Behavior -> Listener -> Class

## SinkObject (func_sinkobject) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `active`

> make the SinkObject active, so that it will respond to players touching it.

> `dampening( Float newDampening )`

> dampening of SinkObject.

> `delay( Float delay )`

> Delay until SinkObject starts falling.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `limit( Float newLimit )`

> maximum displacement of the SinkObject.

> `notactive`

> make the SinkObject not active, so that it won't respond to players touching it.

> `reset`

> Reset the SinkObject right now.

> `resetdelay( Float newResetDelay )`

> Delay between when sinkobject starts resetting.

> `resetsound( String newResetSound )`

> Sound played when sinkobject is resetting.

> `resetspeed( Float newResetspeed )`

> Speed at which SinkObject resets itself, defaults to 0.002 * speed.

> `sinksound( String newSinkSound )`

> Sound played when sinkobject is sinking.

> `speed( Float speed )`

> Speed at which SinkObject starts falling.

## SlidingDoor (func_door) -> Door -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `doclose`

> Closes the door (special doors).

> `doopen( Entity other )`

> Opens the door (special doors).

> `lip( Float lip )`

> Sets the lip of the sliding door.

> `speed( Float speed )`

> Sets the speed of the sliding door.

## Soulsucker -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `waterfactor( Float factor )`

> Factor by which to scale the amount of water the player gets from shooting the gun

## SoundManager -> Listener -> Class

> `addmusictrigger`

> Add a new music trigger where the player is standing.

> `addrandomspeaker`

> Add a new sound where the player is standing.

> `addreverbtrigger`

> Add a new reverb trigger where the player is standing.

> `addspeaker`

> Add a new sound where the player is standing.

> `delete`

> Delete the current sound.

> `globaltranslate( Vector translate_amount )`

> Translates all sounds and triggers by specified amount.

> `hide`

> Hides the sounds.

> `moveplayer`

> Move the player to the current sound position.

> `next`

> Go to the next sound.

> `prev`

> Go to the previous sound.

> `previewreverb`

> Test out the current reverb settings.

> `replace`

> Replace the current sound position with the player's.

> `reset`

> Resets the state of all sounds and triggers.

> `resetreverb`

> reset the reverb settings to a normal.

> `save`

> Saves the sounds.

> `show( [ Entity path ] )`

> Show all the sounds.

> `switchfacet`

> Switch the current facet that we are editing.

> `updateinput`

> Updates the current sound with user interface values.

## Spawn (func_spawn) -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `attackmode( Integer attackmode )`

> Sets the attackmode for this spawn entity.

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `modelname( String model_name )`

> Sets the model name for this spawn entity.

> `pickup_thread( String threadName )`

> Sets the pickup thread for the spawned entity.

> `spawnchance( Float spawn_chance )`

> Sets the chance that this spawned entity will spawn something when killed, if it is an actor.

> `spawnitem( String spawn_item_name )`

> Adds this named item to what will be spawned when this spawned entity is killed, if it is an actor.

> `spawntarget( String spawntarget )`

> Sets spawn target for this spawn entity.

> `spawntargetname( String spawntargetname )`

> Sets spawn target name for this spawn entity.

## SpawnArgs -> Class

## SpawnChain (func_spawnchain) -> Spawn -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## SpawnOutOfSight (func_spawnoutofsight) -> Spawn -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## Spin -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## SpinningPlant -> Actor -> Sentient -> Animate -> Entity -> Listener -> Class

> `get_clip`

> Gets the clip brush for the spinning plant actor,it is not meant to be called from script.

## SplinePath (info_splinepath) -> Entity -> Listener -> Class

> `fadetime( Float fadeTime )`

> Sets the fadetime at this node.

> `fov( Float cameraFOV )`

> Sets the fov at this node.

> `loop( String loop_name )`

> Sets the loop name.

> `speed( Float speed )`

> Sets the path speed.

> `SplinePath_create`

> Creates the spline path from the target list.

> `thread( String thread )`

> Sets the thread.

> `triggertarget( String target )`

> Sets the trigger target.

> `watch( String watchEntity )`

> Sets the entity to watch at this node.

## Steering -> Listener -> Class

## SupplyWater (func_supplywater) -> Trigger -> Animate -> Entity -> Listener -> Class

> `maxwater( Float wait )`

> How long to wait before rock starts falling.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## Sword -> Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `basic_damage( Float amount )`

> Set the amount of basic damage the sword does without water

> `basic_knockback( Float amount )`

> Set the amount of basic knockback the sword does without water

> `hitspawn( String model )`

> Set a model to spawn when the sword hits an enemy

> `water_damage( Float amount )`

> Set the amount of damage the sword does when using water

> `water_knockback( Float amount )`

> Set the amount of knockback the sword does when using water

> `water_required( Integer amount )`

> Set the amount of water this sword requires to operate at full strength

## Talk -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

## TargetList -> Class

## Teleport -> Behavior -> Listener -> Class

## Teleporter (trigger_teleport) -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TeleporterDestination (func_teleportdest) -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

## TeleportToPosition -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## TestPlayerStart (testplayerstart) -> PlayerStart -> Entity -> Listener -> Class

## ThreadMarker -> Class

## ThrowEntity -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## ThrowObject (func_throwobject) -> Object -> Animate -> Entity -> Listener -> Class

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `pickup( Entity entity, String tag_name )`

> Picks up this throw object and attaches it to the entity.

> `pickupoffset( Vector pickup_offset )`

> Sets the pickup_offset.

> `throw( Entity owner, Float speed, Entity targetent, [ Float grav ] )`

> Throw this throw object.

> `throwsound( String throw_sound )`

> Sets the sound to play when object is thrown.

## TorsoTurn -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## TossObject (TossObject) -> Animate -> Entity -> Listener -> Class

> `bouncesound( String sound )`

> When bouncing, what sound to play on impact

> `bouncesoundchance( Float chance<0.00...1.00> )`

> When bouncing, the chance that the bounce sound will be played

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `stopped`

> sent when entity has stopped bouncing for MOVETYPE_TOSS.

## TouchAnim (func_touchanim) -> UseAnim -> Entity -> Listener -> Class

## TouchField -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## Trigger (trigger_multiple) -> Animate -> Entity -> Listener -> Class

> `activatetrigger( Entity triggering_entity )`

> Activates all of the targets for this trigger.

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `cnt( Integer count )`

> Set the amount of times this trigger can be triggered

> `cone( Float newTriggerCone )`

> Sets the cone in which directed triggers will trigger.

> `delay( Float delay_time )`

> Set the delay time (time between triggering and firing) for this trigger

> `doActivate( Entity activatingEntity )`

> General trigger event for all entities

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `edgetriggered( Boolean newEdgeTriggered )`

> If true, trigger will only trigger when object enters trigger, not when it is inside it.

> `health( Integer newHealth )`

> set the health of the entity to newHealth

> `key( String key )`

> Set the object needed by the sentient to activate this trigger

> `killed( Entity attacker, Integer damage, Entity inflictor, Integer meansofdeath )`

> event which is sent to an entity once it as been killed

> `message( String message )`

> Set a message to be displayed when this trigger is activated

> `model( Entity modelName )`

> set the model to modelName.

> `multifaceted( Integer facetDirection )`

> Make this trigger multifaceted. If facet is 1, than trigger is North/South oriented.
> If facet is 2 than trigger is East/West oriented. If facet is 3 than trigger is Up/Down oriented.

> `noise( String sound )`

> Set the sound to play when this trigger is activated

> `nottriggerable`

> Turn this trigger off

> `sound( String sound )`

> Set the sound to play when this trigger is activated

> `thread( String thread )`

> Set the thread to execute when this trigger is activated

> `triggerable`

> Turn this trigger back on

> `triggerthread`

> Start the trigger thread.

> `wait( Float wait_time )`

> Set the wait time (time bewteen triggerings) for this trigger

## TriggerBox (trigger_box) -> Trigger -> Animate -> Entity -> Listener -> Class

> `maxs( Vector maxs )`

> Sets the maximum bounds of the trigger box.

> `mins( Vector mins )`

> Sets the minimum bounds of the trigger box.

## TriggerByPushObject (trigger_pushobject) -> TriggerOnce -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggername( String targetname_of_object )`

> If set, trigger will only respond to objects with specified name.

## TriggerCameraUse (trigger_camerause) -> TriggerUse -> Trigger -> Animate -> Entity -> Listener -> Class

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

## TriggerChangeLevel (trigger_changelevel) -> Trigger -> Animate -> Entity -> Listener -> Class

> `map( String map_name )`

> Sets the map to change to when triggered.

> `spawnspot( String spawn_spot )`

> Sets the spawn spot to use.

> `thread( String thread )`

> Set the thread to execute when this trigger is activated

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerDamageTargets (trigger_damagetargets) -> Trigger -> Animate -> Entity -> Listener -> Class

> `activatetrigger( Entity triggering_entity )`

> Activates all of the targets for this trigger.

> `damage( Integer damage )`

> Sets the amount of damage to do.

## TriggerExit (trigger_exit) -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerGivePowerup (trigger_givepowerup) -> Trigger -> Animate -> Entity -> Listener -> Class

> `oneshot`

> Make this a one time trigger.

> `powerupname( String powerup_name )`

> Specifies the powerup to give to the sentient.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerHurt (trigger_hurt) -> TriggerUse -> Trigger -> Animate -> Entity -> Listener -> Class

> `damage( Integer damage )`

> Sets the amount of damage to do.

> `damagetype( String damageType )`

> Sets the type of damage a TriggerHurt delivers.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerMusic (trigger_music) -> Trigger -> Animate -> Entity -> Listener -> Class

> `altcurrent( String alternate_current_mood )`

> Sets the alternate current mood to use when triggered.

> `altfallback( String alterante_fallback_mood )`

> Sets the alternate fallback mood to use when triggered.

> `current( String current_mood )`

> Sets the current mood to use when triggered.

> `fallback( String fallback_mood )`

> Sets the fallback mood to use when triggered.

> `oneshot`

> Make this a one time trigger.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `triggereffectalt( Entity triggering_entity )`

> Send event to owner of trigger. This event is only triggered when using a trigger
> as a multi-faceted edge trigger.

## TriggerOnce (trigger_once) -> Trigger -> Animate -> Entity -> Listener -> Class

## TriggerPlaySound (play_sound_triggered) -> Trigger -> Animate -> Entity -> Listener -> Class

> `channel( Integer channel )`

> Sets the sound channel to play on.

> `min_dist( Float min_dist )`

> Sets the minimum distance.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `volume( Float volume )`

> Sets the volume.

## TriggerPush (trigger_push) -> Trigger -> Animate -> Entity -> Listener -> Class

> `angle( Float newAngle )`

> set the angles of the entity using just one value.
> Sets the yaw of the entity or an up and down
> direction if newAngle is [0-359] or -1 or -2

> `speed( Float speed )`

> Set the push speed of the TriggerPush

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerPushAny (trigger_pushany) -> Trigger -> Animate -> Entity -> Listener -> Class

> `speed( Float speed )`

> Set the speed.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerRelay (trigger_relay) -> Trigger -> Animate -> Entity -> Listener -> Class

## TriggerReverb (trigger_music) -> Trigger -> Animate -> Entity -> Listener -> Class

> `altreverblevel( Float reverbLevel )`

> Sets the reverb level to be used when triggered.

> `altreverbtype( Integer reverbType )`

> Sets the reverb type.

> `oneshot`

> Make this a one time trigger.

> `reverblevel( Float reverbLevel )`

> Sets the reverb level to be used when triggered.

> `reverbtype( Integer reverbType )`

> Sets the reverb type.

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `triggereffectalt( Entity triggering_entity )`

> Send event to owner of trigger. This event is only triggered when using a trigger
> as a multi-faceted edge trigger.

## TriggerSecret (trigger_secret) -> TriggerOnce -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

## TriggerSetVariable (trigger_setvariable) -> Trigger -> Animate -> Entity -> Listener -> Class

> `triggereffect( Entity triggering_entity )`

> Send event to owner of trigger.

> `value( String variableValue )`

> Set the value of the variable to set.
> values can also use one of the following reserved words:
> increment - increment the variable
> decrement - decrement the variable
> toggle - toggle the value of the variable

> `variable( String variableName )`

> Set the name of the variable to set

## TriggerSpeaker (sound_speaker) -> TriggerPlaySound -> Trigger -> Animate -> Entity -> Listener -> Class

## TriggerUse (trigger_use) -> Trigger -> Animate -> Entity -> Listener -> Class

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

## TriggerUseOnce (trigger_useonce) -> TriggerUse -> Trigger -> Animate -> Entity -> Listener -> Class

## Turn -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## TurnInvestigate -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## TurnTo -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

## TurnToEnemy -> Behavior -> Listener -> Class

> `animdone`

> Tells the behavior that the current animation is done, it is not meant to be called from script.

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## UseAnim (func_useanim) -> Entity -> Listener -> Class

> `anim( String animName )`

> set the animation to use for player.

> `camera( String cameraPosition )`

> set the camera to use when in this animation.
> topdown, behind, front, side, behind_fixed, side_left, side_right

> `count( Integer newCount )`

> Sets how many times the UseAnim can be triggered.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `key( String keyName )`

> set the key needed to make this UseAnim function.

> `num_loops( Integer loopCount )`

> set the number of times to loop an animation per use.

> `state( String stateName )`

> set the state to use for the player.

> `thread( String label )`

> Sets which thread to use when this UseAnim is triggered.

> `triggertarget( String targetname )`

> Sets what should be triggered, when this UseAnim is triggered.

## UseAnimDestination (func_useanimdest) -> Entity -> Listener -> Class

> `anim( String animName )`

> set the animation to use for player.

> `num_loops( Integer loopCount )`

> set the number of times to loop an animation per use.

> `state( String stateName )`

> set the state to use for the player.

## UseObject (func_useobject) -> Animate -> Entity -> Listener -> Class

> `activate`

> Allow the useobject to be used.

> `cone( Float newCone )`

> Sets the cone in angles of where the Useobject can be used.

> `count( Integer newCount )`

> Sets how many times the UseObject can be triggered.

> `damage_type( String newDamageType )`

> Sets what kind of damage is needed to activate the trigger.

> `deactivate`

> Do not allow the useobject to be used.

> `move_thread( String label )`

> Sets which move thread to use when this UseObject has finshed looping.

> `offset( Vector newOffset )`

> Sets the offset to use for this UseObject.

> `reset_thread( String label )`

> Sets which thread to call when resetting.

> `reset_time( Float newResetTime )`

> Sets the time it takes for the UseObject to reset itself.

> `state( String newState )`

> Sets the state to use for this UseObject.

> `state_backwards( String newState )`

> Sets the backward state to use for this UseObject.

> `stop_thread( String label )`

> Sets which stop thread to use when this UseObject is finished.

> `triggertarget( String targetname )`

> Sets what should be triggered, when this UseObject is triggered.

> `usematerial( String nameOfUseMaterial )`

> the name of the material that glows when active.

> `yaw_offset( Float newYawOffset )`

> Sets the yaw offset to use for this UseObject.

## Vehicle (script_vehicle) -> VehicleBase -> ScriptModel -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

> `canjump( Boolean jumpable )`

> Sets whether or not the vehicle can jump

> `doBlocked( Entity obstacle )`

> sent to entity when blocked.

> `doTouch( Entity touchingEntity )`

> sent to entity when touched.

> `doUse( Entity activatingEntity )`

> sent to entity when it is used by another entity

> `drivable`

> Make the vehicle drivable

> `driveranim( String animation )`

> Set the animation of the driver to use when the driver is in the vehicle

> `lock`

> Sets the vehicle to be locked

> `seatanglesoffset( Vector angles )`

> Set the angles offset of the seat

> `seatoffset( Vector offset )`

> Set the offset of the seat

> `setweapon( String weaponname )`

> Set the weapon for the vehicle

> `showweapon`

> Set the weapon to be show in the view

> `start`

> Initialize the vehicle.

> `steerinplace`

> Set the vehicle to turn in place

> `turnrate( Float rate )`

> Set the turning rate of the vehicle

> `undrivable`

> Make the vehicle undrivable

> `unlock`

> Sets the vehicle to be unlocked

> `vehiclespeed( Float speed )`

> Set the speed of the vehicle

## VehicleBase -> ScriptModel -> ScriptSlave -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## ViewMaster -> Animate -> Entity -> Listener -> Class

> `viewangles( Float pitch<0.00...360.00>, Float yaw<0.00...360.00>, Float roll<0.00...360.00> )`

> Set the angles of the current viewthing

> `viewanimate`

> Cycle through the animations modes of the current viewthing
> No Animation
> Animation with no motion
> Animation with looping motion
> Animation with motion

> `viewattach( String tagname, String model )`

> Attach a model the the specified tagname

> `viewdelete`

> Delete the current viewthing

> `viewdeleteall`

> Delete all viewthings

> `viewdetach`

> Detach the current viewthing from its parent

> `viewdetachall`

> Detach all the models attached to the current viewthing

> `viewmodel( String viewthingModel )`

> Set the model of the current viewthing

> `viewnext`

> Advance to the next frame of animation of the current viewthing

> `viewnextanim`

> Advance to the next animation of the current viewthing

> `vieworigin( Float x, Float y, Float z )`

> Set the origin of the current viewthing

> `viewpitch( Float pitch )`

> Set the pitch of the current viewthing

> `viewprev`

> Advance to the previous frame of animation of the current viewthing

> `viewprevanim`

> Advance to the previous animation of the current viewthing

> `viewroll( Float roll )`

> Set the roll of the current viewthing

> `viewscale( Float scale )`

> Set the scale of the current viewthing

> `viewscaledown`

> Decrease the scale of the current viewthing

> `viewscaleup`

> Increase the scale of the current viewthing

> `viewsetanim( Float animNum )`

> Set the animation absolutely based off a floating point value

> `viewspawn( String model )`

> Create a viewthing with the specified model

> `viewthingnext`

> Change the active viewthing to the next viewthing

> `viewthingprev`

> Change the active viewthing to the previous viewthing

> `viewyaw( Float yaw )`

> Set the yaw of the current viewthing

## Viewthing (viewthing) -> Animate -> Entity -> Listener -> Class

> `viewangles( Float pitch<0.00...360.00>, Float yaw<0.00...360.00>, Float roll<0.00...360.00> )`

> Set the angles of the current viewthing

> `viewanimate`

> Cycle through the animations modes of the current viewthing
> No Animation
> Animation with no motion
> Animation with looping motion
> Animation with motion

> `viewattach( String tagname, String model )`

> Attach a model the the specified tagname

> `viewdelete`

> Delete the current viewthing

> `viewdetach`

> Detach the current viewthing from its parent

> `viewdetachall`

> Detach all the models attached to the current viewthing

> `viewlastframe`

> Called when the view things last animation frame is displayed.

> `viewmodel( String viewthingModel )`

> Set the model of the current viewthing

> `viewnext`

> Advance to the next frame of animation of the current viewthing

> `viewnextanim`

> Advance to the next animation of the current viewthing

> `vieworigin( Float x, Float y, Float z )`

> Set the origin of the current viewthing

> `viewpitch( Float pitch )`

> Set the pitch of the current viewthing

> `viewprev`

> Advance to the previous frame of animation of the current viewthing

> `viewprevanim`

> Advance to the previous animation of the current viewthing

> `viewroll( Float roll )`

> Set the roll of the current viewthing

> `viewsavesurfaces`

> Called after the model is spawned to save off the models original surfaces.

> `viewscale( Float scale )`

> Set the scale of the current viewthing

> `viewscaledown`

> Decrease the scale of the current viewthing

> `viewscaleup`

> Increase the scale of the current viewthing

> `viewsetanim( Float animNum )`

> Set the animation absolutely based off a floating point value

> `viewthing_think`

> Called every frame to process the view thing.

> `viewyaw( Float yaw )`

> Set the yaw of the current viewthing

## Wander -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## Watch -> Behavior -> Listener -> Class

> `args( [ String token1 ], [ String token2 ], [ String token3 ], [ String token4 ], [ String token5 ], [ String token6 ] )`

> Gives the current behavior arguments.

## WaterInventoryItem -> InventoryItem -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `useinvitem`

> Use this inventory item.

## Waypoint (info_waypoint) -> Mover -> Trigger -> Animate -> Entity -> Listener -> Class

## Weapon -> Item -> Trigger -> Animate -> Entity -> Listener -> Class

> `actionincrement( Integer actionLevelIncrement )`

> Set the action level increment of the weapon.
> When the weapon is fired, it will raise the action level by this amount

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

> Set the alternate mode of the weapon, by passing commands through

> `ammo_in_clip( Integer ammoInClip )`

> Set the amount of ammo in the clip

> `ammorequired( Integer amount )`

> Set the amount of ammo this weapon requires to fire

> `ammotype( String name )`

> Set the type of ammo this weapon uses

> `autoaim`

> Turn on auto aiming for the weapon

> `autoputaway( Boolean bool )`

> Set the weapon to be automatically put away when out of ammo

> `bulletcount( Float bulletCount )`

> Set the number of bullets this weapon shoots when fired

> `bulletdamage( Float bulletDamage )`

> Set the damage that the bullet causes

> `bulletknockback( Float bulletKnockback )`

> Set the knockback that the bullet causes

> `bulletrange( Float bulletRange )`

> Set the range of the bullets

> `bulletspread( Float bulletSpreadX, Float bulletSpreadY )`

> Set the max spread of the bullet in the x and y axis

> `clipsize( Integer ammoClipSize )`

> Set the amount of rounds a clip of the weapon holds

> `crosshair( Boolean bool )`

> Turn on/off the crosshair for this weapon

> `donefiring`

> Signals the end of the fire animation

> `donereloading`

> Signals the end of the reload animation

> `dualattachtotag( String tagname )`

> Set the name of the tag to attach this to it's owner when wielded dual handed.

> `dualholsterangles( Vector angles )`

> Set the angles of this weapon when it's attached to the dual holster

> `dualholstertag( String tagname )`

> Set the name of the tag to attach this to when the weapon is put away from dual handed

> `firetype( String firingType )`

> Set the firing type of the weapon (projectile or bullet)

> `hand( String weaponHand )`

> Set the hand the weapon can be wielded in (lefthand, righthand, both, or any)

> `holsterscale( Float scale )`

> Set the scale of the weapon when it's attached to the holster

> `idle`

> Puts the weapon into an idle state

> `item_pickup( Entity item )`

> Pickup the specified item.

> `leftattachtotag( String tagname )`

> Set the name of the tag to attach this to it's owner when wielded in the left hand.

> `leftholsterangles( Vector angles )`

> Set the angles of this weapon when it's attached to the left holster

> `leftholstertag( String tagname )`

> Set the name of the tag to attach this to when the weapon is put away from the left hand.

> `loopfire`

> Makes the weapon fire by looping the fire animation.

> `makenoise( [ Float noise_radius ], [ Boolean force ] )`

> Makes the weapon make noise that actors can hear.

> `maxchargetime( Integer time )`

> Set the maximum time the weapon may be charged up

> `maxrange( Float maxRange )`

> Set the maximum range of a weapon so the AI knows how to use it

> `meansofdeath( String meansOfDeath )`

> Set the meansOfDeath of the weapon.

> `minrange( Float minRange )`

> Set the minimum range of a weapon so the AI knows how to use it

> `notdroppable`

> Makes a weapon not droppable

> `process_mdl_cmds`

> Forces a processing of the init commands for the model

> `projectile( String projectileModel )`

> Set the model of the projectile that this weapon fires

> `quiet`

> Makes the weapon make no noise.

> `range( Float range )`

> Set the range of the weapon

> `ready`

> Signals the end of the ready animation so the weapon can be used

> `rightattachtotag( String tagname )`

> Set the name of the tag to attach this to it's owner when wielded in the right hand.

> `rightholsterangles( Vector angles )`

> Set the angles of this weapon when it's attached to the right holster

> `rightholstertag( String tagname )`

> Set the name of the tag to attach this to when the weapon is put away from the right hand.

> `setaimanim( String aimAnimation, Integer aimFrame )`

> Set the aim animation and frame for when a weapon fires

> `shoot( [ String mode ] )`

> Shoot the weapon

> `soundevent( [ Float soundRadius ] )`

> Let the AI know that this entity made a sound,
> radius determines how far the sound reaches.

> `specialmove( Boolean bool )`

> Set the weapon whether or not the player can do special movement with it wielded

> `startammo( Integer amount )`

> Set the starting ammo of this weapon

> `startingammotoowner`

> Internal event used to give ammo to the owner of the weapon

> `torsoaim( Boolean bool )`

> Turn on/off the torsoaim for this weapon

> `usenoammo( Boolean bool )`

> Set the weapon to be able to be used when it's out of ammo

> `worldhitspawn( String modelname )`

> Set a model to be spawned when the weapon strikes the world.

## World (worldspawn) -> Entity -> Listener -> Class

> `farplane( Float farplaneDistance )`

> Set the distance of the far clipping plane

> `farplane_color( Vector farplaneColor )`

> Set the color of the far clipping plane fog

> `farplane_cull( Boolean farplaneCull )`

> Whether or not the far clipping plane should cull things out of the world

> `gravity( Float worldGravity )`

> Set the gravity for the whole world.

> `lavaalpha( Float lavaAlpha )`

> Set the alpha of lava screen blend

> `lavacolor( Vector lavaColor )`

> Set the color of lava screen blend

> `message( String worldMessage )`

> Set a message for the world

> `nextmap( String nextMap )`

> Set the next map to change to

> `script( String worldScript )`

> Set the script for this map

> `skipthread( String skipThread )`

> Set the thread for skipping cinematics

> `skyalpha( Float newAlphaForPortalSky )`

> Set the alpha on the sky

> `skyportal( Boolean newSkyPortalState )`

> Whether or not to use the sky portal at all

> `soundtrack( String MusicFile )`

> Set music soundtrack for this level.

> `wateralpha( Float waterAlpha )`

> Set the alpha of the water screen blend

> `watercolor( Vector waterColor )`

> Set the watercolor screen blend

## 202 Game Module Classes.
1272 Game Module Events.