point_template
< Zh
Jump to navigation
Jump to search
![]() |
---|
CPointTemplate |
![]() |
point_template
是一个点实体,可在所有的 起源 游戏中使用。
实体描述
point_template 将实体 或实体集合转换为可多次实例化的模板。激活时(ForceSpawn),会按照创建时的相对位置生成模板中的实体。如果point_template
未被移动,这些将是它们的原始位置。要在其他位置生成模板,可使用env_entity_maker 。





globalname
的实体若先前被销毁,则不会再次生成。名称修正
为防止实体间的相互依赖(实体I/O、层级关系或其他名称引用),模板中的实体会被重命名,所有相互关联的输出会重新连接到新名称。命名格式为:'<原始名称>&XXXX',其中'&XXXX'会被替换为当前全局模板实例生成计数,因此使用通配符'<原始名称>&*'仍可找到它们。名称修正仅适用于通过输出生成的模板实体;point_template的输出不会被修正,其他对象引用模板实体的输出也不会。
特殊目标名 (!self
等)对生成的对象有效,因此trigger_multiple 中指向!activator
的输出可用于影响单个生成对象。通配符可引用所有由启用名称修正的point_template生成的实体。
注意若启用"不删除模板实体"标志,第一批生成的实体将带有&0002
后缀。若不想进行名称修正(因为只需生成模板一次,或希望输入触发所有模板实例),请勾选"保留实体名称"生成标志。

spawnflag 2
,未删除的实体是否会有&0001
后缀?
point_template
不会对其模板实体的参数覆盖框进行任何名称修正。
Keyvalues
- Name (目标名称) <target_source>[ Edit ]
- 这个名称是其他实体通过 输入/输出 或其他 关键值 (如
parentname
或target
) 来引用该实体时使用的标识符。
该名称也会显示在 Hammer 编辑器的 2D 视图和 实体报告 中。参见: 所有实体均可使用的 通用键值、输入与输出
- Template 1 (Template01) to Template 16 (Template16) <target_destination>
- 目标名 (s)用于搜索要模板化的实体。可以是精确匹配或通配符(*)。若匹配多个实体,则所有匹配实体都会被包含在模板中。
Flags
- Don't remove template entities : [1]
- 阻止自动删除模板实体。
- Preserve entity names (Don't do name fixup) : [2]
- 使生成的实体名称与模板完全相同(不重命名)。
Inputs
- ForceSpawn
- 在原始位置生成模板实例。
Outputs
- OnEntitySpawned
- !activator = !caller = this entity
生成此模板实例后触发。
FGD增强
来自TeamSpen210的Hammer插件,可使point_template
显示连接到其模板所有实体的线条。
首先在base.fgd
中找到此行并高亮相同字符:
@PointClass base(Targetname) iconsprite("editor/point_template.vmt") = point_template :
然后复制以下全部内容并覆盖原内容:
@PointClass base(BaseEntityPoint)
iconsprite("editor/point_template.vmt")
line(255 255 0, targetname, Template01)
line(255 255 0, targetname, Template09)
line(255 255 0, targetname, Template02)
line(255 255 0, targetname, Template10)
line(255 255 0, targetname, Template03)
line(255 255 0, targetname, Template11)
line(255 255 0, targetname, Template04)
line(255 255 0, targetname, Template12)
line(255 255 0, targetname, Template05)
line(255 255 0, targetname, Template13)
line(255 255 0, targetname, Template06)
line(255 255 0, targetname, Template14)
line(255 255 0, targetname, Template07)
line(255 255 0, targetname, Template15)
line(255 255 0, targetname, Template08)
line(255 255 0, targetname, Template16)
= point_template:
另见
- 使用此实体实现物品重生的教程
- env_entity_maker - 自动重生及/或在不同位置生成
- npc_maker - 替代生成实体,也可选择自动重生
point_script_template - 专为VScript 设计的
point_template
版本