env_entity_maker
< Zh
env_entity_maker
是一个点实体 ,可在所有的 起源 游戏中使用。 它可以在env_entity_maker
坐标 上,生成一个指定的point_template
实体。 允许自动生成或者通过输入生成。
Contents
标志(Flags)
- 1: Enable AutoSpawn - 当有足够的空间且玩家没看见时,产生模板(Template)。
- 2: AutoSpawn: 等待实体被销毁。
- 4: AutoSpawn: 哪怕玩家看得见,也会生成。
- 8:
ForceSpawn
: 只有在足够的空间时,生成。 - 16:
ForceSpawn
: 只有玩家没看见时,生成。
键值
- Point_template To Spawn
(EntityTemplate)
<targetname > - 在此处生成
point_template
的名字 - PostSpawn Movement Speed
(PostSpawnSpeed)
<float > - 所有实体生成后,每秒会往PostSpawn Movement Direction的方向上运动多少hammer units 。
- PostSpawn Movement Direction
(PostSpawnDirection)
<angle > - 所有从模板中生成的实体都会往这个方向上移动。
- PostSpawn Direction Variance
(PostSpawnDirectionVariance)
<float > - The PostSpawn Movement Direction may vary by this many degrees. 这是半径。
- PostSpawn Inherit Angles
(PostSpawnInheritAngles)
<boolean > - 如果是Yes,,则按parent(父实体)的角度给予角度的偏移。
Base:
- Name
(targetname)
<string > - 其他实体用来指代该实体的名称。
- Parent
(parentname)
<targetname > - 实体的父级实体,该实体可以与父实体保持移动偏移。名称后面可以添加一个附属点,以逗号隔开。 (
parentname [targetname],[attachment]
)提示:转换至下一张地图的实体关系会依然存在。提示:一些不适合做父实体的实体可能难以运行,利用phys_constraint
可以解决。 - Origin (X Y Z)
(origin)
<coordinates > - 实体处于世界中的位置,旋转实体会以实体坐标原点旋转。注意:Hammer 不会仅在编辑器中相应地移动实体。
- Pitch Yaw Roll (Y Z X)
(angles)
<angle > - 实体在世界中的方位,Pitch围绕X轴旋转,可以称为俯仰角。Yaw围绕Z轴旋转,可以称为偏航角,roll围绕Y轴旋转。注意:尽管 Hammer 不显示新角度,但其仍然适用于固实体。
- Classname
(classname)
<string > 不存在于FGD! - 确定实体之前它生成的特征。提示:使用
AddOutput
输入更改 Classname 仍然会影响游戏的代码,例如使类名与 S_PreserveEnts 列表中的一个元素匹配将使实体在新一轮中持续存在! - Spawnflags
(spawnflags)
<flags > 不存在于FGD! - 实体所具有的标志/标签,依实体所具有而定。
- Effects
(effects)
<flags > 不存在于FGD! - 要使用的效果标志的组合。
- Entity Scripts
(vscripts)
<scriptlist > (存在于自 以来) (也存在于 之中) - 在所有实体生成后执行的 VScript 文件(无文件扩展名)的空格分隔列表。这些脚本都在同一个脚本范围内执行,以后的脚本会覆盖任何相同的变量和函数。在 worldspawn 实体上执行的脚本将放置在根作用域中。
- Think function
(thinkfunction)
<string > (存在于自 以来) (也存在于 之中) - 此实体脚本中的函数名称,该函数将在脚本持续时间内每 100 毫秒(每秒 10 次)自动调用一次。它可用于创建计时器或模拟自主行为。返回值(如果存在)将设置下一次调用之前的时间。尽量避免在此函数中进行昂贵的操作,因为它可能会导致性能问题。
- Lag Compensation
(LagCompensate)
<boolean > (存在于自 以来) 不存在于FGD! - 设置为是以延迟补偿此实体。应该非常谨慎地使用!
- Is Automatic-Aim Target
(is_autoaim_target)
<boolean > (存在于自 以来) 不存在于FGD! - 如果设置为 1,当实体位于十字准线下方时,该实体将减慢控制台和操纵杆控制器的瞄准移动速度。
输入
ForceSpawn
- 从模板中生成实例,位置是本实体坐标和方向。
ForceSpawnAtEntityOrigin
<实体目标名/target_destination >- 在指定实体上从模板中生成实例。
CBaseEntity:
// 更改键值的格式: "AddOutput [键] [值]"
//// 原始文本:
"OnUser1" "!self,AddOutput,targetname new_name"
// 添加输出的格式: "AddOutput {目标名称}:{输入名称}:{参数}:{延迟}:{最大触发次数,-1 代表无限}"
//// 原始文本:
"OnUser1" "!self,AddOutput,OnUser1:SetParent:!activator:0.0:-1"
// 参数可以留空,但仍应包含空的空白。
//// 原始文本:
"OnUser1" "!self,AddOutput,OnUser1:ClearParent::0.0:-1"
|
ClearContext
- 从此实体的列表中移除所有上下文。
ClearParent
- 从运动层次结构中移除此实体,使其可以独立移动。
FireUser1
toFireUser4
- 触发相应的
OnUser
输出;参见 User Inputs and Outputs。
Kill
- 从世界中移除此实体及任何附属于它的实体。
KillHierarchy
- 功能与
Kill
相同,但此实体和任何附属于它的实体在同一帧内被击杀,比Kill
输入稍快。
RemoveContext
<string >- 从此实体的列表中移除一个上下文。名称应与现有上下文的键匹配。
SetParent
<string >- 与此实体一起移动。参见 Entity Hierarchy (parenting)。
SetParentAttachment
<string >- 将此实体更改为附加到其父级上的特定attachment点。实体将被传送,以便其根bone的位置与附件的位置匹配。实体必须在发送此输入之前被附加。
SetParentAttachmentMaintainOffset
<string >- 如上所述,但不进行传送。实体保留相对于附件的当前位置。
DispatchEffect
<string > (被移除于 以来) 不存在于FGD!- 从实体的原点分发特殊效果;另见 List of Client Effects。自以来被particle系统取代。
RunScriptCode
<string > (存在于自 以来) (也存在于 之中)- 在接收输入的实体的作用域中执行一串VScript源代码。通过控制台触发时可能需要字符串引号。
TerminateScriptScope
(仅存在于 之中) 不存在于FGD!- 销毁接收实体的脚本作用域。
SetLocalOrigin
<coordinates > (存在于自 以来) 不存在于FGD!- 将此实体发送到地图中的某个位置。如果实体附属于某个东西,它将相对于父级偏移此量。
输出
OnEntitySpawned
- 当实例成功生成时触发。
OnEntityFailedSpawn
- 当
ForceSpawn
输入失败时触发,取决于是否在flags,例如是否在玩家视线或者空间是否足够。
基础:
OnUser1
toOnUser4
- 这些输出分别在相应编号的 FireUser1 到 FireUser4 输入触发时触发;参见 用户输入和输出 。
OnKilled
(仅存在于 之中)- 当实体被击杀并从游戏中移除时触发此输出。