Env entity maker/zh

From Valve Developer Community
Jump to: navigation, search

它可以在env_entity_maker坐标上,生成一个指定的point_template实体。 允许自动生成或者通过输入生成。

env_entity_maker
Env entity maker.png
类型点实体
引擎起源 起源
可用性存在于所有的游戏中
 


在源代码中,它由 class CEnvEntityMaker 代表,定义于 env_entity_maker.cpp

标志(Flags)

  • 1: Enable AutoSpawn - 当有足够的空间且玩家没看见时,产生模板(Template)。
  • 2: AutoSpawn: 等待实体被销毁。
  • 4: AutoSpawn: 哪怕玩家看得见,也会生成。
  • 8: ForceSpawn: 只有在足够的空间时,生成。
  • 16: ForceSpawn: 只有玩家没看见时,生成。

键值

Point_template To Spawn (EntityTemplate) <target_destination>
此处生成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]
Tip.png提示:转换至下一张地图的实体关系会依然存在。
Tip.png提示:一些不适合做父实体的实体可能难以运行,利用phys_constraint可以解决。
Origin (X Y Z) (origin) <coordinates>
实体处于世界中的位置,旋转实体会以实体坐标原点旋转。
Note.png注意:Hammer 不会仅在编辑器中相应地移动实体。
Pitch Yaw Roll (X Y Z) (angles) <angle>
实体在世界中的方位,Pitch围绕X轴旋转,可以称为俯仰角。Yaw围绕Z轴旋转,可以称为偏航角,roll围绕Y轴旋转。
Note.png注意:尽管 Hammer 不显示新角度,但其仍然适用于固实体。
Classname (classname) <string简体中文> | 字符串 不存在于FGD!
确定实体之前它生成的特征。
Tip.png提示:使用AddOutput输入更改 Classname 仍然会影响游戏的代码,例如使类名与 S_PreserveEnts 列表中的一个元素匹配将使实体在新一轮中持续存在!
Flags (spawnflags) <integer> | 整数 不存在于FGD!
实体所具有的标志/标签,依实体所具有而定。
Effects (effects) <integer> | 整数 不存在于FGD!
要使用的效果标志的组合。
Entity Scripts (vscripts) <scriptlist> | 脚本列表 (in all games since 求生之路2) (也存在于 军团要塞2 之中)
在所有实体生成后执行的 VScript简体中文 文件(无文件扩展名)的空格分隔列表。这些脚本都在同一个脚本范围内执行,以后的脚本会覆盖任何相同的变量和函数。在 worldspawn 实体上执行的脚本将放置在根作用域中。
Think function (thinkfunction) <string简体中文> | 字符串 (in all games since 求生之路2) (也存在于 军团要塞2 之中)
此实体脚本中的函数名称,该函数将在脚本持续时间内每 100 毫秒(每秒 10 次)自动调用一次。它可用于创建计时器或模拟自主行为。返回值(如果存在)将设置下一次调用之前的时间。尽量避免在此函数中进行昂贵的操作,因为它可能会导致性能问题。
Lag Compensation (LagCompensate) <boolean> | 布尔值 (in all games since 求生之路2) 不存在于FGD!
设置为以延迟补偿此实体。应该非常谨慎地使用!
Is Automatic-Aim Target (is_autoaim_target) <boolean> | 布尔值 (in all games since 反恐精英:全球攻势) 不存在于FGD!
如果设置为 1,当实体位于十字准线下方时,该实体将减慢控制台和操纵杆控制器的瞄准移动速度。

输入

ForceSpawn
从模板中生成实例,位置是本实体坐标和方向。
ForceSpawnAtEntityOrigin <实体目标名/target_destination>
在指定实体上从模板中生成实例。

Base:
AddContext <string简体中文> | 字符串
Adds to the entity's list of response contexts. See Context.
AddOutput <string简体中文> | 字符串
Assigns a new keyvalue/output on this entity. For keyvalues, some rely on extra necessary code to be ran and won't work if its simply just changed through this input. There is a strict format that must be followed:
// Format of changing KeyValues: "AddOutput [key] [value]"
//// Raw text:
"OnUser1" "!self,AddOutput,targetname new_name"

