Crusher: Difference between revisions
m (otherlang2) |
No edit summary |
||
Line 145: | Line 145: | ||
! || My Output || Target Entity || Target Input || Parameter || Delay || Only Once | ! || My Output || Target Entity || Target Input || Parameter || Delay || Only Once | ||
|- | |- | ||
| [[Image:Io11.png]] || | | [[Image:Io11.png]] || OnProxyRelay || crusher1_logic_relay_crush || Trigger || || 0.00 || No | ||
|- | |- | ||
| [[Image:Io11.png]] || | | [[Image:Io11.png]] || OnProxyRelay || crusher1_logic_relay_uncrush || Trigger || || 0.00 || No | ||
|- | |- | ||
| [[Image:Io11.png]] || | | [[Image:Io11.png]] || OnProxyRelay || crusher1_logic_compare || Compare || || 0.00 || No | ||
|} | |} | ||
11 | 11. Set up triggers to open or close the crusher by triggering the proxy relays on '''crusher1_proxy_crush'''. Use '''crusher1_logic_compare''' to get the state of the crusher. | ||
[[Category:Portal 2 Level Design]] | [[Category:Portal 2 Level Design]] | ||
[[Category:Portal 2 Tutorials]] | [[Category:Portal 2 Tutorials]] |
Revision as of 13:26, 1 August 2011
Template:Otherlang2 In Portal 2, Crushers are Panels with spikes. Like panels, they are attached to robotic arms. However, directly behind the robotic arm is a massive piston which drives the crusher.
Creating Crushers
1. Create a prop_dynamic entity with the following settings:
Property Name Value World Model models/anim_wp/cursher/crusher.mdl Name crusher1 Collision Not Solid Hold animation? Yes
2. Create a 128x64x192
block brush around the spikes on the model. Tie it to a func_brush entity with the following settings:
Property Name Value Name crusher1_brush Parent crusher1
3. Create a 200x112x192
block brush around the previous brush. Tie it to a trigger_hurt entity with the following settings:
Property Name Value Name crusher1_trigger_hurt Parent crusher1 Damage 1000 Damage Cap 1000 Damage Type CRUSH
4. Create a 200x96x192
block brush around the trigger_hurt brush. Tie it to a trigger_portal_cleanser entity with the following settings:
Property Name Value Name crusher1_trigger_hurt Parent crusher1 Visible No
and the following outputs:
5. Create a logic_auto entity and set up the outputs as follows:
6. Create a logic_relay with the following settings:
Property Name Value Name crusher1_logic_relay_crush
with the following outputs:
7. Create a logic_relay with the following settings:
Property Name Value Name crusher1_logic_relay_uncrush
with the following outputs:
8. Create a logic_compare with the following settings:
Property Name Value Name crusher1_logic_compare Initial Value 0 Compare Value 1
and the following outputs:
9. Create a math_counter with the following settings:
Property Name Value Name crusher1_math_counter Maximum Legal Value 1
and the following outputs:
10. Create a func_instance_io_proxy entity with the following settings:[Why?]
Property Name Value Name crusher1_proxy_crush
and the following outputs:
11. Set up triggers to open or close the crusher by triggering the proxy relays on crusher1_proxy_crush. Use crusher1_logic_compare to get the state of the crusher.