22 lines
513 B
GDScript
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()
|