Zh/Box dropper: Difference between revisions
m (→自动补充机制: Poison Water .HeYiWei.) |
(→进阶配置: ! 还没配好,准备换电脑改!) |
||
Line 126: | Line 126: | ||
| → logic_drop_box || 触发补充 | | → logic_drop_box || 触发补充 | ||
|} | |} | ||
=== 使用直立开关重生方块 === | |||
虽然这听着有点难,但其实非常简单。<br> | |||
你只需要做两三件事。 | |||
==== 创建直立开关 ==== | |||
请参考{{L|Switch|直立开关}},并在完成后把它放到滴管面前。 | |||
{{Tip|由于这是方块滴管而不是别的什么需要计时的东西,请无视其中提到{{L|Logic_timer}}与其ambient实体的部分}}<br> | |||
随后,根据上文给开关的{{L|func_door_rotating}}添加<logic_drop_box>的相关输出。 | |||
==== 添加并运用[[env_entity_dissolver]] 实体==== | |||
很明显,“Dissolver”直接告诉了该实体的作用,它是用来销毁掉现有方块的。<br> | |||
将这个实体放在开关旁边(实际位置不重要,只是方便),修改其属性: | |||
{| class="wikitable" | |||
|- | |||
| 名称 || 内容 || 介绍 | |||
|- | |||
| Name || BoxDissolver || 随便起一个名字,只要你能看懂 | |||
|- | |||
| Target to Dissolve || box || 要销毁的目标 | |||
|- | |||
| Dissolve Type || Energy || 这是初始项,不用更改 | |||
|} | |||
{{Note|Energy实际上是在{{HL2|4}}基于其制作的游戏中被能量球击杀的效果}} | |||
现在你的<s>削除</s>销毁功能应该能正常奏效了,只差输出。 | |||
=== 为开关添加输出 === | |||
这个操作会轻松的多。 | |||
像开头所讲的一样,给Door_rotating实体添加一个输出。 | |||
{{Wip}} | |||
{{ACategory|Portal|传送门系列}} | {{ACategory|Portal|传送门系列}} | ||
{{ACategory|Level Design|关卡设计}} | {{ACategory|Level Design|关卡设计}} | ||
{{ACategory|Tutorials|教程}} | {{ACategory|Tutorials|教程}} |
Revision as of 14:44, 6 October 2025
本教程将逐步演示如何制作传送门测试密室中常见的投放器(官方名:维生装置通风口)。该装置可在玩家原有配重存储方块被销毁时提供新方块。
基础构造
投放器模型
1. 创建prop_dynamic,设置模型为models/props/box_dropper.mdl
2. 创建第二个prop_dynamic,命名为box_dropper_model_cover
,模型设为models/props/box_dropper_cover.mdl
3. 将两个实体对齐至目标位置
顶部拱形结构
使用拱形工具创建尺寸为128L*128W*16H
的架构,参数设置:
属性 | 值 |
---|---|
墙体厚度 | 24 |
边数 | 8 |
弧度 | 360° |
起始角度 | 0° |
- 将结构绑定至func_detail
- 使用顶点编辑工具 调整为矩形中空形态
- 纹理贴图:
- 内缘:metal/metalwall061f
- 底面:concrete/concrete_modular_ceiling001a
垂直通道
1. 创建128L*128W*256H
的垂直通道
2. 使用分割工具将各面均分
3. 纹理贴图:
- 下部内壁:metal/metalwall_bts_006a
- 上部内壁:metal/metalwall_bts_006b_gradient
- 顶部:lights/light_orange001
功能系统
方块模板
1. 在通道顶部创建128L*128W*112H
的func_detail空间(使用<nodraw>纹理)
2. 中央放置prop_physics实体:
- 模型:models/props/metal_box.mdl
- 命名:box
- 输出设置:
OnOutOfWorld | !activator | Kill |
OnOutOfWorld | logic_drop_box | Trigger |
3. 创建point_template:
- 命名:box_template
- 模板目标:box
4. 通道顶部附近创建env_entity_maker:
- 命名:entity_box_maker
- 关联模板:box_template
5. 创建filter_activator_name过滤器:
- 命名:filter_boxes
- 过滤名称:box
舱门控制
1. 创建96L*96W*4H
的func_brush:
- 命名:stop_tube_plugging
- 初始状态:禁用
2. 创建128L*128W*128H
的trigger_multiple:
- 命名:trigger_box_dropper_clear
- 过滤器:filter_boxes
- 标志设置:
Flag | ||||
![]() |
Physics Objects | {{{3}}} | ||
![]() |
Clients | {{{3}}} | ||
- 输出链:
OnEndTouch | 执行动作 |
→ entity_box_maker | 生成新方块 |
→ box_dropper_model_cover | 播放关闭动画 |
→ stop_tube_plugging | 启用防堵塞 |
逻辑控制
创建logic_relay:
- 命名:logic_drop_box
- 输出设置:
OnTrigger | 执行动作 |
→ box_dropper_model_cover | 播放开启动画 |
→ stop_tube_plugging | 禁用防堵塞 |
→ trigger_box_dropper_clear | 启用触发区域 |
进阶配置
自动补充机制
当方块被分解立场 或毒液 销毁时:
1. 对于湮灭场:在trigger_portal_cleanser添加OnDissolveBox → logic_drop_box:Trigger
输出
2. 对于毒液:在液体区域创建trigger_multiple:
- 过滤器:filter_boxes
- 输出设置:
OnStartTouch | 执行动作 |
→ !activator | 销毁方块 |
→ logic_drop_box | 触发补充 |
使用直立开关重生方块
虽然这听着有点难,但其实非常简单。
你只需要做两三件事。
创建直立开关
请参考直立开关 ,并在完成后把它放到滴管面前。

随后,根据上文给开关的func_door_rotating 添加<logic_drop_box>的相关输出。
添加并运用env_entity_dissolver 实体
很明显,“Dissolver”直接告诉了该实体的作用,它是用来销毁掉现有方块的。
将这个实体放在开关旁边(实际位置不重要,只是方便),修改其属性:
名称 | 内容 | 介绍 |
Name | BoxDissolver | 随便起一个名字,只要你能看懂 |
Target to Dissolve | box | 要销毁的目标 |
Dissolve Type | Energy | 这是初始项,不用更改 |


现在你的削除销毁功能应该能正常奏效了,只差输出。
为开关添加输出
这个操作会轻松的多。 像开头所讲的一样,给Door_rotating实体添加一个输出。

As a courtesy, please do not edit this while this message is displayed.
If this page has not been edited for at least several hours to a few days, please remove this template. This message is intended to help reduce edit conflicts; please remove it between editing sessions to allow others to edit the page.
The person who added this notice will be listed in its edit history should you wish to contact them.