这篇条目有关 Source引擎。如需详情,点击这里。

logic_relay

From Valve Developer Community
< Zh
Jump to navigation Jump to search
English (en)Русский (ru)中文 (zh)Translate (Translate)
Logic relay.png

logic_relay是一个逻辑实体,可在所有的 起源 起源 游戏中使用。

类层级
CLogicRelay
CLogicalEntity
CServerOnlyEntity
CBaseEntity
logicrelay.cpp

作为输出转发器,该实体能通过单一输入触发多个输出(en),或通过禁用状态切断I/O链条。相比逐个修改相同输出,使用该实体能大幅提升工作效率——毕竟"一夫当关"总比"四处救火"来得轻松。

logic_relay被触发后,必须等待所有输出执行完毕才能再次响应。此特性特别适合需要顺序执行延迟输出的场景(比如"步步为营"的机关设计)。通过启用"允许快速重触发"标记可关闭该特性。

logic_relay整合了金源 金源trigger_relaymulti_manager的功能。虽然旧版实体仍在半衰期:起源 半衰期:起源中存在,但已是"明日黄花"。

键值

参见:  Generic Keyvalues, Inputs and Outputs available to all entities
Name(en) (targetname) <target_source>
其他实体引用该实体的目标名称。
初始禁用 (StartDisabled) <布尔值(en)>
禁用状态下OnTrigger输出不会触发

Flags(实体属性)

仅触发一次 : [1]
允许快速重触发 : [2]

输入

触发 <void>
激活继电器,若启用则触发OnTrigger输出
启用 <void>
解除禁用状态,允许响应触发
禁用 <void>
进入禁用状态,阻断触发响应
切换 <void>
在启用/禁用状态间切换
取消待执行 <void>
终止该实体所有待处理的I/O事件
Icon-Bug.png错误:若输入调用者为自身将导致I/O事件队列崩溃
允许重触发 <void> 不存在于FGD!
当延迟输出全部完成后自动执行,重置触发锁
带参数触发 <variant(en)> (存在于 Mapbase 之中)
触发带参数的OnTriggerParameter输出

输出

生成时 <void>
!activator = !caller = this entity
实体生成时触发。若设为仅触发一次,执行后自毁
Note.png注意:每次加载地图(包括读档)都会触发,除非勾选"仅触发一次"
被触发 <void>
!activator = 触发输入的调用者
!caller = this entity
继电器被激活时触发。若设为仅触发一次,执行后自毁
带参数触发 <variant(en)> (存在于 Mapbase 之中)
!activator = 带参数触发输入的调用者
!caller = this entity
参数化触发时激活

相关条目