func_sliding
A brush that moves along a configurable direction and distance when triggered. Used for doors, platforms, lifts, hatches, and any other moving geometry.
Properties
Enable Use Float Set to 1 to allow the Use input (typically from the player) to trigger movement. Set to 0 to only allow BeginMovement from outputs. Move Direction Direction The axis to move along, as a normalised direction vector. (0,0,1) is forward, (0,1,0) is up, (1,0,0) is right. Negative values reverse the direction. Move Amount Float How far in world units to travel from the start position. Move Speed Float How fast to move, in world units per second. Wait Time Float How long in seconds to wait at the open position before automatically returning. Set to -1 to stay open indefinitely until triggered again. Inputs
Use — Triggers movement if Enable Use is set to 1. Typically called by the player controller when they interact with the brush. BeginMovement — Triggers movement regardless of the Enable Use property. Use this for output-driven doors that should not be player-interactive. Outputs
OnBeginMove — Fires each time the brush begins moving in either direction. OnEndMove — Fires when the brush reaches its destination and begins waiting. Does not fire when returning to the start position. Notes
func_sliding toggles between its start position and its displaced position each time it is triggered. Triggering it while it is moving reverses the direction immediately.
The movement is smoothed — the brush accelerates toward the target rather than snapping. The Move Speed property controls how quickly it converges.
When Wait Time is a positive value the brush automatically returns to its start position after waiting, effectively making it a one-way door or a timed platform. Setting it to -1 requires a second trigger to return it.
Position, movement state, and wait timer are all saved and restored correctly across saves and level transitions.