// Format of adding an Output: "AddOutput {targetname}:{inputname}:{parameter}:{delay}:{max times to fire, -1 means infinite}"
//// Raw text:
"OnUser1" "!self,AddOutput,OnUser1:SetParent:!activator:0.0:-1"
// Arguments can be left blank, but the empty blank should still be contained.
//// Raw text:
"OnUser1" "!self,AddOutput,OnUser1:ClearParent::0.0:-1"
ClearContext
Removes all contexts from this entity's list.
ClearParent
Removes this entity from the the movement hierarchy, leaving it free to move independently.
FireUser1 to FireUser4
Fires the respectiveOnUseroutputs; see User Inputs and Outputs.
Kill
Removes this entity and any entities parented to it from the world.
KillHierarchy
Functions the same as Kill, although this entity and any entities parented to it are killed on the same frame, being marginally faster thanKillinput.
RemoveContext <string简体中文> | 字符串
Remove a context from this entity's list. The name should match the key of an existing context.
SetParent <string简体中文> | 字符串
Move with this entity. See Entity Hierarchy (parenting).
SetParentAttachment <string简体中文> | 字符串
Change this entity to attach to a specific attachment point on its parent. The entity will teleport so that the position of its root bone matches that of the attachment. Entities must be parented before being sent this input.
SetParentAttachmentMaintainOffset <string简体中文> | 字符串
As above, but without teleporting. The entity retains its position relative to the attachment at the time of the input being received.
Use  不存在于FGD!
Same as a player invoking +use; no effect in most cases.
DispatchResponse <string简体中文> | 字符串 不存在于FGD!
Dispatches a response to the entity. See Response and Concept.
DispatchEffect <string简体中文> | 字符串 (被移除求生之路 以来) 不存在于FGD!
Dispatches a special effect from the entity's origin; See also List of Client Effects. Replaced by the particle system since 求生之路.
RunScriptFile <script> | 脚本 (存在于自 求生之路2 以来) (也存在于 军团要塞2 之中)
Execute a VScript file from disk, without file extension. The script contents are merged with the script scope of the receiving entity.
RunScriptCode <string简体中文> | 字符串 (存在于自 求生之路2 以来) (也存在于 军团要塞2 之中)
Execute a string of VScript source code in the scope of the entity receiving the input. String quotation may be needed when fired via console.
Icon-Bug.png错误:In Hammer, using string arguments will corrupt the VMF file's structure, making the file unviewable for the next Hammer session.
Note.png修复:Remove the string argument manually with a text editor.
Note.png注意:军团要塞2 Backtick characters ` are replaced with quotation marks at runtime, allowing quotation marks to be used when normally not possible.
CallScriptFunction <string简体中文> | 字符串 (存在于自 求生之路2 以来) (也存在于 军团要塞2 之中) 不存在于FGD!
Calls a VScript function defined in the scope of the receiving entity.
TerminateScriptScope  (存在于 军团要塞2 之中) 不存在于FGD!
Destroys the script scope of the receving entity.
SetLocalOrigin <coordinates> (存在于自 异形丛生 以来) 不存在于FGD!
Send this entity to a spot in the map. If the entity is parented to something, it will be offset from the parent by this amount.
SetLocalAngles <angles> (存在于自 异形丛生 以来) 不存在于FGD!
Set this entity's angles.

输出

OnEntitySpawned
当实例成功生成时触发。
OnEntityFailedSpawn
ForceSpawn输入失败时触发,取决于是否在flags,例如是否在玩家视线或者空间是否足够。

Base:

OnUser1 to OnUser4
These outputs each fire in response to the firing of the like-numbered FireUser1 to FireUser4 Input; see User Inputs and Outputs.
OnKilled  (存在于 求生之路 之中)
This output fires when the entity is killed and removed from the game.