测试门(Portal 2)

From Valve Developer Community
< Zh
Jump to navigation Jump to search
English (en)Français (fr)Русский (ru)中文 (zh)Translate (Translate)

小作品

这篇文章是一个小作品,您可以帮助我们完善它。

测试室舱门是标准测试课程中的双圆形门结构,其中一侧显示有《Portal 2》的"出口"标志。

测试门示意图

在官方关卡中,此类舱门专门用于划分测试室的起止区域以分隔不同谜题(与前作不同,《Portal》中同类舱门可作为谜题元素出现在课程中途)。

Note.png注意:在《Portal 2》合作模式中,测试室舱门不再用于分隔谜题,转而使用气闸门系统。

prop_testchamber_door是生成舱门视觉效果、碰撞体和音效的核心实体,其配套实例运用了func_areaportalwindow及多种防漏洞机制。

舱门创建指南

需放置prop_testchamber_door实体并配置激活器:

  • 使用prop_dynamic时,通过SetAnimation等逻辑标记控制开关
  • 如需多次输入触发,建议配合math_counter实体:
 - 设置MaxLegalValue为触发次数
 - 配置OnHitMax(执行开门动画)和OnChangedFromMax(执行关门动画)输出
 - 每个触发实体应设置增减计数器值的逻辑

舱门调试方案

方法一:强制清除

当玩家或物体卡在门内时,需配置以下实体(尺寸:128×104×8单位,居中放置):

配置prop_testchamber_door输出逻辑:

输出事件 目标实体 执行指令 延迟
OnClose door_blocker Enable 0.25秒
OnClose 清除触发器 Enable 立即
OnOpen door_blocker Disable 立即
OnOpen 清除触发器 Disable 立即

方法二:智能检测

(更复杂的非致命方案,可能影响谜题设计) 核心组件:

关键逻辑: 1. 通过trigger_multiple检测玩家位置 2. 使用logic_branch判断门体状态 3. 当玩家离开且门体需关闭时,触发Close指令

(完整参数配置参照原文表格)

Template:ACategory:Portal 2 Level Design Template:ACategory:Tutorials