Adjust func_door speed while opening/ closing?


I’m having a bit of trouble with a sliding func_door brush. What I’m after is that when the door is triggered (trigger_multiple) it first opens at full speed, and then when it’s about 3/4 open its speed reduces by about half. Similarly when it closes it needs to start off fast and slow down near the end as before.

I cannot seem to get this working and am puzzled. The door simply refuses to alter in speed, or it opens and closes strangely. How I’ve approached this is by using multiple OnStartTouch outputs for the trigger_multiple that trigger after particular delays. Like this etc:

OnStartTouch door001 Cpen 0.00
OnStartTouch door001 SetSpeed 50 0.00
OnStartTouch door001 SetSpeed 25 1.00
OnStartTouch door001 Close 4.00
OnStartTouch door001 SetSpeed 50 4.00
OnStartTouch door001 SetSpeed 25 5.00

I’ve used messed about with flags for both the door and the trigger_multiple but nothing works.
Any ideas? Cheers.

To my knowledge, the func_door speed cannot be changed while it is in motion. The speed can only be adjusted when the door isn’t moving (ie: When the func_Door is in its closed or open state).

You should use the func_movelinear entity and tie it to a brush. This will provide you with full control over the speed and direction of the brush.

Use two logic_relay entities to control the the open and close sequences.

Bah! That’s a good few hours wasted messing about with a func_door. >:|

Never used a func_movielinear before; sounds promising. I’ll give it a try. Thanks.

What happens if, while it’s already opening, you set the speed then tell it to open again? It might continue to open, but at the new speed.

[editline]27th July 2012[/editline]

That’s a wild guess though.

I’m on my phone and can’t get on Hammer right now to test this, but could someone create a quick map and test HiddenMyst’s theory? create a slowly rotating door, open it, and attempt to change the speed with a button on the wall next to it using the method HiddenMyst suggested. I need to change a func_door_rotating’s speed while it is still in motion too, as stated in the original post