what is the purpose of having this trigger once after the input checking?
[Player Walk]
// Allow the player to move in 8 directions but only change directions if a single direction is being pressed.
Keyboard and Gamepad controls are exclusively separated here to simplify things.
// Keyboard
----+ Keyboard: ↑ is down
--------+ Keyboard: [X] ↓ is down
---------> Player_Base: Simulate 8Direction pressing Up
---------> Player_Mask: Set Walking to True
--------+ Keyboard: [X] ← is down
--------+ Keyboard: [X] → is down
---------> Player_Mask: Set Direction to "Up"
----+ Keyboard: ↓ is down
--------+ Keyboard: [X] ↑ is down
---------> Player_Base: Simulate 8Direction pressing Down
---------> Player_Mask: Set Walking to True
--------+ Keyboard: [X] ← is down
--------+ Keyboard: [X] → is down
---------> Player_Mask: Set Direction to "Down"
----+ Keyboard: → is down
--------+ Keyboard: [X] ← is down
---------> Player_Base: Simulate 8Direction pressing Right
---------> Player_Mask: Set Walking to True
--------+ Keyboard: [X] ↓ is down
--------+ Keyboard: [X] ↑ is down
---------> Player_Mask: Set Direction to "Right"
----+ Keyboard: ← is down
--------+ Keyboard: [X] → is down
---------> Player_Base: Simulate 8Direction pressing Left
---------> Player_Mask: Set Walking to True
--------+ Keyboard: [X] ↓ is down
--------+ Keyboard: [X] ↑ is down
---------> Player_Mask: Set Direction to "Left"
// Gamepad
----+ Gamepad: Gamepad 0 D-pad up is down
--------+ Gamepad: [X] Gamepad 0 D-pad down is down
---------> Player_Base: Simulate 8Direction pressing Up
---------> Player_Mask: Set Walking to True
--------+ Gamepad: [X] Gamepad 0 D-pad right is down
--------+ Gamepad: [X] Gamepad 0 D-pad left is down
---------> Player_Mask: Set Direction to "Up"
----+ Gamepad: Gamepad 0 D-pad down is down
--------+ Gamepad: [X] Gamepad 0 D-pad up is down
---------> Player_Base: Simulate 8Direction pressing Down
---------> Player_Mask: Set Walking to True
--------+ Gamepad: [X] Gamepad 0 D-pad left is down
--------+ Gamepad: [X] Gamepad 0 D-pad right is down
---------> Player_Mask: Set Direction to "Down"
----+ Gamepad: Gamepad 0 D-pad right is down
--------+ Gamepad: [X] Gamepad 0 D-pad left is down
---------> Player_Base: Simulate 8Direction pressing Right
---------> Player_Mask: Set Walking to True
--------+ Gamepad: [X] Gamepad 0 D-pad down is down
--------+ Gamepad: [X] Gamepad 0 D-pad up is down
---------> Player_Mask: Set Direction to "Right"
----+ Gamepad: Gamepad 0 D-pad left is down
--------+ Gamepad: [X] Gamepad 0 D-pad right is down
---------> Player_Base: Simulate 8Direction pressing Left
---------> Player_Mask: Set Walking to True
--------+ Gamepad: [X] Gamepad 0 D-pad down is down
--------+ Gamepad: [X] Gamepad 0 D-pad up is down
---------> Player_Mask: Set Direction to "Left"
----+ Keyboard: [X] ↑ is down
----+ Keyboard: [X] ↓ is down
----+ Keyboard: [X] → is down
----+ Keyboard: [X] ← is down
----+ Gamepad: [X] Gamepad 0 D-pad down is down
----+ Gamepad: [X] Gamepad 0 D-pad up is down
----+ Gamepad: [X] Gamepad 0 D-pad right is down
----+ Gamepad: [X] Gamepad 0 D-pad left is down
-----> Player_Mask: Set Walking to False
----+ System: Trigger once
-> (no actions)