Zh/List of CS:GO Script Functions

From Valve Developer Community
< Zh
Revision as of 06:33, 27 April 2018 by Dazainerau (talk | contribs)
Jump to navigation Jump to search

Template:Otherlang2

Squirrel 这份清单包含了反恐精英:全球攻势 Counter-Strike: Global Offensive 中的与引擎相关的可用于VScriptSquirrel类、函数以及 可用的变量。加载一个地图然后执行script_help,并且将developer的值设置为至少1, 可以把这份清单中的部分内容显示于控制台中。 值得一提的是,developer 只要不为0,且加载了任意的地图, 就可以把script_help指令所显示的内容转存到文件中。步骤如下(请一步一步地在控制台中键入每一行指令):

developer 3
map de_nuke
developer 0
con_logfile dump.txt
script_help
con_logfile ""





变量

实例 类型 描述
Entities CEntities 提供一个对当前已生成的实体的访问方式.

常量

实例 类型 描述
_charsize_ integer
_floatsize_ integer
_intsize_ integer
_version_ string Squirrel的版本号.
_versionnumber_ integer Squirrel的版本号的整数形式.
RAND_MAX integer

CBaseEntity

CBaseEntity是实体的脚本句柄类. 所有已生成的实体都有一个使用CBaseEntity或者其子类的的脚本句柄.

所有游戏中的脚本句柄都可以从Entities中访问. 实体脚本可以通过 self来访问它们自身的脚本句柄.

Methods

函数 签名 描述
__KeyValueFromInt void __KeyValueFromInt(string key, int value) 以整数设置实体的键值(KeyValue). 这个函数只修改数值而不执行实体处理KeyValue所需要的任何代码, 所以可能会有令人意想不到的副作用.
__KeyValueFromFloat void __KeyValueFromFloat(string key, float value) 以浮点数设置实体的KeyValue. 这个函数只修改数值而不执行实体处理KeyValue所需要的任何代码, 所以可能会有令人意想不到的副作用.
__KeyValueFromString void __KeyValueFromString(string key, string value) 以字符串设置实体的KeyValue. 这个函数只修改数值而不执行实体处理KeyValue所需要的任何代码, 所以可能会有令人意想不到的副作用.
__KeyValueFromVector void __KeyValueFromVector(string key, Vector value) 向量(Vector)设置实体的KeyValue. 这个函数只修改数值而不执行实体处理KeyValue所需要的任何代码, 所以可能会有令人意想不到的副作用.
ConnectOutput void ConnectOutput(string output, string function) 添加一个I/O关联, 当指定的输出触发时将调用指定的函数.
DisconnectOutput void DisconnectOutput(string output, string function) 从I/O事件中删除一个已关联的脚本函数.
Destroy void Destroy() 删除实体.
EmitSound void EmitSound(string soundScript) 在这个实体上播放声音.
entindex int entindex() 返回实体的索引.
EyePosition Vector EyePosition() 获取眼睛位置的Vector(备注:绝对坐标).
FirstMoveChild handle FirstMoveChild()
GetAngles Vector GetAngles() Vector形式获取实体的章动角(pitch)、进动角(yaw)和自转角(roll).
GetAngularVelocity Vector GetAngularVelocity() 获取实体的角速度(备注:返回pitch、yaw、roll的向量).
GetBoundingMaxs Vector GetBoundingMaxs() 将实体边界框的最大范围以Vector返回。
GetBoundingMins Vector GetBoundingMins() 将实体边界框的最小范围以vector返回.
GetCenter Vector GetCenter() 返回边界框中心位置的Vector.
GetClassname string GetClassname() 返回实体的种类名. (备注:包含player).
GetForwardVector Vector GetForwardVector() 返回实体的前向量.
GetHealth int GetHealth() 返回实体当前的生命值.
GetLeftVector Vector GetLeftVector() 返回实体的左向量.
GetMaxHealth int GetMaxHealth() 返回实体的最大生命值.
GetModelKeyValues Keyvalues GetModelKeyValues() 返回实体模型的[$keyvalues]块作为一个#Keyvalues对象. 请注意, 这并非实体自身的keyvalues.
GetModelName string GetModelName() 返回实体模型的文件名.
GetMoveParent CBaseEntity GetMoveParent() 如果实体位于层次结构(hierarchy)中, 检索实体的父实体(parent).
GetName string GetName() 返回实体的targetname.
GetOrigin Vector GetOrigin() 返回实体的位置.
GetOwner handle GetOwner() 获取实体的所有者(owner). (备注:似乎只有当需要在这个实体上使用SetOwner()时这个函数才有用, 可能也不尽然)
GetPreTemplateName string GetPreTemplateName() Get the entity name stripped of template unique decoration.
GetRootMoveParent handle GetRootMoveParent() If in hierarchy, walks up the hierarchy to find the root parent.
GetScriptId string GetScriptId() Retrieve the unique identifier used to refer to the entity within the scripting system.
GetScriptScope handle GetScriptScope() Retrieve the table storing the Entity Script data associated with this entity.
GetSoundDuration float GetSoundDuration(string soundName, string actorModelName = "") Returns float duration of the sound. Takes soundname and optional actormodelname.
GetTeam int GetTeam() Returns the team number of a player. Terrorists = 2, CTs = 3.
GetUpVector Vector GetUpVector() Get the up vector of the entity.
GetVelocity Vector GetVelocity() Returns a local velocity Vector.
IsValid bool IsValid() Whether the handle belongs to a valid entity.
NextMovePeer handle NextMovePeer()
PrecacheModel void PrecacheModel(string modelPath) Precache a model after the map has loaded.
PrecacheScriptSound void PrecacheScriptSound(string soundName)
PrecacheSoundScript void PrecacheSoundScript(string soundScript) Precache a sound for later playing.
SetAbsOrigin void SetAbsOrigin(Vector position) Same as SetOrigin().
SetAngles void SetAngles(float pitch, float yaw, float roll) Set entity pitch, yaw, roll. Note that it doesn't take a Vector object.
SetAngularVelocity void SetAngularVelocity(float pitch, float yaw, float roll) Set the local angular velocity - takes float pitch, yaw, roll velocities.
SetForwardVector void SetForwardVector(Vector forwardVector) Set the orientation of the entity to have this forward vector.
SetHealth void SetHealth(int newHealth) Sets the current health.
SetMaxHealth void SetMaxHealth(int maxHealth) Sets a new maximum health.
SetModel void SetModel(string modelName) Changes the model of the entity. Does not Precache the model.
待完善: Check for side effects
SetOrigin void SetOrigin(Vector position) Moves the entity to this global position vector.
SetOwner void SetOwner(handle owner) Sets this entity's owner.
SetSize void SetSize(Vector, Vector) [待完善]
SetTeam void SetTeam(int teamNumber) Instantly switches a players team. Terrorists = 2, CTs = 3.
SetVelocity void SetVelocity(Vector velocity) Gives the entity a new local velocity.
ValidateScriptScope bool ValidateScriptScope() Ensure that an entity's script scope has been created.

