Func lookdoor: Difference between revisions
Jump to navigation
Jump to search

Note:The
Bug:There are bugs that may arise when parenting this entity to any of these: func_movelinear, func_lookdoor, func_water_analog. A func_door (or for func_water_analog, func_water) can be used as a workaround. (see here for a code fix)[
Code Fix]
Confirm:Might be fixed in Portal 2? Parented movelinears are used extensively for this game's piston platforms.
Bug:Physics objects cannot be constrained to this entity when this flag is enabled. [todo tested in ?]
Bug:Block damage doesn't function on players who passed through a trigger_teleport using noclip, though it will have effect again if the the player goes through a trigger_teleport without noclip. [todo tested in ?]
m (removed {{DISPLAYTITLE}}, covered by the hl2 brush template) |
(updates) |
||
Line 1: | Line 1: | ||
{{hl2 brush|func_lookdoor}} | {{lang|Func lookdoor}} | ||
{{hl2 brush|func_lookdoor}} It's a door that moves, either when looked by a targeted object or when a target object comes near the door. Behavior can be either based on viewing direction or proximity alone, or on a combination of both. | |||
{{FuncMoveLinear notes}} | |||
{{ | |||
{{code class|CLookDoor|look_door.cpp}} | |||
{{ | |||
{{ | ==Flags== | ||
{{Fl FuncMoveLinear}} | |||
{{minititle|LookDoor}} | |||
*8192: LookDoor Threshold | |||
*16384: LookDoor Invert | |||
*32768: LookDoor From Open | |||
{{KV| | ==Keyvalues== | ||
{{KV|Target (target)|target_destination|nofgd=1|View cone switch for this door (Necessary to trigger it).{{clarify}}}} | |||
{{KV|Proximity Distance (ProximityDistance)|float|If non-zero, how close player must be for door to move.}} | |||
{{KV|Proximity Offset (ProximityOffset)|float|Offset from the target object.}} | |||
{{KV|Field of View (FieldOfView)|float|If non-zero, how far away from the door the player can look while still triggering it.}} | |||
{{KV FuncMoveLinear}} | |||
{{KV BaseEntity|base=1}} | |||
{{ | |||
{{KV|Proximity Distance|float|If non-zero, | |||
{{KV|Proximity Offset|float|Offset from the target object.}} | |||
{{KV|FieldOfView|float|If non-zero, | |||
= | |||
==Inputs== | ==Inputs== | ||
{{IO|InvertOn|Make the door behave oppositely. Player has to be ''outside'' '''Proximity Distance''', and not looking at the door within '''Field of View'''.}} | |||
{{IO|InvertOff|Turn door behavior back to the normal method.}} | |||
{{I FuncMoveLinear}} | |||
{{IO| | {{I BaseEntity|base=1|prel4d=1}} | ||
{{IO| | |||
{{ | |||
{{ | |||
==Outputs== | ==Outputs== | ||
{{O | {{O FuncMoveLinear}} | ||
{{O BaseEntity}} | |||
{{ | |||
Revision as of 02:48, 9 September 2018


Template:Hl2 brush It's a door that moves, either when looked by a targeted object or when a target object comes near the door. Behavior can be either based on viewing direction or proximity alone, or on a combination of both.

SetPosition
input and Start Position keyvalue do not perform any bounds checking, so values less than 0 and greater than 1 can be used. Negative values will move in the opposite direction to the movement direction, and values greater than 1 will move it in multiples of the set Move Distance. Moving past the opened/closed position does not trigger the OnFullyOpen
and OnFullyClosed
outputs.


Flags
FuncMoveLinear:
- Not Solid : [8]

LookDoor:
- 8192: LookDoor Threshold
- 16384: LookDoor Invert
- 32768: LookDoor From Open
Keyvalues
- Target (target) ([todo internal name (i)]) <targetname> !FGD
- View cone switch for this door (Necessary to trigger it).[Clarify]
- Proximity Distance (ProximityDistance) ([todo internal name (i)]) <float>
- If non-zero, how close player must be for door to move.
- Proximity Offset (ProximityOffset) ([todo internal name (i)]) <float>
- Offset from the target object.
- Field of View (FieldOfView) ([todo internal name (i)]) <float>
- If non-zero, how far away from the door the player can look while still triggering it.
FuncMoveLinear:
- Move Direction (Pitch Yaw Roll) (movedir) <angle>
- The direction the entity will move in.
- Start Position (startposition) <float>
- Position of brush when spawned, where 0 is the starting position and 1 is starting position + (move direction * move distance).
- Speed (speed) <integer>
- The speed that the brush moves, in inches per second.
- Move Distance (movedistance) <float>
- The distance from the starting point that the brush should move, in inches.
- Block Damage (blockdamage) <float>
- The amount of damage to do to any entity that blocks the brushes, per frame.

- Sound played when the brush starts moving. (startsound) <sound>
- The sound to play when the brush starts moving.
- Sound played when the brush stops moving. (stopsound) <sound>
- The sound to play when the brush stops moving.
Inputs
- InvertOn
- Make the door behave oppositely. Player has to be outside Proximity Distance, and not looking at the door within Field of View.
- InvertOff
- Turn door behavior back to the normal method.
FuncMoveLinear:
- Open
- Move the brush to the end position (starting position + (move direction * move distance)).
- Close
- Move the brush to the starting position.
- SetPosition <float >
- Move the brush to a specific position, where 0 is the starting position and 1 is the starting position + (move direction * move distance).
- SetSpeed <float >
- Set the speed and update immediately.
- TeleportToTarget <targetname > (only in
)
- Teleport to the origin of a given entity.
- ResetPosition <float > (only in
)
- Set a new start position, parameter relative to wherever the current one is. Todo: Parameter might actually be optional?
Outputs
FuncMoveLinear:
- OnFullyOpen
- !activator = !caller = this entity
Fired when the brush reaches the end position (starting position + (move direction * move distance)).
- OnFullyClosed
- !activator = !caller = this entity
Fired when the brush reaches the starting position.