slow down player when using mortar

This commit is contained in:
Michael Campbell 2026-03-19 02:24:00 -04:00
parent 9e47e27cbf
commit 3c0427969c

View file

@ -34,6 +34,8 @@ var state := State.NORMAL
var dash_direction: Vector2
var stamina := 1.0
var speed_mul := 1.
@export var guns: Array[Gun]
var gun_index := 0:
set(v):
@ -59,7 +61,7 @@ func _process_movement(delta: float) -> void:
var input = Input.get_vector("move_left", "move_right", "move_up", "move_down")
input.normalized()
var mul := 10. if DebugMenu.high_speed_hack else 1.
var desired_velocity = Vector3(input.x, 0., input.y) * MOVE_SPEED * mul
var desired_velocity = Vector3(input.x, 0., input.y) * MOVE_SPEED * mul * speed_mul
velocity = exp_lerp(velocity, desired_velocity, 20, delta)
move_and_slide()
@ -102,6 +104,12 @@ func _process_shoot(delta: float) -> void:
# State.DASHING: clock_mul = 2.5
# State.LOCKED: clock_mul = 2.5
if gun_index == MORTAR_IDX and Input.is_action_pressed("fire"):
speed_mul = exp_lerp(speed_mul, 0.25, 5, delta)
else:
speed_mul = exp_lerp(speed_mul, 1., 5, delta)
gun.fire_clock -= delta * clock_mul
if Input.is_action_pressed("fire") and gun.fire_clock <= 0.:
gun.fire(aim_angle)