Hooks

If one of these functions are declared in an Entity Script, the entity will run this function automatically in the appropriate situation.

Function Signature Description
InputInputName bool InputInputName() Called when the entity receives an input from the I/O system. The name of the function needs to be Input followed by the name of the input in CamelCase, for example InputFireUser1 for the FireUser1 input. When the function is called, the activating and calling entities Script Handles are written to the receiving entitys Script Scope in the activator and caller variables. The function needs to return a boolean value. Setting it to true allows the entity to process the input, while false cancels it.
OnPostSpawn void OnPostSpawn() Called immediately after the entity spawns. This could be used to have an entity register itself with a master script, or adjusting the entity parameters in a programmatic way.
Precache void Precache() Called after the script executes. Can be used to call precache functions for models and sounds on map load.

CBaseAnimating

Extends CBaseEntity

Script handle class for animating entities such as props.

Methods

Function Signature Description
GetAttachmentAngles Vector GetAttachmentAngles(int id) Get the attachment ID's angles as a pitch, yaw, roll vector.
GetAttachmentOrigin Vector GetAttachmentOrigin(int 'id') Get the attachment ID's origin vector.
IsSequenceFinished bool IsSequenceFinished() Ask whether the main sequence is done playing.
LookupAttachment int LookupAttachment(string attachmentName) Get the named attachment ID.
SetBodygroup void SetBodygroup(int groupIndex, int value) Sets the models bodygroup value by index.
待完善: How do you find the index?


CBaseFlex

Extends CBaseAnimating

Methods

