From 37d5fa981de46d8c14a59ead7de57528744d5cb5 Mon Sep 17 00:00:00 2001 From: yuki Date: Fri, 14 Nov 2025 16:17:48 -0300 Subject: [PATCH] create player state class --- scenes/classes/player_state.gd | 32 ++++++++++++++++++++++++++++++ scenes/classes/player_state.gd.uid | 1 + scenes/classes/player_state.tscn | 6 ++++++ scenes/player/player.gd | 2 +- 4 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 scenes/classes/player_state.gd create mode 100644 scenes/classes/player_state.gd.uid create mode 100644 scenes/classes/player_state.tscn diff --git a/scenes/classes/player_state.gd b/scenes/classes/player_state.gd new file mode 100644 index 0000000..82a3642 --- /dev/null +++ b/scenes/classes/player_state.gd @@ -0,0 +1,32 @@ +class_name PlayerState extends State + +const IDLE = "Idle" +const RUNNING = "Running" +const HITTING = "Hitting" + +var player: Player + +func _ready() -> void: + await owner.ready + player = owner as Player + assert(player != null, "The PlayerState state type must be used only in the player scene. It needs the owner to be a Player node.") + + +func enter(previous_state_path: String, data: Dictionary = {}) -> void: + pass + + +func exit() -> void: + pass + + +func handle_input(_event: InputEvent) -> void: + pass + + +func state_update(_delta: float) -> void: + pass + + +func state_physics_update(_delta: float) -> void: + pass diff --git a/scenes/classes/player_state.gd.uid b/scenes/classes/player_state.gd.uid new file mode 100644 index 0000000..44ac3f9 --- /dev/null +++ b/scenes/classes/player_state.gd.uid @@ -0,0 +1 @@ +uid://b2sr7p80gdjii diff --git a/scenes/classes/player_state.tscn b/scenes/classes/player_state.tscn new file mode 100644 index 0000000..d9b1b51 --- /dev/null +++ b/scenes/classes/player_state.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://delu380dsl2kl"] + +[ext_resource type="Script" uid="uid://b2sr7p80gdjii" path="res://scenes/classes/player_state.gd" id="1_opnr7"] + +[node name="PlayerState" type="Node"] +script = ExtResource("1_opnr7") diff --git a/scenes/player/player.gd b/scenes/player/player.gd index 5bc52cc..9895cd7 100644 --- a/scenes/player/player.gd +++ b/scenes/player/player.gd @@ -1,4 +1,4 @@ -extends CharacterBody2D +class_name Player extends CharacterBody2D @export var id: int = 1 @export var max_speed: float = 90