Zh/Half-Life: Alyx Workshop Tools/Scripting API

以下是的API接口。
__TOC__
== 全局 ==
全局函数。可以在没有任何类时使用。
=== 算数 ===
函数 	原型 	介绍
 	float AngleDiff(float ang1, float ang2) 	返回两个角之间的度数差
 	Vector AnglesToVector(QAngle angle) 	将指定的 QAngles 转换为 Vector 返回
 	Quaternion AxisAngleToQuaternion(Vector axis, float angle) 	(vector,float) constructs a quaternion representing a rotation by angle around the specified vector axis.
 	Vector CalcClosestPointOnEntityOBB(handle entity, Vector position) 	计算实体OBB上相对于向量的最近点。
 	float CalcDistanceBetweenEntityOBB(handle entity1, handle entity2) 	计算两个实体 OBB 之间的距离.返回 负值 表示输入错误。返回 零 表示OBB重叠。
 	Vector CrossVectors(Vector v1, Vector v2) 	计算两个向量之间的叉积（也可用作向量类方法）。
 	float CalcDistanceToLineSegment2D(Vector P, Vector vLineA, Vector vLineB) 	获取P在vLineA和vLineB直线上的最近点，同时计算P到直线的最短距离。
 	float ExponentialDecay(float decayTo, float decayTime, float dt) 	一条越靠近零下降越缓慢的平滑曲线。
 	Vector LerpVectors(Vector v1, Vector v2, float t) 	[0,1]上向量值的线性插值。
 	float RandomFloat(float min, float max) 	随机返回一个在指定范围内的小数
 	int RandomInt(int min, int max) 	随机返回一个在指定范围内的整数
 	QAngle RotateOrientation(QAngle angle1, QAngle angle2) 	应该不是简单的 angle1+angle2。
 	Vector RotatePosition(Vector rotationOrigin, QAngle rotationAngle, Vector vectorToRotate)	将一个指定的向量vTR围绕指定的原点rO旋转指定的rA。
 	Quaternion RotateQuaternionByAxisAngle(Quaternion quat, Vector axis, float angle) 	Rotates a quaternion by the specified angle around the specified vector axis.
 	QAngle RotationDelta(Qangle src, Qangle dest,) 	返回两Qangle之间的增量。
 	Vector RotationDeltaAsAngularVelocity(Qangle angle1, Qangle angle2,) 	返回两Qangle之间的角速度。（应该就是把QAngle换成Vector返回吧）
 	Quaternion SplineQuaternions(Quaternion q0, Quaternion q1, float 't') 	Very basic interpolation of quaternions q0 to q1 over time 't' on [0,1].
 	Vector SplineVectors(Vector v0, Vector v1, float t) 	返回v0到v1随时间t在[0,1]上非常基本的插值。
 	QAngle VectorToAngles(Vector input) 	把一个Vector转换为QAngle。
==== 工具 ====
函数自动包含在utilsinit.lua核心库中。
函数 	原型 	介绍
 	float abs(float val) 	返回的数值绝对不为负。
 	float Clamp(float val, float min, float max) 	如果val小于min，返回min；如果val大于max，返回max；否则返回val。
 	float Deg2Rad(float deg) 	将度数转化为弧度。
 	float Rad2Deg(float rad) 	将弧度转化为度数。
 	float Lerp(float t, float a, float b) 	小数在[0,1]上的线性插值
 	float max(float x, float y) 	返回较大的值。
 	float min(float x, float y) 	返回较小的值。
 	table Merge(table t1, table t2) 	将两个表合并为第三个表，覆盖任何匹配的键。
 	float RemapVal(float input, float a, float b, float c, float d) 	将范围 [a，b] 中的值重新映射到 [c，d]。
 	float RemapValClamped(float input, float a, float b, float c, float d)	将范围 [a，b] 中的值重新映射到 [c，d]，并限制在[c，d]中。
 	float VectorDistanceSq(Vector v1, Vector v2) 	两个向量之间的距离平方（比计算普通距离更快）。
 	float VectorDistance(Vector v1, Vector v2) 	两个向量之间的距离。
 	Vector VectorLerp(float t, Vector v1, Vector v2) 	向量在 [0,1] 上的线性插值。与本机函数 LerpVectors 相同。
 	bool VectorIsZero(Vector vec) 	检查向量是否是空值。
=== 输出与绘制 ===
函数 	原型 	介绍
 	void AppendToLogFile(string string_1, string string_2) 	将字符串追加到服务器上的日志文件
 	void DebugDrawBox(Vector origin, Vector mins, Vector maxs, int r, int g, int b, int a, float duration) 	绘制一个用于调试的立方体
 	void DebugDrawBoxDirection(Vector origin, Vector mins, Vector maxs, Vector orientation, Vector rgb, float a, float duration) 	绘制一个面向指定方向的立方体
 	void DebugDrawCircle(Vector origin, Vector rgb, float a, float radius, bool noDepthTest, float duration) 	绘制一个用于调试的圈
 	void DebugDrawClear() 	试着清除所有的调试信息
 	void DebugDrawLine(Vector origin, Vector target, int r, int g, int b, bool noDepthTest, float duration) 	绘制一个用于调试的线段
 	void DebugDrawLine_vCol(Vector Vector_1, Vector Vector_2, Vector Vector_3, bool bool_4, float float_5) 	绘制一个用于调试的线段，参数由向量变量提供。
依次是：起始位置、结束位置、红绿蓝颜色值、透明度、false、持续时间。
 	void DebugDrawScreenTextLine(float float_1, float float_2, int int_3, string string_4, int int_5, int int_6, int int_7, int int_8, float float_9) 	在屏幕上绘制具有线段偏移量的文本。
参数依次是：x坐标、y坐标、线段偏移量、文本、红色值、绿色值、蓝色值、透明度、持续时间。
 	void DebugDrawSphere(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6) 	绘制一个调试用的球。
参数依次是：原点、红绿蓝颜色值、透明度、rad、false、持续时间。
 	void DebugDrawText(Vector Vector_1, string string_2, bool bool_3, float float_4) 	在三维空间中绘制文本。
参数依次是：原点、文本、bViewCheck、持续时间。
 	void DebugScreenTextPretty(float float_1, float float_2, int int_3, string string_4, int int_5, int int_6, int int_7, int int_8, float float_9, string string_10, int int_11, bool bool_12)	在屏幕上绘制一个漂亮的调试用文本。
参数依次是：横坐标、纵坐标、线段偏移量、文本、红、绿、蓝、透明度、持续时间、字体、尺寸、为粗体。
 	void Msg(string message) 	向控制台输出消息。
 	void PrintLinkedConsoleMessage(string string_1, string string_2) 	向链接控制台输出控制台消息。
 	void Say(handle entity, string message, bool teamOnly) 	让实体输出message。teamOnly决定输出是否仅限于团队。
 	void ShowMessage(string string_1) 	向所有客户端输出hud消息。
 	void UTIL_MessageText(int playerId, string message, int r, int g, int b, int a) 	显示特定玩家消息。
 	void UTIL_MessageText_WithContext(int playerId, string message, int r, int g, int b, int a, table context) 	使用上下文表向消息框中的特定玩家发送消息。
 	void UTIL_MessageTextAll(string message, int r, int g, int b, int a) 	向消息框中的每个玩家发送消息。
 	void UTIL_MessageTextAll_WithContext(string message, int r, int g, int b, int a, table context) 	使用上下文表向消息框中的每个玩家发送消息。
 	void UTIL_ResetMessageText(int playerId) 	重置该玩家的消息文本。
 	void UTIL_ResetMessageTextAll() 	重置所有玩家的消息文本。
 	void Warning(string "msg") 	输出一个警告。