Function Signature Description
GetCurrentScene handle GetCurrentScene() Returns the instance of the oldest active scene entity (if any).
GetSceneByIndex handle GetSceneByIndex(int index) Returns the instance of the scene entity at the specified index.


CBasePlayer

Extends CBaseAnimating

Methods

Function Signature Description
IsNoclipping bool IsNoclipping() Returns true if the player is in noclip mode.

CBaseMultiplayerPlayer

Extends CBasePlayer

Script handle class for the CS:GO players. No additional methods.


CEnvEntityMaker

Extends CBaseEntity

Script handle class for env_entity_maker.

Methods

Function Signature Description
SpawnEntity void SpawnEntity() Create an entity at the location of the maker
SpawnEntityAtEntityOrigin void SpawnEntityAtEntityOrigin(CBaseEntity entity) Create an entity at the location of a specified entity instance.
SpawnEntityAtLocation void SpawnEntityAtLocation(Vector origin, Vector orientation) Create an entity at a specified location and orientation, orientation is Euler angle in degrees (pitch, yaw, roll).
SpawnEntityAtNamedEntityOrigin void SpawnEntityAtNamedEntityOrigin(string targetName) Create an entity at the location of a named entity.


CPointTemplate

Extends CBaseEntity

Script handle class for point_template.

Hooks

table PreSpawnInstance(string entityClass, string entityName)
If this is defined, it will be called right before the entity is created, and any KeyValues returned will be assigned to the entity.
function PreSpawnInstance( entityClass, entityName )
{
	local keyvalues =
	{ 
   		rendercolor = "0 255 0"
   		targetname = "mySpawnedEntity"
	}
	return keyvalues
	
}
void PostSpawn(table entities)
Called after the entities are spawned. A table with the handles of the spawned entities indexed by name is passed to the function. Could use this to connect outputs or do whatever needs to be done after the entity was created.
function PostSpawn( entities )
{
	foreach( name, handle in entities )
	{
		printl( name + ": " + handle )
	}
}


CSceneEntity

Extends CBaseEntity


Methods

Function Signature Description
AddBroadcastTeamTarget void AddBroadcastTeamTarget(int index) Adds a team (by index) to the broadcast list.
EstimateLength float EstimateLength() Returns length of this scene in seconds.
FindNamedEntity handle FindNamedEntity(string reference) given an entity reference, such as !target, get actual entity from scene object.
IsPaused bool IsPaused() If this scene is currently paused.
IsPlayingBack bool IsPlayingBack() If this scene is currently playing.
LoadSceneFromString bool LoadSceneFromString(string sceneName, string scene) Given a dummy scene name and a vcd string, load the scene.
RemoveBroadcastTeamTarget void RemoveBroadcastTeamTarget(int index) Removes a team (by index) from the broadcast list.


CTriggerCamera

Extends CBaseEntity


Methods

Function Signature Description
GetFov int GetFov() Get cameras current Field Of View setting as integer.
SetFov void SetFov(int fov, float rate) Set cameras current FOV in integer degrees and FOV change rate as float.

Hooks

void ScriptStartCameraShot(string shotType, handle sceneEntity, handle actor1, handle actor2, float duration)
Called from SceneEntity in response to a CChoreoEvent::CAMERA sent from a VCD. [待完善]


CCallChainer

[待完善]

Methods

Function Signature Description
constructor [待完善] constructor()
PostScriptExecute [待完善] PostScriptExecute()
Call [待完善] Call()

Members

Instance Type Description
chains null
prefix null
scope null


CEntities

Game Instance: Entities

An interface to find and iterate over the script handles for the entities in play.

To iterate over a set of entities, pass null to the previous argument in the appropriate method to start an iteration, or reference to a previously found entity to continue a search.

Methods

Function Signature Description
CreateByClassname handle CreateByClassname(string class) Creates an entity by class name.
FindByClassname handle FindByClassname(handle previous, string class) Find entities by class name.
FindByClassnameNearest handle FindByClassnameNearest(string class, Vector origin, float radius) Find the entity with the given class name nearest to the specified point.
FindByClassnameWithin handle FindByClassnameWithin(handle previous, string class, Vector origin, float radius) Find entities by class name within a radius.
FindByModel handle FindByModel(handle previous, string filename) Find entities by model name.
FindByName handle FindByName(handle previous, string name) Find entities by name.
FindByNameNearest handle FindByNameNearest(string name, Vector origin, float radius) Find entities by name nearest to a point.
FindByNameWithin handle FindByNameWithin(handle previous, string name, Vector origin, float radius) Find entities by name within a radius.
FindByTarget handle FindByTarget(handle previous, string targetname) Find entities by its target.
FindInSphere handle FindInSphere(handle previous, Vector origin, float radius) Find entities within a radius.
First handle First() Begin an iteration over the list of entities.
Next handle Next(handle previous) Continue an iteration over the list of entities, providing reference to a previously found entity.
IsValid bool IsValid() Whether the handle belongs to a valid entity.


