Zh/AddOutput: Difference between revisions
< Zh
Jump to navigation
Jump to search
(Created page with "{{LanguageBar|AddOutput|title=AddOutput输入}} {{TabsBar|main=s2|base=AddOutput}} {{This is a|input|name=AddOutput}} 主要用于为实体的现有{{L|output}}注册额外动作,即"添加"输出。 语法: <syntaxhighlight lang=text><输出> <目标>:[输入]:[参数覆盖]:[延迟]:[触发次数(-1或0=无限,1=一次...)]</syntaxhighlight> * < > = 必填参数 * [ ] = 可选参数(若省略后续参数可不写冒号) * 输出 - 实体已有的输出项 *...") |
(→示例) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
{{LanguageBar|AddOutput|title=AddOutput输入}} | {{LanguageBar|AddOutput|title=AddOutput输入}} | ||
{{TabsBar|main=s2|base=AddOutput}} | {{TabsBar|main=s2|base=AddOutput}} | ||
{{This is a| | {{This is a|{{input|输入}}|name=AddOutput}} 主要用于为实体的现有{{L|output|输出}}添加额外输出,即"添加"输出。 | ||
语法: <syntaxhighlight lang=text><输出> <目标>:[输入]:[参数覆盖]:[延迟]:[触发次数(-1或0=无限,1=一次...)]</syntaxhighlight> | 语法: <syntaxhighlight lang=text><输出> <目标>:[输入]:[参数覆盖]:[延迟]:[触发次数(-1或0=无限,1=一次...)]</syntaxhighlight> | ||
Line 29: | Line 29: | ||
* <code>OutValue car:skin::0:-1</code> | * <code>OutValue car:skin::0:-1</code> | ||
{{Warning|在Hammer中切勿使用引号字符("),否则会导致地图编译错误。建议使用<code>“</code> | {{Warning|在Hammer中切勿使用引号字符("),否则会导致地图编译错误。建议使用<code>“</code>或两个单撇号<nowiki> ' ' </nowiki>替代。}} | ||
== 修改键值 == | == 修改键值 == |
Latest revision as of 00:06, 27 June 2025
AddOutput
是一个Template:Input,可在所有的 起源 游戏中使用。 主要用于为实体的现有输出 添加额外输出,即"添加"输出。
语法:
<输出> <目标>:[输入]:[参数覆盖]:[延迟]:[触发次数(-1或0=无限,1=一次...)]
- < > = 必填参数
- [ ] = 可选参数(若省略后续参数可不写冒号)
- 输出 - 实体已有的输出项
- 目标 - 目标实体targetname (支持!caller等特殊目标名)
- 输入 - 目标实体要触发的输入(留空则使用
Use
输入) - 参数覆盖 - 覆盖参数(留空则使用输出默认值)
- 延迟 - 延迟秒数(留空为0)
- 触发次数 - 最大触发次数(留空为-1)
示例
现有名为counter
的math_counter 实体。
在trigger_once 中的配置示例:
My output named: OnStartTouch Target entities named: counter Via this input: AddOutput With a parameter override of: OutValue car:skin
以下写法等效:
OutValue car:skin
OutValue car:skin:::
OutValue car:skin::0:-1

“
或两个单撇号 ' ' 替代。修改键值
AddOutput也可修改实体键值,语法:
<键> <值>


特殊键值限制
- classname
- 仅影响部分运行时检查,不会真正改变实体类型

- parentname
- 父子关系仅在实体生成时建立,运行时修改无效
- ambient_generic 的SourceEntityName
- 仅在实体生成时生效
限制
- 无法添加使用AddContext 的输出
- 冒号会被自动转换为逗号
- 含空格的键值/输出无法修改
通过ent_fire 使用
添加输出:
ent_fire <实体名> addoutput "<输出> <目标>:[输入]:[参数]:[延迟]:[次数]"
修改键值:
ent_fire <实体名> addoutput "<键> <值>"
应用案例
1. 动态修改game_text 并显示:
OnStartTouch "game_text,AddOutput,message 前方有火情,请绕行!,0,1" OnStartTouch "game_text,Display,,0.02,1"
2. 为回合计时器添加结束事件:
OnMapSpawn "team_round_timer_red,AddOutput,OnFinished game_round_win:RoundWin::0:-1,0,-1"
3. 实现玩家透明度变化:
OnStartTouch "!activator,AddOutput,rendermode 1" OnStartTouch "!activator,Alpha,120,0" OnEndTouch "!activator,Alpha,255,0.1"