]> purplebirdman git - frog-ninja.git/blobdiff - asset/character/input/grunt_input_handler.gd
Squashed commit of the following:
[frog-ninja.git] / asset / character / input / grunt_input_handler.gd
index 0cba6eae7c300141c77030d7c9a2a035e73ea91d..1785dc05ea85c28178c0a5e5fbc387df368bc1a6 100644 (file)
@@ -4,12 +4,17 @@ class_name GruntInputHandler
 @export var target: Player
 @onready var me: Player = $".."
 
 @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 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
 
 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()
 
 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()
        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")
                if vector_to_target.length() < 2:
                        if (now - last_slash) > time_between_slashes:
                                p.player_combat_actions.append("slash")