CPlayerVoiceListener

待完善: What is the int parameter to the methods.

Methods

Function Signature Description
GetPlayerSpeechDuration float GetPlayerSpeechDuration(int) Returns the number of seconds the player has been continuously speaking.
IsPlayerSpeaking bool IsPlayerSpeaking(int) Returns whether the player specified is speaking.
IsValid bool IsValid() Whether the handle belongs to a valid entity.


CScriptKeyValues

Script handle representation of a models $keyvalues block. Sub keys are instances of the same class.

Methods

Function Signature Description
constructor
FindKey CScriptKeyValues FindKey(string keyName) Find a sub key by the key name.
GetFirstSubKey CScriptKeyValues GetFirstSubKey() Return the first sub key object.
GetKeyBool bool GetKeyBool(string keyName) Return the key value as a bool.
GetKeyFloat float GetKeyFloat(string keyName) Return the key value as a float.
GetKeyInt int GetKeyInt(string keyName) Return the key value as an integer.
GetKeyString string GetKeyString(string keyName) Return the key value as a string.
GetNextKey handle GetNextKey() Return the next neighbor key object to the one the method is called on.
IsKeyEmpty bool IsKeyEmpty(string keyName) Returns true if the named key has no value.
IsValid bool IsValid() Whether the handle belongs to a valid entity.
ReleaseKeyValues void ReleaseKeyValues() Releases the contents of the instance.


CSimpleCallChainer

Seems to have the same members as CCallChainer. [待完善]


LateBinder

Late binding: allows a table to refer to parts of itself, it's children, it's owner, and then have the references fixed up after it's fully parsed.

// Usage:
lateBinder <- LateBinder();
lateBinder.Begin( this );

Test1 <-
{   
   Foo=1
}   

Test2 <-
{   
   FooFoo = "I'm foo foo"
   BarBar="@Test1.Foo"
   SubTable = { boo=[bah, "@Test2.FooFoo", "@Test1.Foo"], booboo2={one=bah, two="@Test2.FooFoo", three="@Test1.Foo"} }
   booboo=[bah, "@Test2.FooFoo", "@Test1.Foo"]
   booboo2={one=bah, two="@Test2.FooFoo", three="@Test1.Foo"}
   bah=wha
}   

lateBinder.End();
delete lateBinder;

When End() is called, all of the unresolved symbols in the tables and arrays will be resolved, any left unresolved will become a string prepended with '~', which later code can deal with.

Methods

Function Signature Description
Begin
End
EstablishDelegation
HookRootMetamethod
Log
m_bindNamesStack
m_fixupSet
m_log
m_logIndent
m_targetTable
RemoveDelegation
Resolve
UnhookRootMetamethod

regexp

The built-in Squirrel class for regular expressions.

Methods

Function Signature Description
constructor regexp()
capture [table] capture(str, [start]) Returns an array of tables containing two indexes("begin" and "end")of the first match of the regular expression in the string str. An array entry is created for each captured sub expressions. If no match occurs returns null. The search starts from the index start of the string, if start is omitted the search starts from the beginning of the string.
match bool match(str) Returns a true if the regular expression matches the string str, otherwise returns false.
search table search(str, [start]) Returns a table containing two indexes("begin" and "end") of the first match of the regular expression in the string str, otherwise if no match occurs returns null. The search starts from the index start of the string, if start is omitted the search starts from the beginning of the string.
subexpcount


Vector

Squirrel equivalent of the C++ Vector class.

Three-dimensional vector.

Has overloaded arithmetic operations with both Vectors and scalar values.

Note.png注意:Example declaration and manipulation of Vector

Methods

