粉碎机(Shredder)

From Valve Developer Community
< Zh
Jump to navigation Jump to search
English (en)Русский (ru)中文 (zh)Translate (Translate)
Portal 2(en)中的粉碎机

粉碎机(又称研磨机)是Portal 2(en)中的旋转刀片,可摧毁掉入其中的物体和玩家。其功能类似深渊(en)致命粘液(en),但采用幕后主题(en)设计。

创建方法

Note.png注意:虽然粉碎机模型自带旋转动画,但每次动画循环时会出现"卡顿"。因此推荐使用下方方法。

1. 新建地图文件用于存放粉碎机实例

2. 创建细长笔刷,绑定到func_rotating(en)实体并设置:

Property Name Value
Name shredder1_left_axle
Blocking Damage 500

3. 创建另一个细长笔刷,绑定到func_rotating(en)实体并设置:

Property Name Value
Name shredder1_right_axle
Blocking Damage 500

4. 创建prop_dynamic(en)实体并设置:

Property Name Value
Name shredder1_left
Parent shredder1_left_axle
World Model models/props_gameplay/shredder_left_b.mdl

5. 创建prop_dynamic(en)实体并设置:

Property Name Value
Name shredder1_right
Parent shredder1_right_axle
World Model models/props_gameplay/shredder_right_b.mdl

6. 调整实体位置使锯齿咬合,笔刷实体位于对应模型中心

7. 在掉落区域创建256×1024×128笔刷,绑定到trigger_hurt(en)实体并设置:

Property Name Value
Name shredder1_trigger_hurt
Damage 1000
Damage Cap 1000
Damage Type CRUSH

8. 在前方创建笔刷并绑定到trigger_multiple(en)实体,设置:

Property Name Value
Name shredder1_dissolver
Delay Before Reset 5

勾选"Physics Objects"标记并添加输出:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger !activator Dissolve 0.00 No
Io11.png OnTrigger !activator SelfDestructImmediately 0.00 No

9. 创建logic_relay(en)实体并设置:

Property Name Value
Name shredder1_relay_on

添加输出:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger shredder1_trigger_hurt Enable 0.00 No
Io11.png OnTrigger shredder1_dissolver Enable 0.00 No
Io11.png OnTrigger shredder1_axle_left StartForward 0.00 No
Io11.png OnTrigger shredder1_axle_right StartForward 0.25 No

10. 创建logic_relay(en)实体并设置:

Property Name Value
Name shredder1_relay_off

添加输出:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger shredder1_trigger_hurt Disable 0.25 No
Io11.png OnTrigger shredder1_dissolver Disable 0.00 No
Io11.png OnTrigger shredder1_axle_left Stop 0.00 No
Io11.png OnTrigger shredder1_axle_right Stop 0.25 No

11. 创建func_instance_io_proxy(en)实体并设置:

Property Name Value
Name shredder1_proxy

添加输出:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnProxyRelay shredder1_relay_on Trigger 0.00 No
Io11.png OnProxyRelay shredder1_relay_off Trigger 0.00 No

12. 保存并关闭文件

使用时在您的地图中创建func_instance(en)实体,将VMF文件名设置为粉碎机实例文件名。然后使用以下输出控制开关:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png <on condition> <Fix-up Name of the func_instance> instance:shredder1_relay_on;Trigger 0.00 No
Io11.png <off condition> <Fix-up Name of the func_instance> instance:shredder1_relay_off;Trigger 0.00 No