=== 操纵实体 ===
函数 	原型 	介绍
 	void CancelEntityIOEvents(EHANDLE entityEhandle) 	取消特定实体的所有输入、输出事件。
 	void ConnectOutputs(table scope) 	将传递的实体脚本作用域的所有输出脚本函数连接到实体输出。
 	CTakeDamageInfo CreateDamageInfo (handle, hInflictor, handlehAttacker,Vector force, Vector hitPos, float flDamage, int damageTypes)	分配一个 承受伤害信息 对象，用作 基本实体::承受伤害() 的参数。调用 销毁伤害信息() 来释放对象。
 	bool CreateEffect(table keys) 	传递表 - 输入：实体、效果。
 	handle CreateSceneEntity(string sceneName) 	创建情景实体以播放指定的情景。
 	handle CreateTrigger(Vector origin, Vector mins, Vector maxs) 	创建并返回已启用的 AABB 触发器
 	handle CreateTriggerRadiusApproximate(Vector origin, float radius) 	创建并返回一个大于所提供半径的AABB触发器。
 	void DestroyDamageInfo(CTakeDamageInfo info) 	释放使用 创建伤害信息() 创建的 承受伤害信息 对象。
 	void DoEntFire(string target, string action, string value, float delay, handle activator, handle caller) 	内部的本机函数 实体触发().
 	void DoEntFireByInstanceHandle(handle target, string action, string value, float delay, handle activator, handle caller) 	内部的本机函数 实体触发句柄().
 	void EntFire(table scope, string target, string action, string value = "", float delay = 0.0, handle activator = scope.thisEntity) 	在所有与指定目标名称匹配的实体上生成实体输入输出事件。调用实体的脚本作用域应传递给第一个参数。
 	void EntFireByHandle(handle self, handle target, string action, string value = "", float delay = 0.0, handle activator = self) 	在指定实体上生成实体输入输出事件。调用实体应传递给第一个参数。
 	handle EntIndexToHScript(int entindex) 	根据实体索引值，获得实体的脚本实例句柄。
 	void FireEntityIOInputNameOnly(EHANDLE entityEhandle, string inputName) 	触发实体的动作输入，无数据。
 	void FireEntityIOInputString(EHANDLE entityEhandle, string inputName, string value) 	触发实体传递字符串的动作输入-你拥有内存。
 	void FireEntityIOInputVec(EHANDLE entityEhandle, string inputName, Vector value) 	触发实体传递向量的动作输入。
 	float GetMaxOutputDelay(EHANDLE entityEhandle, string inputName) 	为附加到输出的所有事件获取最长延迟。
 	Vector GetPhysAngularVelocity(CBaseEntity entity) 	获取物理物体或法线物体的角速度。返回旋转轴的向量乘以以弧度/秒为单位的旋转。
 	Vector GetPhysVelocity(CBaseEntity entity) 	获取物理物体或法线物体的速度。
 	bool IsValidEntity(CBaseEntity entity) 	返回实体是否有效。 反面 为无效()
 	handle PlayerInstanceFromIndex(int index) 	根据索引获取玩家脚本实例。
 	void PrecacheEntityFromTable(string classname, table spawnKeys, handle context) 	从表中的键值预缓存实体。
 	void PrecacheEntityListFromTable(table groupSpawnTables, handle context) 	预缓存实体键值表列表。
 	void PrecacheModel(string modelName, handle context) 	手动预缓存单个模型。
 	void PrecacheResource(string resourceType, string resourcePath, handle context) 	model_folder|sound|soundfile|particle|particle_folder”
 	void SetPhysAngularVelocity(CBaseEntity entity, Vector angVel) 	根据旋转轴的向量设置物理对象或法线对象的角速度乘以以弧度/秒为单位的旋转。
 	void SetRenderingEnabled(EHANDLE entityEhandle, bool enabled) 	设置 EHANDLE 的渲染打开/关闭。
 	void SpawnEntityFromTableAsynchronous(string classname, table spawnKeys, function callback, handle unknown) 	异步生成表中的单个实体。生成完成后将触发回调，将实体的句柄作为参数传递。
 	handle SpawnEntityFromTableSynchronous(string classname, table spawnKeys) 	从表中同步生成单个实体。
 	bool SpawnEntityGroupFromTable(table groupSpawnTables, bool bAsync, handle callback) 	从一组派生表中按层次结构派生实体组。
 	int SpawnEntityListFromTableAsynchronous(table groupSpawnTables, handle callback) 	从生成表列表中异步生成实体组。生成完成后将触发回调，传递生成的实体列表。
 	handle SpawnEntityListFromTableSynchronous((table groupSpawnTables) 	从生成表列表中同步生成实体组。
 	void StopEffect(handle entity, string effectName) 	
 	void UTIL_Remove(handle entity) 	删除实体
 	void UTIL_RemoveImmediate(handle entity) 	无延迟地删除实体。
=== 追踪 ===
（相应的页面已进行翻译。）
函数 	原型 	介绍
 	bool TraceCollideable(table parameters)	对单个实体执行追踪。输入和输出参数存储在指定的表中。
 	bool TraceHull(table parameters) 	沿直线追踪轴对齐的边界体。输入和输出参数存储在指定的表中。
 	bool TraceLine(table parameters) 	沿线进行追踪。输入和输出参数存储在指定的表中。
=== 声音 ===
函数 	原型 	介绍
 	void EmitGlobalSound(string soundName) 	向所有玩家播放指定的声音。
 	void EmitSoundOn(string string_1, handle handle_2) 	在实体上播放指定的声音。
 	void EmitSoundOnClient(string string_1, handle handle_2) 	仅为客户端上的玩家播放指定的声音。
 	void SetOpvarFloatAll(string string_1, string string_2, string string_3, float float_4) 	为所有玩家设置opvar值
 	void SetOpvarFloatPlayer(string string_1, string string_2, string string_3, float float_4, handle handle_5)	设置单个玩家的opvar值。
参数依次是：堆栈名称、重载名称、opvar名称、opvar值、玩家实体
 	void StartSoundEvent(string string_1, handle handle_2) 	开始声音事件。
 	void StartSoundEventFromPosition(string string_1, Vector Vector_2) 	从指定位置开始声音事件。
 	void StartSoundEventFromPositionReliable(string string_1, Vector Vector_2) 	可靠的从指定位置开始声音事件。（没看懂，建议去看原文理解）
 	void StartSoundEventFromPositionUnreliable(string string_1, Vector Vector_2) 	可选的从指定位置开始声音事件。（没看懂，建议去看原文理解）
 	void StartSoundEventReliable(string string_1, handle handle_2) 	通过可靠的交付开始声音事件。（带可靠我都没搞懂什么意思）
 	void StartSoundEventUnreliable(string string_1, handle handle_2) 	通过可选交付开始声音事件。
 	void StopSoundEvent(string string_1, handle handle_2) 	停止声音事件。
 	void StopSoundOn(string soundName, handle playingEntity) 	关闭实体上指定的声音。
=== 杂项 ===
函数 	原型 	介绍
 	float cvar_getf(string string_1) 	将文本转换为小数返回。
 	bool cvar_setf(string string_1, float float_2) 	将文本的值设置为指定小数。
 	void DebugBreak() 	中断调试。
 	bool DoIncludeScript(string scriptFileName, handle scope) 	脚本文件()的本机内部函数。
 	void DoScriptAssert(bool assertion, string message) 	脚本断言()的本机内部函数。
 	string DoUniqueString(string root) 	唯一文本()的本机内部函数。
 	void FireGameEvent(string eventName, handle parameterTable) 	触发预定义事件，可以在custom_events.txt或dota的资源/*.res中找到
 	void FireGameEventLocal(string string_1, handle handle_2) 	在不广播到客户端的情况下触发游戏事件。
 	float FrameTime() 	获取服务器计算最后一帧花费的时间。
 	int GetActiveSpawnGroupHandle() 	返回当前活动的生成组句柄
 	int GetFrameCount() 	返回引擎当前帧计数。
 	handle GetListenServerHost() 	在侦听服务器上获取本地玩家。
 	string GetMapName() 	获取地图的名称。
 	bool IncludeScript(string scriptFileName, handle scope = nil) 	执行脚本文件。默认情况下包含在当前范围内。
 	void InitLogFile(string string_1, string string_2) 	If the given file doesn't exist, creates it with the given contents; does nothing if it exists
 	bool IsClient() 	如果这是从客户端(client.dll)运行的 lua，则返回 true。
 	bool IsDedicatedServer() 	如果此服务器是专用服务器，则返回 true。
 	bool IsMarkedForDeletion(handle handle_1) 	如果实体有效并标记为删除，则返回 true。
 	bool IsServer() 	如果这是从服务器(server.dll)运行的 lua，则返回 true。
 	bool IsInToolsMode() 	如果这是从dota2创意工坊工具运行的lua，则返回true。
 	int ListenToGameEvent(string eventname, function callback, table context) 	从脚本注册为游戏事件的侦听器。
 	table LoadKeyValues(string string_1) 	从指定记录键值的文本文件创建表。
 	table LoadKeyValuesFromString(string string_1) 	从指定记录键值的文本中创建表。
 	table LocalTime() 	以表的形式返回本地系统时间，格式为 {时 = int; 分 = int; 秒 = int}
 	int MakeStringToken(string string_1) 	（可能是类似散列值那样的，每个文本生成一个对应的数字）
 	void ManuallyTriggerSpawnGroupCompletion(int int_1) 	触发在手动完成的生成组中创建实体。
 	void RegisterSpawnGroupFilterProxy(string string_1) 	为基于脚本的生成组过滤器创建 C 代理。
 	void ReloadMOTD() 	重新加载MotD文件
 	void RemoveSpawnGroupFilterProxy(string string_1) 	删除基于脚本的生成组过滤器的 C 代理。+
 	bool rr_AddDecisionRule(handle handle_1) 	将规则添加到决策数据库。
 	bool rr_CommitAIResponse(handle handle_1, handle handle_2) 	将 QueryBestResponse 的结果提交回给定实体进行播放。使用参数 实体、AI响应 调用。
 	handle rr_GetResponseTargets() 	检索所有可用表达式器目标的表, 格式为 {名称:句柄， 名称:句柄}.
 	bool rr_QueryBestResponse(handle 实体, handle 查询, handle 结果) 	静态：针对实体的响应系统测试“查询”，并返回找到的最佳响应（如果未找到，则返回 nil）。
 	void ScreenShake(Vector vecCenter, float flAmplitude, float flFrequency, float flDuration, float flRadius, int eCommand, bool bAirShake)	参数依次是：中心、振幅、频率、持续时间、半径、命令（抖动开始=0，抖动结束=1）、空气抖动。
 	void ScriptAssert(bool 断言, string 消息 = "") 	断言传入的值。输出一条消息并显示断言对话框。
 	void SendToConsole(string string_1) 	将文本作为客户端命令发送到控制台
 	void SendToServerConsole(string string_1) 	将文本作为客户端命令发送到服务器控制台
 	void SetQuestName(string string_1) 	设置当前任务名称。
 	void SetQuestPhase(int int_1) 	设置当前任务阶段。
 	void StopListeningToAllGameEvents(table context) 	停止收听特定上下文中的所有游戏事件。
 	bool StopListeningToGameEvent(int eventlistener) 	停止收听特定游戏事件。
 	float Time() 	返回当前服务器时间。
 	string UniqueString(string root = "") 	使用可选的根文本生成一个新文本，该文本保证在当前脚本的整个生命周期中是唯一的。
当不确定表中已经使用了哪些键时，将数据添加到表中非常有用。
 	void UnloadSpawnGroup(string string_1) 	按名称卸载生成组。
 	void UnloadSpawnGroupByHandle(int int_1) 	按句柄卸载生成组。
 	void UpdateEventPoints(handle handle_1) 	未设置描述。
=== 核心 ===
lua核心库自带的函数。位于vlua表中，而非全局作用域。
支持Sq2Lua.exe生成的Lua代码的库函数
函数 	原型 	介绍
 	table vlua.clear(table t) 	实现 Squirrel 清除表。
 	int vlua.compare(float a, float b) 	实现 Squirrel 三向比较运算符 ( <=> )。
 	bool vlua.contains(table t, variable key) 	实现 Squirrel in 运算符。
 	int vlua.delete(table t, variable key) 	实现 Squirrel delete 运算符。
 	int vlua.clone(table t) 	实现 Squirrel clone 运算符。
 	int vlua.rawdelete(table t, variable key) 	实现 Squirrel rawdelete 运算符。
 	int vlua.rawin(table t, variable key) 	实现 Squirrel rawin 运算符。
 	variable vlua.find([table/string] o, variable value, [int startIndex]) 	实现表和文本的Squirrel find 方法。(o,子文本,[起始索引])表示文本，(o,值)表示表。
 	variable vlua.slice([table/string] o, int startIndex, [int endIndex]) 	实现表和字符串的Squirrel slice 方法。
 	table vlua.reverse(table o) 	实现表的Squirrel reverse 方法。
 	table vlua.resize(string o, int size, [variable fill]) 	实现表的Squirrel resize 方法。
 	table vlua.extend(table o, array array) 	实现表的Squirrel extend 方法。
 	table vlua.map(table o, function mapFunc) 	实现表的Squirrel map 方法。
 	table vlua.reduce(table o, function reduceFunc) 	实现表的Squirrel reduce 方法。
 	table vlua.tableadd (table t1, table t2) 	以支持Squirrel 中的 += 。
 	table vlua.split(string input, string separator) 	实现文本的Squirrel split 方法。
 	variable vlua.select(bool conditional, variable valueIfTrue, variable valueIfFalse)	安全三元运算符。如果valueIfTrue为零，Lua版本将返回错误的值。
== 类 ==
=== 基本实体 ===
最基本的实体类。
==== 函数 ====
函数 	原型 	介绍
 	void AddEffects(int nFlags) 	添加呈现特效标志。
 	void ApplyAbsVelocityImpulse(Vector vecImpulse) 	应用速度脉冲。
 	void ApplyLocalAngularVelocityImpulse(Vector angImpulse) 	应用角速度脉冲。
 	float Attribute_GetFloatValue(string pName, float flDefault) 	获取实体属性的小数值。
 	float Attribute_GetIntValue(string pName, int nDefault) 	获取实体属性的整数值。
 	void Attribute_SetFloatValue(string pName, float flValue) 	设置实体属性的小数值。
 	void Attribute_SetIntValue(string pName, int nValue) 	设置实体属性的整数值。
 	void DeleteAttribute(string pName) 	删除实体属性。
 	void EmitSound(string soundName) 	
 	void EmitSoundParams(string soundName, int pitch, float volume, float soundTime)	播放/修改来自此实体的声音。如果音高(pitch)和/或音量(volume)或声音时间(soundTime)> 0，则更改声音。
 	QAngle EyeAngles() 	头戴显示器偏移角度。
 	Vector EyePosition() 	头戴摄像头绝对位置。
 	handle FirstMoveChild() 	如果在层次结构中，则获取第一个移动的子项。
 	void FollowEntity(handle hEntity, bool bBoneMerge) 	
 	void GatherCriteria(handle hResult) 	返回一个表，其中包含将用于对此实体的响应查询的条件。这与传递给响应规则脚本函数回调的表相同。
 	Vector GetAbsOrigin() 	返回实体的世界空间原点。
 	float GetAbsScale() 	获取实体绝对比例。
 	QAngle GetAngles() 	将实体俯仰、偏航、滚动值作为 QAngle 的成员返回。
 	Vector GetAnglesAsVector() 	将实体俯仰、偏航、滚动值作为 Vector 的成员返回。
 	Vector GetAngularVelocity() 	获取局部角速度 - 返回俯仰、偏航、滚动的向量。
 	Vector GetBaseVelocity() 	获取基本速度。仅在设置了“脚本化移动”(Scripted Movement)属性prop_dynamic实体上起作用。
 	Vector GetBoundingMaxs() 	获取包含最大边界的向量，以对象为中心。
 	Vector GetBoundingMins() 	获取包含最小边界的向量，以对象为中心。
 	table GetBounds() 	获取一个包含“Mins”和“Maxs”向量变量边界的表，以对象为中心
 	Vector GetCenter() 	以向量类型返回对象中心的绝对坐标。
 	table GetChildren() 	获取此实体的子实体
 	table GetContext(string name) 	查找上下文并返回它（如果可用）。可能返回文本、小数或空值（如果未找到上下文）
 	Vector GetForwardVector() 	获取实体的前向向量。
 	int GetHealth() 	未设置描述
 	QAngle GetLocalAngularVelocity() 	获取实体相对角速度。仅在设置了“脚本化移动”(Scripted Movement )属性prop_dynamic实体上起作用。
 	QAngle GetLocalAngles() 	获取实体相对于其父级或连接点的俯仰、偏航、滚动值，以QAngle类型返回。
 	Vector GetLocalOrigin() 	获取实体相对于其父级或连接点的原点，以Vector类型返回。
 	float GetLocalScale() 	获取实体相对于其父级的比例。
 	Vector GetLocalVelocity() 	获取实体相对速度。仅在设置了“脚本化移动”(Scripted Movement)属性prop_dynamic实体上起作用。
 	float GetMass() 	获取实体的质量。（如果没有物理对象，则返回 0）
 	int GetMaxHealth() 	未设置描述
 	string GetModelName() 	返回模型的名称。
 	handle GetMoveParent() 	如果在层次结构中，则检索实体的父级。
 	Vector GetOrigin() 	返回实体的原点，如果实体存在父级，则是相对于父空间的坐标（相对坐标）；反之为相对于世界空间（绝对坐标）。
 	handle GetOwner() 	获取此实体的所有者。
 	handle GetOwnerEntity() 	获取所有者实体（如果有）。
 	Vector GetRightVector() 	获取相对于实体向右的向量。
 	handle GetRootMoveParent() 	如果在层次结构中，则向上浏览层次结构以查找根父级。
 	float GetSoundDuration(string soundName, string actormodelname) 	返回声音的持续时间。必须指定声音名称，可选是否指定表演模型名称。
 	int GetSpawnGroupHandle() 	返回此实体的生成组句柄。
 	int GetTeam() 	未设置描述
 	int GetTeamNumber() 	获取此实体所在组的编号。
 	Vector GetUpVector() 	获取相对于实体向上的向量。
 	Vector GetVelocity() 	实体的绝对速度。仅在设置了脚本化移动(Scripted Movement)属性prop_dynamic实体上起作用。
 	bool HasAttribute(string pName) 	查看实体是否具有特定属性。
 	bool IsAlive() 	实体是否还活着。
 	bool IsNPC() 	这个实体是名角儿(CAI_BaseNPC)吗？
 	bool IsNull() 	返回实体是否无效。与为有效实体()相反。
 	bool IsPlayer() 	是玩家实体。
 	void Kill() 	删除实体 (UTIL_Remove())
 	handle NextMovePeer() 	返回同一移动层次结构中的下一个实体。
 	void OverrideFriction(float duration, float friction) 	获取临时覆盖的持续时间值
 	void PrecacheScriptSound(string soundname) 	预缓存声音以供以后播放。
 	void RemoveEffects(int nFlags) 	删除渲染效果标志。
 	void SetAbsAngles(float fPitch, float fYaw, float fRoll) 	设置实体在世界空间的俯仰、偏航、滚动值。
 	void SetAbsOrigin(Vector origin) 	设置实体在世界空间的原点。
 	void SetAbsScale(float scale) 	设置实体的绝对比例。
 	void SetAngles(float pitch, float yaw, float roll) 	存在父级，设置相对父级的角度；反之，设置绝对角度。
 	void SetAngularVelocity(float pitch, float yaw, float roll) 	设置局部角速度 - 采用小数俯仰、偏航、横滚速度。仅在设置了“脚本化移动”(Scripted Movement)属性prop_dynamic实体上起作用。
 	void SetConstraint(Vector vPos) 	设置约束的位置。
 	void SetContext(string pName, string pValue, float duration) 	在此实体的对话上下文中存储任何键/值对。值必须是文本。将持续一段时间（duration 设置为 0 表示“永远”）。
 	void SetContextNum(string pName, float fValue, float duration) 	在此实体的对话上下文中存储任何键/值对。值必须是数字。将持续一段时间（duration 设置为 0 表示“永远”）。
 	void SetContextThink(string pszContextName, handle hThinkFunc, float flInterval)	在此实体上设置思想函数。
 	void SetEntityName(string name) 	设置实体的targetname。
 	void SetForwardVector(Vector forwardVec) 	设置实体的正方向。
 	void SetFriction(float flFriction) 	设置玩家摩擦，忽略对象。
 	void SetGravity(float flGravity) 	设置玩家重力，忽略对象。
 	void SetHealth(int hp) 	设置实体血量。
 	void SetLocalAngles(float pitch, float yaw, float roll) 	相对于实体的父点或附着点的局部空间，设置实体俯仰、偏航、滚动。
 	void SetLocalOrigin(Vector origin) 	设置实体本地原点。相对于实体的父点或附着点的局部空间。
 	void SetLocalScale(float scale) 	设置实体相对于父级的比例。
 	void SetMass(float flMass) 	设置实体的质量。（如果没有物理对象，则不执行任何操作）
 	void SetMaxHealth(int maxHP) 	设置实体血上限。
 	void SetOrigin(Vector origin) 	设置实体绝对原点。
 	void SetOwner(handle owningEntity) 	设置此实体的所有者。
 	void SetParent(handle hParent, string pAttachmentname) 	设置此实体的父级。附件是可选的，传递空文本则不使用它。
 	void SetTeam(int team) 	设置实体组
 	void SetThink(function thinkFunction, string thinkName, float initialDelay) 	设置要定期调用的思想函数。
 	void SetVelocity(Vector vecVelocity) 	设置实体的世界空间速度。仅在设置了脚本化移动(Scripted Movement)属性prop_dynamic实体上起作用。
 	void StopSound(string soundName) 	停止从此实体播放指定声音。
 	void StopThink (string thinkName) 	停止指定思想函数。
 	int TakeDamage(damageinfo hInfo) 	对此实体施加伤害。使用 创建伤害信息() 创建一个伤害信息对象。
 	Vector TransformPointEntityToWorld(Vector vPoint) 	将输入向量从相对于实体，转换为绝对于世界。
 	Vector TransformPointWorldToEntity(Vector vPoint) 	将输入向量从绝对于世界，转换为相对于实体。
 	void Trigger() 	触发此实体的 OnTrigger 响应。
 	void ValidatePrivateScriptScope() 	验证私人脚本域，如果不存在，则创建它。
==== 挂接 ====
如果脚本中含有下面指定原型的函数，则在特定的程序运行时机会自动调用。
函数 	原型 	介绍
 	void Activate(int activateType) 	实体生成后在中调用。如果实体是在地图加载时生成的，则在所有实体生成后调用本函数。activateType 参数包含此处所述的枚举。
 	void OnBreak(CBaseEntity inflictor) 	在可破坏实体损坏时调用。
 	string OnEntText() 	在实体上启用时调用每个帧。返回要添加到ent_text输出的文本。
 	unknown OnTakeDamage(table damageTable) 	当实体受到伤害时调用。
提供的表需要以下成员：{屠刀(inflictor) = handle, 伤害方向(damage_direction )= Vector, 伤害位置(damage_position) = Vector, 伤害力度(damage_force) = Vector, 伤害值(damage) = int, 屠夫(attacker) = handle}
 	void Precache(CScriptPrecacheContext context)	在预缓存实体时调用。用于使用全局预缓存系列脚本函数 预缓存脚本所需的任何其他资源。
 	void Spawn(CScriptKeyValues spawnkeys) 	在中调用，在创建实体之后，但在初始化之前。传递可用于查询实体生成键值的脚本键值(CScriptKeyValues)句柄。
 	void UpdateOnRemove() 	在实体被杀死之前调用。
=== 实体实例 ===
:::::继承自 基本实体
所有实体都继承自此类。
函数 	原型 	介绍
 	void ConnectOutput(string output, string functionName) 	添加一个输入输出连接，该连接将在指定的输出触发时调用此实体上的命名函数。
 	void Destroy() 	删除本实体 (UTIL_Remove())
 	void DisconnectOutput(string output, string functionName) 	从本实体上的输入输出事件中删除连接的脚本函数。
 	void DisconnectRedirectedOutput(string output, string functionName, CBaseEntity entity) 	从输入的实体上的输入输出事件中删除连接的脚本函数。
 	int entindex() 	未设置描述。
 	void FireOutput(string outputName, handle activator, handle caller, table args, float delay)	触发实体输出。
 	string GetClassname() 	未设置描述。
 	string GetDebugName() 	如果未定义，则获取带帮助的实体名称（即类名/etc）
 	ehandle GetEntityHandle() 	获取EHANDLE类型的实体句柄。
 	int GetEntityIndex() 	未设置描述。
 	int GetIntAttr(string key) 	获取整数属性。
 	string GetName() 	未设置描述。
 	handle GetOrCreatePrivateScriptScope() 	检索并在必要时创建每个与实体关联的实例的私有脚本端数据。
 	handle GetOrCreatePublicScriptScope() 	检索并在必要时创建与实体关联的公有脚本端数据。
 	handle GetPrivateScriptScope() 	检索与实体关联的每个私有实例脚本端数据。
 	handle GetPublicScriptScope() 	检索与实体关联的公有脚本端数据。
 	void RedirectOutput(string output, string functionName, CBaseEntity entity) 	添加一个输入输出连接，该连接将在指定的输出触发时调用输入的实体上的指定函数。
 	void RemoveSelf() 	删除实体。 (UTIL_Remove())
 	void SetIntAttr(string key, int value) 	设置整数属性。
=== 模型实体 ===
:::::继承自 基本实体
具有模型的实体均继承自此。
函数 	原型 	介绍
 	unsigned GetMaterialGroupHash() 	获取此实体的材质组散列值。
 	<unknown> GetMaterialGroupMask() 	获取此实体的网格组掩码。
 	int GetRenderAlpha() 	获取此实体的特殊调和值。
 	Vector GetRenderColor() 	获取实体的渲染颜色。
 	void SetBodygroup(int iGroup, int iValue) 	按索引设置身体组。
 	void SetBodygroupByName(int iGroup, int iValue) 	按名称设置身体组。（这里的原型应该错了，既然是按名应该用文本参数吧。）
 	void SetLightGroup(string pLightGroup) 	设置实体的灯光组
 	void SetMaterialGroup(string pMaterialGroup) 	设置实体的材质组
 	void SetMaterialGroupHash(uint32 nHash) 	设置此实体的材质组散列值。
 	void SetMaterialGroupMask(uint64 nMeshGroupMask) 	设置此实体的材质组掩码。
 	void SetModel(string pModelName) 	改变此实体的模型。新的模型记得在预缓存里缓存。
 	void SetRenderAlpha(int nAlpha) 	设置此实体的特殊调和值。
 	void SetRenderColor(int red, int green, int blue)	设置此实体的渲染颜色。
 	void SetRenderMode(int nMode) 	设置本实体的渲染颜色。
 	void SetSingleMeshGroup(string pMeshGroupName) 	为此实体设置单个网格组。
 	void SetSize(Vector mins, Vector maxs) 	
 	void SetSkin(int iSkin) 	有些材质有多个皮肤。
=== 玩家实体 ===
玩家的实体类。
函数 	原型 	介绍
 	bool AreChaperoneBoundsVisible() 	返回玩家监控边界是否可见。
 	Vector GetAnalogActionPositionForHand(int nLiteralHandType, int nAnalogAction)	返回指定手（0左1右，记不清了反正这俩）的模拟信号值。关于信号值和返回类型，可以参阅 模拟输入信号 。
 	handle GetHMDAnchor() 	返回此玩家的头戴显示器定位点实体（如果存在）
 	CPropHMDAvatar GetHMDAvatar() 	返回此玩家的头戴显示器实体（如果存在）
 	Vector GetPlayArea(int nPoint) 	通过0-3索引游玩区域的四角，返回指定点的向量坐标。
 	int GetUserID() 	返回玩家的用户证件。
 	int GetVRControllerType() 	返回在 VR 中使用的控制器的类型。有关控制器类型，请参阅 控制器类型。
 	bool IsDigitalActionOnForHand(int nLiteralHandType, int nDigitalAction) 	如果控制器进行了指定的数字操作，则返回true。关于信号值和返回类型，可以参阅 数字输入信号 。
 	bool IsNoclipping() 	如果玩家穿模，返回true。
 	bool IsUsePressed() 	如果按下使用键，返回true。
 	bool IsVRControllerButtonPressed(int nButton) 	如果控制器的按钮按下，返回true。
 	bool IsVRDashboardShowing() 	如果显示此玩家的 SteamVR 面板，则返回 true。
=== 半2_玩家===
半条命的玩家子类。
函数 	原型 	介绍
 	bool PlayerCounter_CanModifyValue(string name, int delta) 	
 	int PlayerCounter_SetMax(string name, int max) 	
 	int PlayerCounter_ModifyValue(string name, int delta) 	
 	int PlayerCounter_SetMin(string name, int min) 	
 	int PlayerCounter_SetMinMax(string name, int min, int max)	
 	int PlayerCounter_SetValue(string name, int value) 	
 	int PlayerCounter_GetValue(string name) 	
=== 动画实体 ===
:::::继承自 基本实体
包含动画中涉及的方法的类。大多数基于模型的实体都继承了本类。
函数 	原型 	介绍
 	float ActiveSequenceDuration() 	返回活动序列的持续时间（以秒为单位）。
 	Vector GetAttachmentAngles(int iAttachment) 	获取指定附件的角度作为向量的成员的值。
 	Vector GetAttachmentForward(int iAttachment) 	获取指定附件的正向向量。
 	Vector GetAttachmentOrigin(int iAttachment) 	获取指定附件的原点。
 	float GetCycle() 	获取动画的周期。
 	table GetGraphParameter(string pszParam) 	获取给定的动画图形(animGraph)参数的值。
 	float GetModelScale() 	取实体模型的比例。
 	string GetSequence() 	返回活动序列的名称。
 	bool IsSequenceFinished() 	询问主序列是否播放完毕。
 	void RegisterAnimTagListener(handle hAnimTagListenerFunc) 	为文本 AnimTags 注册侦听器，替换现有的脚本侦听器（如果有）。
 	void ResetSequence(string pSequenceName) 	按名称设置活动序列，重置当前周期。
 	int ScriptLookupAttachment(string pAttachmentName) 	取指定名称的附件号。
 	float SequenceDuration(string pSequenceName) 	返回指定序列的持续时间（以秒为单位）。
 	void SetGraphLookTarget(Vector vValue) 	将世界空间中所需的皮标记传递给图形。
 	void SetGraphParameter(string pszParam, table svArg) 	设置具体的参数值，类型是从脚本中的类型推断出来的。
 	void SetGraphParameterBool(string szName, bool bValue) 	将逻辑值传递给指定的参数。
 	void SetGraphParameterEnum(string szName, int nValue) 	将枚举(整数)值传递给指定的参数。
 	void SetGraphParameterFloat(string szName, float flValue) 	将小数值传递给指定的参数。
 	void SetGraphParameterInt(string szName, int nValue) 	将整数值传递给指定的参数。
 	void SetGraphParameterVector(string szName, Vector vValue)	将向量值传递给图形中的指定参数。
 	void SetModelScale(float scale) 	将模型的比例设置为scale，因此，如果一个单位的模型比例为 1，并且使用过 设模型比例(10.0)，它会将比例设置为 10.0。
 	float SetPoseParameter(string szName, float fValue) 	将指定的姿势参数设置为指定的值。
 	void SetSequence(string pSequenceName) 	按名称设置活动序列，保持当前周期。
 	void StopAnimation() 	通过将播放速率设置为 0.0 来停止当前动画。
 	void UnregisterAnimTagListener(table hScript) 	注销当前文本 AnimTag 侦听器（如果有）。
=== 弹性实体 ===
:::::继承自 动画实体
具有顶点弯曲功能的动画实体。
函数 	原型 	介绍
 	int FindFlexController(string pszFlexControllerName) 	按名称查找弹性控制器，返回索引，如果未找到，则返回 -1
 	handle GetCurrentScene() 	返回最早的活动场景实体（如果有）的实例。
 	float GetFlexWeight(int nFlexControllerIndex) 	按索引获取指定的弹性控制器的权重，使用 查找弹性控制按名称获取弹性控制器的索引。
 	handle GetSceneByIndex(int index) 	返回指定索引处场景实体的实例。
 	float ScriptPlayScene(string pszSceneFile, float flDelay) 	播放指定的.vcd文件。
 	void SetFlexWeight(int nFlexControllerIndex, float flWeight)	设置由索引指定的弹性控制器的权重，使用 查找弹性控制按名称获取弹性控制器的索引。
=== 战斗角色 ===
未设置描述
函数 	原型 	介绍
 	table GetEquippedWeapons() 	返回所有装备武器的数组。
 	int GetFaction() 	获取战斗角色派系。
 	int GetWeaponCount() 	获取当前装备的武器数量。
 	Vector ShootPosition(int nHand)	返回射击位置眼睛（在灵境中是的手）。
=== 身体组件 ===
未设置描述
函数 	原型 	介绍
 	void AddImpulseAtPosition(Vector Vector_1, Vector Vector_2)	将绝对位置的脉冲应用于物理。
 	void AddVelocity(Vector Vector_1, Vector Vector_2) 	向物理对象添加线性、角速度
 	void DetachFromParent() 	与其父级分离。
 	<unknown> GetSequence() 	返回活动序列。
 	bool IsAttachedToParent() 	附加到父级。
 	<unknown> LookupSequence(string string_1) 	返回给定名称的序列证
 	float SequenceDuration(string string_1) 	返回指定序列的持续时间（以秒为单位）。
 	void SetAngularVelocity(Vector Vector_1) 	未设置描述
 	void SetAnimation(string string_1) 	输入要在此模型上播放的动画的文本
 	void SetBodyGroup(string string_1) 	未设置描述
 	void SetMaterialGroup(utlstringtoken utlstringtoken_1) 	未设置描述
 	void SetVelocity(Vector velocity) 	未设置描述
=== 实体类 ===
提供枚举所有服务器端实体的方法。
全局访问变量： Entities
函数 	原型 	介绍
 	handle CreateByClassname(string className) 	按类名创建实体。
 	table FindAllByClassname(string className) 	按类名查找所有实体。返回一个包含所有找到的实体的数组。
 	table FindAllByClassnameWithin(string className, Vector origin, float maxRadius) 	在半径内按类名查找实体。返回一个包含所有找到的实体的数组。
 	table FindAllByModel(string modelName) 	按模型名称查找所有实体。返回一个包含所有找到的实体的数组。
 	table FindAllByName(string name) 	按名称查找所有实体。返回一个数组，其中包含所有找到的实体。
 	table FindAllByNameWithin(string name, Vector origin, float maxRadius) 	按名称查找半径内的所有实体。返回一个包含所有找到的实体的数组。
 	table FindAllByTarget(string targetName) 	查找具有此目标集的所有实体。返回一个包含所有找到的实体的数组。
 	table FindAllInSphere(Vector origin, float maxRadius) 	查找半径内的所有实体。返回一个包含所有找到的实体的数组。
 	handle FindByClassname(handle startFrom, string className) 	按类名查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByClassnameNearest(string className, Vector origin, float maxRadius) 	查找离点最近的指定类名实体。
 	handle FindByClassnameWithin(handle startFrom, string className, Vector origin, float maxRadius)	在半径内按类名查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByModel(handle startFrom, string modelName) 	按模型名称查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByModelWithin(handle startFrom, string modelName, Vector origin, float maxRadius) 	在半径内的按模型名称查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByName(handle lastEnt, string searchString) 	按名称查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByNameNearest(string name, Vector origin, float maxRadius) 	查找离点最近的指定名实体。
 	handle FindByNameWithin(handle startFrom, string name, Vector origin, float maxRadius) 	在半径内按名称查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindByTarget(handle startFrom, string targetName) 	按目标名称查找实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle FindInSphere(handle startFrom, Vector origin, float maxRadius) 	查找半径内的实体。传递 nil 以开始迭代，或引用以前找到的实体以继续搜索。
 	handle First() 	开始对实体列表进行迭代。
 	handle GetLocalPlayer() 	获取本地玩家实体。
 	handle Next(handle startFrom) 	继续迭代实体列表，提供对以前找到的实体的引用。
=== 配角儿 ===
未设置描述
函数 	原型 	介绍
 	handle GetSquad() 	获取此角儿所属的小队。
 	void NpcForceGoPosition(Vector vPos, bool bRun, float flSuccessTolerance)	设定一个位置目标并开始移动。
 	void NpcNavClearGoal() 	删除角儿的当前目标。
 	Vector NpcNavGetGoalPosition() 	获取当前目标的位置。
 	bool NpcNavGoalActive() 	如果角儿有目标和路径，则返回 true。
=== 基本触发 ===
:::::继承自 基本实体
触发器的实体类。
函数 	原型 	介绍
 	void Disable() 	禁用触发器。
 	void Enable() 	启用触发器。
 	bool IsTouching(handle hEnt)	检查输入的实体是否触发触发器。
=== 环境时间 ===
未设置描述
函数 	原型 	介绍
 	float GetFloat(utilstringtoken unknown, float unknown) 	查找动态时间小数值。
 	Vector GetVector(utilstringtoken unknown, Vector unknown)	查找动态时间向量值。
=== 造环境实体者 ===
:::::继承自 基本实体
的实体类。
函数 	原型 	介绍
 	void SpawnEntity() 	在造者的位置创建实体。
 	void SpawnEntityAtEntityOrigin(handle hEntity) 	在指定实例实体的位置创建实体。
 	void SpawnEntityAtLocation(Vector vecAlternateOrigin, Vector vecAlternateAngles)	vecAlternateOrigin:指定生成实体的三轴坐标；vecAlternateAngles:指定生成实体的三轴角度。
 	void SpawnEntityAtNamedEntityOrigin(string pszName) 	在指定实体原点生成实体。
=== 实体脚本框架 ===
与实体框架C++端的接口
全局访问器变量： EntityFramework
在实体脚本框架上调用。
函数 	原型 	介绍
 	void CreateEntity(string className, handle instance) 	
 	bool DispatchActivate(handle entity) 	
 	bool DispatchInput(string inputName, table target,unknown args) 	
 	void DispatchPrecache(handle entity, CScriptPrecacheContext context) 	
 	void DispatchSpawn(handle entity, CScriptKeyValuesspawnkeys) 	
 	bool DispatchUpdateOnRemove(handle entity) 	
 	string GetClassNameOverride(string className) 	
 	string GetDesignerNameForScriptClass(string className,handle instance)	
 	table GetInputsForScriptClass(string scriptClassName) 	
 	string GetNativeClassForScriptClass(string scriptClassName) 	
 	CNativeOutputs GetNativeOutputsForClass(string scriptClassName) 	
 	string GetScriptClassForDesignerName(string designerName) 	
 	void InstallClasses() 	
=== 世界层信息 ===
的实体类。
函数 	原型 	介绍
 	void HideWorldLayer()	隐藏此图层。
 	void ShowWorldLayer()	显示此图层。
=== 逻辑中继 ===
的实体类。
函数 	原型 	介绍
 	void Trigger(handle hActivator, handle hCaller)	应该是让hActivator触发hCaller。
=== 标记卷 ===
未设置描述
函数 	原型 	介绍
 	bool HasTag(string pszTagName)	此卷是否具有给定的标记。
=== 脚本预缓存上下文 ===
用于保存写在脚本中预缓存函数的上下文的容器。
函数 	原型 	介绍
 	void AddResource(string string_1)	预缓存特定资源
 	variable GetValue(string key) 	读取生成密钥。
=== 脚本键值 ===
Container holding keyvalues published to the Spawn() hook function.
保存写到生成()挂接函数的键值的容器。
函数 	原型 	介绍
 	variable GetValue(string key)	读取生成密钥。
=== 输出本地 ===
用于将脚本化实体类发布的输出保存到游戏代码的容器。
函数 	原型 	介绍
 	void CNativeOutputs() 	创建新的 输出本地 对象。
 	void AddOutput(string outputName, string description)	添加一个输出。
 	void Init(int numOutputs) 	使用指定数量的输出进行初始化。
=== 环境投影纹理 ===
:::::继承自 基本实体
的实体类。
函数 	原型 	介绍
 	void SetFarRange(float flRange) 	设置灯光最大范围。
 	void SetLinearAttenuation(float flAtten) 	设置灯光线性衰减值。
 	void SetNearRange(float flRange) 	设置灯光最小范围。
 	void SetQuadraticAttenuation(float flAtten) 	设置灯光二次衰减值。
 	void SetVolumetrics(bool bOn, float flIntensity, float flNoise, int nPlanes, float flPlaneOffset)	打开或关闭体积光: bool 开启, float 强度, float 噪声, int 平面, float 平面偏移。
=== 信息数据 ===
未设置描述
函数 	原型 	介绍
 	Vector QueryColor(utlstringtoken tok, Vector vDefault) 	查询此键的颜色数据。
 	float QueryFloat(utlstringtoken tok, float flDefault) 	查询此键的小数数据。
 	int QueryInt(utlstringtoken tok, int nDefault) 	查询此键的整数数据。
 	float QueryNumber(utlstringtoken tok, float flDefault) 	查询此键的枚举数据。
 	string QueryString(utlstringtoken tok, string pDefault)	查询此键的文本数据。
 	Vector QueryVector(utlstringtoken tok, Vector vDefault)	查询此键的向量数据。
=== 物理项 ===
和相关类的实体类。
函数 	原型 	介绍
 	void SetDynamicVsDynamicContinuous(bool bIsDynamicVsDynamicContinuousEnabled)	启用/禁用动态与动态连续冲突跟踪。
 	void DisableMotion() 	为本项禁用运动。
 	void EnableMotion() 	为本项启用运动。
=== 辅助调试覆盖脚本 ===
未设置描述
全局访问变量： debugoverlay
函数 	原型 	介绍
 	void Axis(Vector Vector_1, Quaternion Quaternion_2, float float_3, bool bool_4, float float_5) 	绘制一个轴。在世界空间中指定原点 + 方向。
 	void Box(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	绘制一个世界空间轴对齐的立方体。指定世界空间中的边界。
（我猜参数12一个是最小点的坐标、一个是最大的；3456分别是红色、绿色、蓝色、特殊值（一般用作透明度）；7固定为false；8表示持续时间。）
 	void BoxAngles(Vector Vector_1, Vector Vector_2, Vector Vector_3, Quaternion Quaternion_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	在原点绘制定向立方体。指定局部空间中的边界。（比上新增了34，一个应该是用Vector表示角度，一个使用四元数（Quaternion ）表示角度）
 	void Capsule(Vector Vector_1, Quaternion Quaternion_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	绘制胶囊。（1是中心坐标；2是角度；34不知道（或许是弧度）；后续同上）
 	void Circle(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) 	画一个圆。（3也许表示半径；其余同上）
 	void CircleScreenOriented(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	绘制一个面向屏幕的圆。
 	void Cone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	绘制线框圆锥。（12位置角度；34圆半径圆锥高度；其余同上）
 	void Cross(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	绘制与屏幕相对的十字。（准星啊）
 	void Cross3D(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	绘制与世界相对的十字。
 	void Cross3DOriented(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) 	绘制带有方向的十字。
 	void DrawTickMarkedLine(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	绘制一条虚线。
 	void EntityAttachments(ehandle ehandle_1, float float_2, float float_3) 	绘制实体的附件。
 	void EntityAxis(ehandle ehandle_1, float float_2, bool bool_3, float float_4) 	绘制实体原点的轴。
 	void EntityBounds(ehandle ehandle_1, int int_2, int int_3, int int_4, int int_5, bool bool_6, float float_7) 	绘制实体的边界。
 	void EntitySkeleton(ehandle ehandle_1, float float_2) 	绘制实体的骨骼。
 	void EntityText(ehandle ehandle_1, int int_2, string string_3, int int_4, int int_5, int int_6, int int_7, float float_8) 	在实体上绘制文本。
 	void FilledRect2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7) 	在屏幕空间上直接绘制一个实心的矩形。坐标以像素为单位。
 	void HorzArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) 	绘制水平箭头。
 	void Line(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	在两点间绘制一条线段。
 	void Line2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7) 	在屏幕空间中的两点间绘制一条线段。
 	void PopDebugOverlayScope() 	弹出用于对覆盖进行分组的标识符。用该标识符标记的套印格式可以大批量删除。
 	void PushAndClearDebugOverlayScope(utlstringtoken utlstringtoken_1) 	推送用于对覆盖进行分组的标识符。删除使用此覆盖证的所有现有覆盖。
 	void PushDebugOverlayScope(utlstringtoken utlstringtoken_1) 	推送用于对覆盖进行分组的标识符。用该标识符标记的套印格式可以大批量删除。
 	void RemoveAllInScope(utlstringtoken utlstringtoken_1) 	删除所有使用特定标识符标记的覆盖，而不管其使用寿命如何。
 	void SolidCone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	绘制一个实心的圆锥。在世界空间中指定端点和方向。
 	void Sphere(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) 	绘制一个线框球。
 	void SweptBox(Vector Vector_1, Vector Vector_2, Vector Vector_3, Vector Vector_4, Quaternion Quaternion_5, int int_6, int int_7, int int_8, int int_9, float float_10) 	绘制扫掠框。指定世界空间中的端点和局部空间中的边界。
 	void Text(Vector Vector_1, int int_2, string string_3, float float_4, int int_5, int int_6, int int_7, int int_8, float float_9) 	绘制2d文本。
 	void Texture(string string_1, Vector2D Vector2D_2, Vector2D Vector2D_3, int int_4, int int_5, int int_6, int int_7, Vector2D Vector2D_8, Vector2D Vector2D_9, float float_10)	绘制一个屏幕空间纹理。以像素为单位。
 	void Triangle(Vector point1, Vector point2, Vector point3, int red, int green, int blue, int alpha, bool disableDepthCheck, float seconds) 	在世界空间中绘制一个填充的三角形，持续特定的秒数（-1表示永远存在）。
 	void UnitTestCycleOverlayRenderType() 	切换叠加渲染类型，用于单元测试。
 	void VectorText3D(Vector Vector_1, Quaternion Quaternion_2, string string_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) 	绘制三维文本。指定世界空间中的原点+方向。
 	void VertArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) 	绘制垂直箭头。指定世界空间中的端点。
 	void YawArrow(Vector Vector_1, float float_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) 	绘制与特定偏航相关联的箭头。指定世界空间中的端点。
=== 场景实体 ===
:::::继承自 基本实体
精心编排的场景，用于控制一个或多个演员的动画和/或对话。
函数 	原型 	介绍
 	void AddBroadcastTeamTarget(int int_1) 	将团队（按索引）添加到广播列表。
 	void Cancel() 	取消场景回放。
 	float EstimateLength() 	返回此场景的长度（以秒为单位）。
 	handle FindCamera() 	取得相机对象。
 	handle FindNamedEntity(string string_1) 	给定实体引用（如 !target），从场景对象获取实际实体。
 	bool IsPaused() 	此场景当前是否已暂停。
 	bool IsPlayingBack() 	此场景当前是否正在播放。
 	bool LoadSceneFromString(string string_1, string string_2)	根据给定虚拟场景名称和 VCD 文本，加载场景。
 	void RemoveBroadcastTeamTarget(int int_1) 	从广播列表中移除团队（按索引）。
 	void Start(handle handle_1) 	开始场景播放，以激活器实体（activatorEntity ）作为参数。
=== 自订游戏事件管理 ===
未设置描述
全局访问变量: CustomGameEventManager
函数 	原型 	介绍
 	int RegisterListener(string string_1, handle handle_2) 	（string 事件名， func 用于回调的函数） - 注册在特定自定义事件到达时要调用的回调。返回值为可用于稍后注销的监听证。
 	void Send_ServerToAllClients(string string_1, handle handle_2) 	( string 事件名, table 事件数据)
 	void Send_ServerToPlayer(handle handle_1, string string_2, handle handle_3)	( Entity 玩家, string 事件名, table 事件数据)
 	void Send_ServerToTeam(int int_1, string string_2, handle handle_3) 	( int 组号, string 事件名, table 事件数据)
 	void UnregisterListener(int int_1) 	( int 监听证) - 注销特定监听。
=== 粒子系统 ===
=== 世界全景面板 ===
的实体类。
投影在世界中设定位置的 2D 面板。
函数 	原型 	介绍
 	void AcceptUserInput() 	告知面板接受用户输入。
 	void AddCSSClasses(string classes) 	将 CSS 类添加到面板。
 	void IgnoreUserInput() 	告知面板忽略用户输入。
 	void IsGrabbable() 	返回此实体是否可抓取。
 	void RemoveCSSClasses(string classes)	从面板中删除 CSS 类。
=== 点模板 ===
的实体类
函数 	原型 	介绍
 	void DeleteCreatedSpawnGroups() 	删除此point_template生成的任何生成组。注：point_template不会因此而被删除。
 	void ForceSpawn() 	生成point_template指向的所有实体。
 	handle GetSpawnedEntities() 	获取最近生成的实体的列表。
 	void SetSpawnCallback(handle hCallbackFunc, handle hCallbackScope)	设置模板生成实体时的回调。生成的实体将作为数组传入。
=== 点世界文本 ===
的实体类。
函数 	原型 	介绍
 	void SetMessage(string pMessage)	在此实体上设置消息。
=== 头显化身 ===
的实体类。
函数 	原型 	介绍
 	CPropVRHand GetVRHand(int nHandID)	根据索引（0或1）获取指定的手。
=== 灵境手部 ===
的实体类。 表示灵境运动控制器（vr手柄）。可以使用头显化身::取手()方法为每个玩家枚举控制器。
函数 	原型 	介绍
 	void AddHandAttachment(handle attachment) 	将附件添加到此手上。
 	void AddHandModelOverride(string modelName) 	为此手添加模型覆盖。
 	handle FindHandModelOverride(string pModelName) 	查找此手的特定模型覆盖。
 	void FireHapticPulse(int strength) 	在这只手上发射触觉脉冲。整数强度的范围 [0， 1， 2]。
 	void FireHapticPulsePrecise(int nPulseDuration) 	在这只手上发射触觉脉冲。以微秒为单位指定持续时间。
 	handle GetHandAttachment() 	得到这只手上的附件。
 	int GetHandID() 	获取此手牌的玩家手证。
 	int GetLiteralHandType() 	获取此手的文字类型。
 	CBasePlayer GetPlayer() 	获取此手的玩家。
 	Vector GetVelocity() 	获取过滤后的控制器速度。
 	void RemoveAllHandModelOverrides() 	删除此手的所有模型覆盖。
 	void RemoveHandAttachmentByHandle(handle hAttachment)	通过句柄卸下手部附件。
 	void RemoveHandModelOverride(string pModelName) 	删除此手的模型覆盖。
 	void SetHandAttachment(handle hAttachment) 	设置这只手的附件。
=== 脚本粒子管理 ===
允许创建和操作粒子系统。
全局访问变量： ParticleManager
函数 	原型 	介绍
 	int CreateParticle(string particleName, int particleAttach, handle owningEntity) 	创建新的粒子效果。返回所创建效果的索引。
 	int CreateParticleForPlayer(string particleName, int particleAttach, handle owningEntity, handle owningPlayer) 	创建仅对指定玩家播放的新粒子效果。返回所创建效果的索引。
 	void DestroyParticle(int particleID, bool immediately) 	破坏粒子。
 	string GetParticleReplacement(string string_1, handle handle_2) 	未设置描述。
 	void ReleaseParticleIndex(int particleId) 	释放指定的粒子索引。
 	void SetParticleAlwaysSimulate(int int_1) 	未设置描述。
 	void SetParticleControl(int particleId, int controlIndex, Vector controlData) 	为粒子效果上的控件设置控制点数据
 	void SetParticleControlEnt(int particleId, int controlIndex, handle entity, ParticleAttachment_t attachType, string attachment, Vector origin, bool unknown)	Attaches the control point to an entity.
 	void SetParticleControlForward(int FXIndex, int controlIndex, Vector forward) 	在粒子效果上设置控制点的前进方向。
 	void SetParticleControlOffset(int iIndex, int iPoint, Vector vecOffset) 	设置粒子效果上控件的线性偏移。
 	void SetParticleControlOrientation(int FXIndex, int controlIndex, Vector forward, Vector right, Vector up) 	在粒子效果上设置控制点的方向。
 	void SetParticleControlOrientationFLU(int FXIndex, int controlIndex, Vector forward, Vector left, Vector up) 	在粒子效果上设置控制点的方向。
=== Steam信息 ===
函数 	原型 	介绍
 	bool IsPublicUniverse()	脚本是否连接到公共 Steam 宇宙。
=== 承受伤害信息 ===
创建承受伤害信息()返回的伤害信息句柄
函数 	原型 	介绍
 	void AddDamage(float addAmount) 	增加伤害值。
 	void AddDamageType(int bitsDamageType) 	添加损坏类型位标志。
 	bool AllowFriendlyFire() 	
 	bool BaseDamageIsValid() 	
 	bool CanBeBlocked() 	
 	int GetAmmoType() 	
 	CBaseEntity GetAttacker() 	Returns the attacker entity.
 	float GetBaseDamage() 	
 	float GetDamage() 	Returns the damage value.
 	int GetDamageCustom() 	
 	Vector GetDamageForce() 	Returns the damage force.
 	int GetDamagePosition() 	Returns the damage position.
 	float GetDamageTaken() 	
 	int GetDamageType() 	Returns the damage type bitfield.
 	CBaseEntity GetInflictor() 	Returns the inflictor entity (usually the weapon).
 	float GetMaxDamage() 	
 	float GetOriginalDamage() 	
 	float GetRadius() 	
 	Vector GetReportedPosition() 	
 	float GetStabilityDamage() 	
 	bool HasDamageType(int bitsToTest) 	
 	void ScaleDamage(float scaleAmount) 	
 	void SetAllowFriendlyFire(bool allow) 	
 	void SetAmmoType(intammoType) 	
 	void SetAttacker(CBaseEntity attacker) 	
 	void SetCanBeBlocked(bool block) 	
 	void SetDamage(float damage) 	Set new damage value.
 	void SetDamageCustom(int damageCustom) 	
 	void SetDamageForce(Vector damageForce) 	Sets the damage force vector.
 	void SetDamagePosition(Vector damagePosition) 	Sets the global space damage position.
 	void SetDamageTaken(int damageTaken) 	
 	void SetDamageType(int bitsDamageType) 	Set the damage type bitfield.
 	void SetMaxDamage(float maxDamage) 	
 	void SetOriginalDamage(float originalDamage) 	
 	void SetRadius(float radius) 	
 	void SetReportedPosition(Vector reportedPosition)	
 	void SetStabilityDamage(float stabilityDamage) 	
=== 控制台变量 ===
允许访问读取和修改控制台变量。
全局访问变量： Convars
函数 	原型 	介绍
 	table GetBool(string variableName) 	将控制台变量转为逻辑类型返回。
 	handle GetCommandClient() 	返回发出此控制台命令的玩家。
 	table GetFloat(string name) 	将控制台变量转为小数类型返回。如果没有这样的变量，可能会返回 nil。
 	table GetInt(string string_1) 	将控制台变量转为整数类型返回。如果没有这样的变量，可能会返回 nil。
 	table GetStr(string variableName) 	将控制台变量转为文本类型返回。如果没有这样的变量，可能会返回 nil。
 	void RegisterCommand(string variableName, handle function, string helpText, int flags)	在控制台注册一个命令。
 	void RegisterConvar(string name, string defaultValue, string helpText, int flags) 	在控制台注册一个变量。
 	void SetBool(string variableName, bool value) 	将控制台变量设为逻辑值。
 	void SetFloat(string variableName, float value) 	将控制台变量设为小数值。
 	void SetInt(string string_1, int int_2) 	将控制台变量设为整数值。
 	void SetStr(string string_1, string string_2) 	将控制台变量设为文本值。
=== 决策 ===
未设置描述
函数 	原型 	介绍
 	bool AddRule(CRule rule) 	添加 CRule 对象（在 rulescript_base.nut 中定义）
 	handle FindAllMatches(handle query, float leeway)	Returns an array of all matching responses. If leeway is nonzero, all results scoring within 'leeway' of the best score return. 
返回所有匹配响应的数组。如果leeway不为零，则所有结果最接近“leeway”的都会返回。
 	handle FindBestMatch(handle query) 	查询数据库并返回找到的最佳结果。如果找到相同结果的query，则返回任意一个。
=== 全局系统 ===
用于读取启动游戏时使用的命令行参数。
全局访问变量： GlobalSys
函数 	原型 	介绍
 	bool CommandLineCheck(string name) 	如果使用命令行参数，则返回 true，否则返回 false。
 	float CommandLineFloat(string name)	将命令行参数作为小数返回。
 	int CommandLineInt(string name) 	将命令行参数作为整数返回。
 	string CommandLineStr(string name) 	将命令行参数作为文本返回。
=== 64位无符号整数 ===
具有二进制运算的整数。用于运动控制器按钮掩码。
函数 	原型 	介绍
 	int BitwiseAnd(Uint64 operand)	在整数间执行与。00=0；01=0；10=0；11=1
 	int BitwiseOr(Uint64 operand) 	在整数间执行或。00=0；01=1；10=1；11=1
 	int BitwiseXor(Uint64 operand)	在整数间执行异或。00=0；01=1；10=1；11=0；
 	int BitwiseNot(Uint64 operand)	不懂v社要怎么在两个整数间取反。可能是我理解错了。
 	int ClearBit(int bitvalue) 	把指定位变为零。
 	bool IsBitSet(int bitvalue) 	检查是否设置了位。
 	int SetBit(int bitvalue) 	设置指定的位。
 	int ToggleBit(int bitvalue) 	0=1；1=0
 	string ToHexString() 	返回整数的十六进制文本。
=== 角度类 ===
关于角度的类。
==== 函数 ====
函数 	原型 	介绍
 	QAngle(float pitch, float yaw, float roll)	创建一个新的角度类
 	QAngle __add(QAngle a, QAngle b) 	就是‘+’号。将两个角度类相加。
 	bool __eq(QAngle a, QAngle b) 	‘==’号，判断两个角度类是否相等。
 	string __tostring() 	‘..’号，将角度类的数据转换为可读文本。
 	Vector Forward() 	返回正向量。
 	Vector Left() 	返回左向量。
 	Vector Up() 	返回上向量。
==== 成员 ====
变量 	介绍
x 	俯仰度。
y 	偏航度。
z 	翻滚度。
=== 四元数类 ===
关于四元数的类。
全局访问变量： 没有
=== 向量 ===
关于三维向量的类
==== 函数 ====
函数 	原型 	介绍
 	Vector(float x, float y, float z) 	使用指定的直角系坐标创建新向量。
 	Vector __add(Vector a, Vector b) 	‘+’号，将两个向量相加。
 	Vector __div(Vector a, Vector b) 	‘/’号，将两个向量相除。
 	bool __eq(Vector a, Vector b) 	‘==’号，判断两个向量是否相等。
 	float __len() 	‘#’号，返回向量的长度。
 	Vector __mul(Vector a, Vector b) 	‘*’号，将两个向量相乘，也可与标量相乘。
 	Vector __sub(Vector a, Vector b) 	‘-’号，将两个变量相减。
 	string __tostring() 	‘..’号，将向量转为文本。
 	Vector __unm() 	‘-’号，进行向量取反。
 	Vector Cross(Vector a, Vector b) 	返回两向量的叉积。
 	float Dot(Vector a, Vector b) 	返回两向量的点积。
 	float Length() 	返回向量的长度。
 	float Length2D() 	返回向量在2Dxy平面中的长度。
 	Vector Lerp(Vector target, float t)	向量和target 之间的线性插值在 t = [0,1] 上。
 	Vector Normalized() 	返回规范化的向量。
==== 成员 ====
变量 	介绍
x 	X轴
y 	Y轴
z 	Z轴
== 枚举 ==
=== 模拟输入信号 ===
用于 :取手模拟动作位置()。这些映射到SteamVR绑定菜单中的操作。
名字 	值 	类型 	行为 	介绍
 	0 	手 	手弯曲 	X轴
 	1 	手 	扳机扣动 	X轴
 	2 	互动 	挤压Xen手榴弹 	X轴
 	3 	移动 	瞬间转动 	需要
X, Y轴
 	4 	移动 	持续转动 	X, Y轴
=== 控制器类型 ===
玩家实体:取控制类型()返回的玩家控制器类型。
名称 	值 	介绍
(VR_CONTROLLER_TYPE_UNKNOWN) 		0	未知
(VR_CONTROLLER_TYPE_X360) 		1	x360
(VR_CONTROLLER_TYPE_VIVE) 		2	vive
(VR_CONTROLLER_TYPE_TOUCH) 		3	Oculus Touch
(VR_CONTROLLER_TYPE_RIFT_S) 		4	oculus rifts
 		5	
(VR_CONTROLLER_TYPE_KNUCKLES) 		6	v社的指虎手柄
(VR_CONTROLLER_TYPE_WINDOWSMR) 		7	Windows MR
(VR_CONTROLLER_TYPE_WINDOWSMR_SAMSUNG)		8	Windows MR
(VR_CONTROLLER_TYPE_GENERIC_TRACKED) 		9	通用
(VR_CONTROLLER_TYPE_COSMOS) 		10	Vive Cosmos
=== 数字输入信号 ===
玩家实体:手是否作了行为需要的参数。这些映射到 SteamVR 绑定菜单中的操作。
值 	类型 	行为 	介绍 	
 	0 	菜单 	切换菜单 	必填
 	1 	菜单 	交互菜单 	必填
 	2 	菜单 	关闭菜单 	必填
 	3 	互动 	使用 	必填
 	4 	互动 	使用握把 	
 	5 	武器 	显示背包 	必填
 	6 	互动 	重力手套锁 	必填
 	7 	武器 	开火 	必填
 	8 	武器 	爆炸开火 	
 	9 	武器 	装弹 	必填
 	10 	武器 	弹出弹匣 	必填
 	11 	武器 	套筒释放 	必填
 	12 	武器 	开膛 	必填
 	13 	武器 	切换激光瞄准器 	
 	14 	武器 	切换开火模式 	必填
 	15 	互动 	切换回血针 	必填
 	16 	互动 	装备手雷 	必填
 	17 	互动 	装备xen手雷 	必填
 	18 	移动 	传送 	必填
 	19 	移动 	左转 	
 	20 	移动 	右转 	
 	21 	移动 	后退 	
 	22 	移动 	走 	
 	23 	移动 	跳 	
 	24 	移动 	Mantle 	
 	25 	移动 	切换下蹲 	
 	26 	移动 	切换站立 	
 	27 	移动 	调整高度 	
=== 激活类型 ===
Passed to the Activate() hook function.
激活()挂接函数所需的参数。
名称 	值 	介绍
ACTIVATE_TYPE_INITIAL_CREATION 	0 	在创建实体后调用函数。
ACTIVATE_TYPE_DATAUPDATE_CREATION	1 	
ACTIVATE_TYPE_ONRESTORE 	2 	从保存的游戏还原实体后调用函数。
=== 伤害类型 ===
名称 	值 	介绍
DMG_GENERIC 	0 
0b00	通用
DMG_CRUSH 	1 
0b01	碾压
DMG_BULLET 	2 
0b010	子弹
DMG_SLASH 	4 
0b0100	挥砍
DMG_BURN 	8 
0b0100 0	燃烧
DMG_VEHICLE 	16 
0b0100 00	载具
DMG_FALL 	32 
0b0100 000	跌落
DMG_BLAST 	64 
0b0100 0000	爆炸
DMG_CLUB 	128 
0b0100 0000 0	棍击
DMG_SHOCK 	256 
0b0100 0000 00	冲击
DMG_SONIC 	512 
0b0100 0000 000	声波
DMG_ENERGYBEAM 	1024
0b0100 0000 0000	能源
DMG_PREVENT_PHYSICS_FORCE	2048 
0b0100 0000 0000 0	防止物理力
DMG_NEVERGIB 	4096 
0b0100 0000 0000 00	
DMG_ALWAYSGIB 	8192 
0b0100 0000 0000 000	
DMG_DROWN 	16384 
0b0100 0000 0000 0000	淹没
DMG_PARALYZE 	32768 
0b0100 0000 0000 0000 0	麻痹
DMG_NERVEGAS 	65536 
0b0100 0000 0000 0000 00	神经性
DMG_POISON 	131072 
0b0100 0000 0000 0000 000	毒药
DMG_RADIATION 	262144 
0b0100 0000 0000 0000 0000	辐射
DMG_DROWNRECOVER 	524288 
0b0100 0000 0000 0000 0000 0	溺水
DMG_ACID 	1048576 
0b0100 0000 0000 0000 0000 00	酸
DMG_SLOWBURN 	2097152 
0b0100 0000 0000 0000 0000 000	缓慢燃烧
DMG_REMOVENORAGDOLL 	4194304 
0b0100 0000 0000 0000 0000 0000	不移除布娃娃
DMG_PHYSGUN 	8388608 
0b0100 0000 0000 0000 0000 0000 0	物理枪
DMG_PLASMA 	16777216 
0b0100 0000 0000 0000 0000 0000 00	等离子体
DMG_AIRBOAT 	33554432 
0b0100 0000 0000 0000 0000 0000 000	汽船
DMG_DISSOLVE 	67108864 
0b0100 0000 0000 0000 0000 0000 0000	溶解
DMG_BLAST_SURFACE 	134217728 
0b0100 0000 0000 0000 0000 0000 0000 0	爆破面
DMG_DIRECT 	268435456 
0b0100 0000 0000 0000 0000 0000 0000 00	直接
DMG_BUCKSHOT 	536870912 
0b0100 0000 0000 0000 0000 0000 0000 000	霰弹枪、长臂猎头蟹伤害。
=== 粒子附着===
名称 	值 	介绍
PATTACH_INVALID 	-1	无效
PATTACH_ABSORIGIN 	0 	在实体原点生成。
PATTACH_ABSORIGIN_FOLLOW 	1 	跟随实体原点。
PATTACH_CUSTOMORIGIN 	2 	自定义原点
PATTACH_CUSTOMORIGIN_FOLLOW 	3 	跟随自定义原点
PATTACH_POINT 	4 	在实体附着点生成。
PATTACH_POINT_FOLLOW 	5 	跟随实体附着点。
PATTACH_EYES_FOLLOW 	6 	跟随眼
PATTACH_OVERHEAD_FOLLOW 	7 	跟随头部
PATTACH_WORLDORIGIN 	8 	在地图中心生成。
PATTACH_ROOTBONE_FOLLOW 	9 	跟随骨骼根。
PATTACH_RENDERORIGIN_FOLLOW 	10	跟随渲染原点。
(PATTACH_MAIN_VIEW) 	11	主视图。环境中缺少枚举。
(PATTACH_WATERWAKE) 	12	水流尾。环境中缺少枚举。
(PATTACH_CENTER_FOLLOW) 	13	跟随中心。环境中缺少枚举。
(PATTACH_CUSTOM_GAME_STATE_1)	14	自订游戏状态1。环境中缺少枚举。
MAX_PATTACH_TYPES 	15	最大粒子类型
== 参见 ==
*
*
*
== 外部链接 ==
*Unofficial API by JJI77