Function Signature Description
constructor Vector(float x, float y, float z) Creates a new vector with the specified Cartesian coordiantes.
Cross float Cross(Vector factor) The vector product of two vectors. Returns a vector orthogonal to the input vectors.
Dot float Dot(Vector factor) The scalar product of two vectors.
Length float Length() Magnitude of the vector.
LengthSqr float LengthSqr() The magnitude of the vector squared. Faster than the above method.
Length2D float Length2D() Returns the magnitude of the vector on the x-y plane.
Length2DSqr float Length2DSqr() Returns the square of the magnitude of the vector on the x-y plane. Faster than the above method.
Norm float Norm() Will return the vector length as a float. This function will also NORMALIZE the vector, the X, Y, and Z values will each be set to a number between -1 and 1. You can then multiply these values by, for example, 3000 to use the vector to set the velocity of something in game.
ToKVString string ToKVString() Returns a string without separations commas.

Members

Instance Type Description
x float Cartesian X axis.
y float Cartesian Y axis.
z float Cartesian Z axis.


Global functions

Printing and Drawing

Function Signature Description
DebugDrawBox void DebugDrawBox(vector origin, vector min, vector max, int r, int g, int b, int alpha, float duration) Draw a debug overlay box.
DebugDrawLine void DebugDrawLine(Vector start, Vector end, int red, int green, int blue', bool zTest, float time) Draw a debug line between two points.
Msg void Msg(string message) Equivalent to print
print void print(string message) Prints the given message to the developer console.
printl void printl(string message) Prints the given message to the developer console just like print but also appends a newline.
ScriptPrintMessageCenterAll void ScriptPrintMessageCenterAll(string message) Prints an alert message in the center of the screen to all players.
ScriptPrintMessageCenterTeam void ScriptPrintMessageCenterTeam(int, string) Prints an alert message in the center of the screen to the specified team.
ScriptPrintMessageChatAll void ScriptPrintMessageChatAll(string message) Prints a message in chat to all players.
ScriptPrintMessageChatTeam void ScriptPrintMessageChatTeam(int teamNumber, string message) Prints a message in chat to the specified team.
ShowMessage void ShowMessage(string) Print a hud message on all clients.
Icon-Bug.png错误:Non-functional  [todo tested in ?]
__DumpScope void __DumpScope(int indentation, handle scope) Dumps contents of everything in the scope.


Training Course related

Function Signature Description
ScriptGetBestTrainingCourseTime int ScriptGetBestTrainingCourseTime() Gets the player's best time for completing the timed course.
ScriptGetPlayerCompletedTraining bool ScriptGetPlayerCompletedTraining() Returns true if the player has completed the initial portion of the training map.
ScriptGetValveTrainingCourseTime int ScriptGetValveTrainingCourseTime() Gets Valve's best time for completing the timed course.
ScriptHighlightAmmoCounter void ScriptHighlightAmmoCounter() Sends an event that is just used by the instructor system to show a hint highlighting the ammo counter.
ScriptSetBestTrainingCourseTime void ScriptSetBestTrainingCourseTime(int bestTime) Sets the player's best time for completing the timed course.
ScriptSetMiniScoreHidden void ScriptSetMiniScoreHidden(bool scoreHidden) Toggles the visibility of the miniscoreboard hud element.
ScriptSetPlayerCompletedTraining void ScriptSetPlayerCompletedTraining(bool trainingCompleted) Sets whether the player has completed the initial portion of the training map.
ScriptShowExitDoorMsg void ScriptShowExitDoorMsg() Shows a message box in trainign when the player exits through the exit door
ScriptShowFinishMsgBox void ScriptShowFinishMsgBox() Shows a message box to let players know what to do next after finishing the training course.
ScriptTrainingGivePlayerAmmo void ScriptTrainingGivePlayerAmmo() Refills ammo to max for all weapons the player has (only works in training).


Co-op Strike related

Function Signature Description
ScriptCoopCollectBonusCoin void ScriptCoopCollectBonusCoin() Marks one of the bonus coins as collected.
ScriptCoopGiveC4sToCTs void ScriptCoopGiveC4sToCTs(int) Will give the number of specified C4s to all alive CT players.
ScriptCoopMissionGetMissionNumber int ScriptCoopMissionGetMissionNumber() Gets the mission number for the current map - maps can have multiple missions on them.
ScriptCoopMissionRespawnDeadPlayers void ScriptCoopMissionRespawnDeadPlayers() Respawns players only.
ScriptCoopMissionSetNextRespawnIn void ScriptCoopMissionSetNextRespawnIn(float, bool) Set the next respawn wave to happen in this many seconds.
ScriptCoopMissionSpawnFirstEnemies void ScriptCoopMissionSpawnFirstEnemies(int) Spawns the first wave of enemies in coop.
ScriptCoopMissionSpawnNextWave void ScriptCoopMissionSpawnNextWave(int) Tells the next wave of enemies to spawn in coop. Also respawns player.
ScriptCoopResetRoundStartTime void ScriptCoopResetRoundStartTime() Resets the round time and starts the mission.
ScriptCoopSetBotQuotaAndRefreshSpawns void ScriptCoopSetBotQuotaAndRefreshSpawns(int) Sets the bot quota considering the # of players connected and refreshes the spawns.


Other

Function Signature Description
Assert void Assert(bool value, string optional message) Test value and if not true, throws exception, optionally with message.
CreateProp handle CreateProp(string class, Vector origin, string model, int animation) Create a prop with the specified class and model. Both prop_physics, prop_dynamic as well as some other entity classes with models work. Does not precache the model.
Icon-Bug.png错误:Does not initialize the physics of the prop.  [todo tested in ?]
CreateSceneEntity CSceneEntity CreateSceneEntity(string scene) Create a scene entity to play the specified scene .vcd file.
DispatchParticleEffect void DispatchParticleEffect(string particleName, Vector, Vector) Dispatches a one-off particle system.
DoIncludeScript bool DoIncludeScript(string filename, table scope) Execute a script with the script scope set to the specified table.
DoEntFire void DoEntFire(string target, string action, string value, float delay, handle activator, handle caller) Generate an entity I/O event. The caller argument takes a script handle, so it can be used with target set to !self to fire inputs to entities without usable targetnames.
EntFire function EntFire(string target, string action, string value, float delay = 0.0, handle activator = null) Generate an entity I/O event.
EntFireByHandle void EntFireByHandle(handle target, string action, string 'value, float delay, handle activator, handle caller) Generate an entity I/O event. The first parameter is an entity instance, so the handles of nameless or script generated entities can be passed easily.
FrameTime float FrameTime() Get the time spent on the server in the last frame
GetDeveloperLevel int GetDeveloperLevel() Gets the level of the developer mode.
GetMapName string GetMapName() Get the name of the map.
LoopSinglePlayerMaps bool LoopSinglePlayerMaps() Run the single player maps in a continuous loop.
PrintHelp [待完善]
RandomFloat float RandomFloat() Generate a random floating point number.
RandomFloat float RandomFloat(float min, float max) Generate a random floating point number within a range, inclusive
RandomInt int RandomInt() Generate a random integer.
RandomInt int RandomInt(int min, int max) Generate a random integer within a range, inclusive
RecordAchievementEvent void RecordAchievementEvent(string, int) Records achievement event or progress
RetrieveNativeSignature void RetrieveNativeSignature(string or func) Name suggests it would print the calling format for a native function, but I can't get it to output anything other than <unnamed>
ScriptGetGameMode int ScriptGetGameMode() Retrieves the set game_mode. See this list for a settings vs modes overview.
ScriptGetGameType int ScriptGetGameType() Retrieves the set game_type. See this list for a settings vs modes overview.
ScriptGetRoundsPlayed int ScriptGetRoundsPlayed() Get the number of rounds played so far.
ScriptIsLocalPlayerUsingController bool ScriptIsLocalPlayerUsingController() Returns whether the player is playing with a controller or not.
ScriptIsWarmupPeriod bool ScriptIsWarmupPeriod() Is it warmup or not.
ScriptSetRadarHidden void ScriptSetRadarHidden(bool hideRadar) Toggles the visibility of the radar hud element. Only works in training mode (game_type 2, game_mode 0) and only for the first person connected.
SendToConsole void SendToConsole(string command) Send a string to the console as a command.
SendToConsoleServer void SendToConsoleServer(string) Send a string that gets executed on the server as a ServerCommand
Time float Time() Get the current server time
TraceLine float TraceLine(Vector, Vector, handle) given 2 points & ent to ignore, return fraction along line that hits world or models
UniqueString function UniqueString(string) Generate a string guaranteed to be unique across the life of the script VM, with an optional root string. Useful for adding data to tables when not sure what keys are already in use in that table.
__ReplaceClosures

See Also