Summary
A component that can be pressed. Like a button. This could be by
a player USE'ing it, or by a player walking on it, or by an NPC.
A call to Press should ALWAYS call release afterwards. Generally
this is done by the player, where holding E presses the button, and
releasing E stops pressing it. You need to handle edge cases where
the player dies while holding etc.
Methods
| Blur |
A player has stopped looking at this |
| CanPress |
Return true if the press is possible right now |
| Hover |
A player has started looking at this |
| Look |
A player is still looking at this. Called every frame. |
| Press |
Pressed. Returns true on success, else false.
If it returns true then you should call Release when the
press finishes. Not everything expects it, but some stuff will. |
| Pressing |
Still being pressed. Return true to allow the press to continue, false cancel the press |
| Release |
To be called when the press finishes. You should only call this
after a successful press - ie when Press hass returned true. |