Files
Archipelago-Game/Entities/Characters/Utility/Components/Scripts/movement_component.gd

22 lines
513 B
GDScript

extends Node
class_name MovementComponent
# movement_component.gd
# A simple script that checks for movement input and emits a signal with the
# direction vector
signal MovementQueued(direction_vector: Vector2)
signal NoMovementQueued
var direction_vector: Vector2
func _physics_process(_delta: float) -> void:
var dv := Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down")
if dv:
direction_vector = dv
MovementQueued.emit(dv)
else:
direction_vector = Vector2.ZERO
NoMovementQueued.emit()