]> Untitled Git - frog-ninja.git/blobdiff - player/player.gd
Separated the Visual from the Model
[frog-ninja.git] / player / player.gd
index 6e32bcd88de3f1f9a1b5d81b10a7880a1f7ead76..c6f39a8bbfb1b026a8275e434b7b22965fa51de2 100644 (file)
@@ -2,11 +2,32 @@ extends CharacterBody3D
 class_name Player
 
 
 class_name Player
 
 
-@onready var _input: InputHandler = %Input
-@onready var _model: PlayerModel = %Model
+@export_group("Movement")
+@export var walk_speed := 10.0
+@export var dash_length := 10.0
+@export var acceleration := 20.0
+@export var rotation_speed := 10.0
+@export var idle_timeout := 5.0
+
+
+var idle_time := 0.00
+var last_movement_direction := rotation 
+var floor_normal := Vector3.ZERO
+var ground_slope_input := 0.0
+var state := ""
+
+@onready var input: InputHandler = $Input
+@onready var model: PlayerModel = $Model
+@onready var skin: SkeletonSkin3D = $Visual
+@onready var camera_handler: CameraHandler = $CameraHandler
+
+
+func _ready() -> void:
+       input.camera = %camera
+       camera_handler.input = input
+       skin.assign_skeleton(model.skeleton)
 
 
 func _physics_process(delta: float) -> void:
 
 
 func _physics_process(delta: float) -> void:
-       var input_pkt := _input.get_player_input()
-       velocity = _model.get_velocity_by_input(input_pkt, delta)
-       move_and_slide()
+       var input_pkt := input.get_player_input()
+       model.update(input_pkt, delta)