+
+#########
+# actions
+#########
+
+func _player_dash():
+ if _last_movement_direction != Vector3.ZERO:
+ var dash_local_pos = _last_movement_direction * dash_length
+ # TODO: check if valid position, crop the vector to last valid position
+ global_position += dash_local_pos