X-Git-Url: http://git.purplebirdman.com/frog-ninja.git/blobdiff_plain/df26d4a32e30692efba3fb3b7270501dc005bbff..HEAD:/asset/character/input/grunt_input_handler.gd diff --git a/asset/character/input/grunt_input_handler.gd b/asset/character/input/grunt_input_handler.gd index 0cba6ea..1785dc0 100644 --- a/asset/character/input/grunt_input_handler.gd +++ b/asset/character/input/grunt_input_handler.gd @@ -4,12 +4,17 @@ class_name GruntInputHandler @export var target: Player @onready var me: Player = $".." +@export var time_walking := 0.0 +@export var time_walking_paused := 0.0 +var started_walking := 0.0 + @export var time_between_slashes := 1.0 var last_slash := 0.0 @export var time_between_shots := 1.0 var last_shot := 0.0 +@export var walk_speed := 1.0 func get_movement_direction() -> Vector2: # TODO: pathing @@ -19,14 +24,18 @@ func get_movement_direction() -> Vector2: func get_player_input() -> InputPacket: var p: InputPacket = InputPacket.new() - var vector_to_target := target.global_position - me.global_position - p.player_movement_direction = get_movement_direction() - if p.player_movement_direction != Vector2.ZERO and vector_to_target.length() > 1.5: - p.player_actions.append("Walk") - if target.state_name != "Death": var now := Time.get_unix_time_from_system() + var vector_to_target := target.global_position - me.global_position + + p.player_movement_direction = get_movement_direction() + if (now - started_walking) < time_walking: + if p.player_movement_direction != Vector2.ZERO and vector_to_target.length() > 1.5: + p.player_actions.append("Walk") + elif (now - started_walking) > (time_walking + time_walking_paused): + started_walking = now + if vector_to_target.length() < 2: if (now - last_slash) > time_between_slashes: p.player_combat_actions.append("slash")