summaryrefslogtreecommitdiff
path: root/player/state_idle.gd
diff options
context:
space:
mode:
authorDaniel Weipert <git@mail.dweipert.de>2025-03-10 18:22:09 +0100
committerDaniel Weipert <git@mail.dweipert.de>2025-03-10 18:22:09 +0100
commit440020e642f539079867577435a9f8b02075699b (patch)
tree99acccfc1574a8ffc656d6f64ff934949edb1f52 /player/state_idle.gd
initial commitHEADmain
Diffstat (limited to 'player/state_idle.gd')
-rw-r--r--player/state_idle.gd30
1 files changed, 30 insertions, 0 deletions
diff --git a/player/state_idle.gd b/player/state_idle.gd
new file mode 100644
index 0000000..78f7af5
--- /dev/null
+++ b/player/state_idle.gd
@@ -0,0 +1,30 @@
+class_name PlayerStateIdle
+extends PlayerState
+
+
+func _state_enter() -> void:
+ get_viewport().get_camera_2d().global_position = player.global_position
+
+ if player.current_direction == Vector2.UP:
+ player.sprite.play("idle_up")
+ elif player.current_direction == Vector2.DOWN:
+ player.sprite.play("idle_down")
+ elif player.current_direction == Vector2.LEFT:
+ player.sprite.play("idle_left")
+ elif player.current_direction == Vector2.RIGHT:
+ player.sprite.play("idle_right")
+
+
+func _physics_process(_delta: float) -> void:
+ if Input.is_action_just_pressed("ui_up"):
+ player.current_direction = Vector2.UP
+ player.set_state(player.state_moving)
+ elif Input.is_action_just_pressed("ui_down"):
+ player.current_direction = Vector2.DOWN
+ player.set_state(player.state_moving)
+ elif Input.is_action_just_pressed("ui_left"):
+ player.current_direction = Vector2.LEFT
+ player.set_state(player.state_moving)
+ elif Input.is_action_just_pressed("ui_right"):
+ player.current_direction = Vector2.RIGHT
+ player.set_state(player.state_moving)