X-Git-Url: http://git.purplebirdman.com/frog-ninja.git/blobdiff_plain/3aebb768a5eef14badd98369da99ee151d2a060b..715f2ba5689e0474928af72a3f2d7493ef431963:/player/player.gd diff --git a/player/player.gd b/player/player.gd index 6e32bcd..258602b 100644 --- a/player/player.gd +++ b/player/player.gd @@ -2,11 +2,35 @@ extends CharacterBody3D 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: - 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) + + # TODO: this is bad!! + model.skeleton.global_transform = skin.global_transform