fixed ducking bug duckbug.... ぶ

This commit is contained in:
pennyrigate 2024-06-15 20:56:09 -04:00
parent 02793ddc38
commit ba4e603f2b
3 changed files with 273 additions and 7 deletions

View file

@ -42,7 +42,7 @@ func _physics_process(delta: float) -> void:
State.DEAD:
return
State.STAND:
if Input.is_action_pressed("move_down") and energy >= duck_energy:
if sign(Input.get_axis("move_up", "move_down") + get_stick_input(JOY_AXIS_1)) == 1 and energy >= duck_energy:
state = State.DUCK
anims.play("Duck")
elif Input.is_action_pressed("move_right"):
@ -52,7 +52,7 @@ func _physics_process(delta: float) -> void:
state = State.BACK
anims.play("Walk", -1.0, -1.0, true)
State.DUCK:
if not Input.is_action_pressed("move_down") and anims.current_animation.empty():
if (!Input.is_action_pressed("move_down") && get_stick_input(JOY_AXIS_1) != 1) and anims.current_animation.empty():
anims.play("UnDuck")
energy -= duck_energy
@ -73,6 +73,12 @@ func _input(event: InputEvent) -> void:
if event.is_action_pressed("jump") and state == State.STAND and energy >= beam_energy:
beam()
func get_stick_input(axis):
var inp = Input.get_joy_axis(0,axis)
if abs(inp) >= 0.5:
return sign(inp)
else:
return 0
func set_energy(value: float) -> void:
energy = clamp(value, 0.0, max_energy)

View file

@ -1111,6 +1111,270 @@ tracks/5/keys = {
"update": 1,
"values": [ true, false ]
}
tracks/6/type = "value"
tracks/6/path = NodePath("Axle/JointBack:position")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( -10, -4 ) ]
}
tracks/7/type = "value"
tracks/7/path = NodePath("Axle/JointBack:rotation_degrees")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 0.0 ]
}
tracks/8/type = "value"
tracks/8/path = NodePath("Axle/JointBack/LegBack:position")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ) ]
}
tracks/9/type = "value"
tracks/9/path = NodePath("Axle/JointBack/LegBack:rotation_degrees")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -26.8344 ]
}
tracks/10/type = "value"
tracks/10/path = NodePath("Axle/JointBack/LegBack/KneeBack:position")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0, 36 ) ]
}
tracks/11/type = "value"
tracks/11/path = NodePath("Axle/JointBack/LegBack/KneeBack:rotation_degrees")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/imported = false
tracks/11/enabled = true
tracks/11/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 0.0 ]
}
tracks/12/type = "value"
tracks/12/path = NodePath("Axle/JointBack/LegBack/KneeBack/ShinBack:position")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/imported = false
tracks/12/enabled = true
tracks/12/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ) ]
}
tracks/13/type = "value"
tracks/13/path = NodePath("Axle/JointBack/LegBack/KneeBack/ShinBack:rotation_degrees")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/imported = false
tracks/13/enabled = true
tracks/13/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 51.0254 ]
}
tracks/14/type = "value"
tracks/14/path = NodePath("Axle/JointBack/LegBack/KneeBack/ShinBack/FootBack:position")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/imported = false
tracks/14/enabled = true
tracks/14/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0.00983047, 47.8521 ) ]
}
tracks/15/type = "value"
tracks/15/path = NodePath("Axle/JointBack/LegBack/KneeBack/ShinBack/FootBack:rotation_degrees")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/imported = false
tracks/15/enabled = true
tracks/15/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -25.1199 ]
}
tracks/16/type = "value"
tracks/16/path = NodePath("Axle/JointFront:position")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/imported = false
tracks/16/enabled = true
tracks/16/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 11, -4 ) ]
}
tracks/17/type = "value"
tracks/17/path = NodePath("Axle/JointFront:rotation_degrees")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/imported = false
tracks/17/enabled = true
tracks/17/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 0.0 ]
}
tracks/18/type = "value"
tracks/18/path = NodePath("Axle/JointFront/LegFront:position")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/imported = false
tracks/18/enabled = true
tracks/18/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ) ]
}
tracks/19/type = "value"
tracks/19/path = NodePath("Axle/JointFront/LegFront:rotation_degrees")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/imported = false
tracks/19/enabled = true
tracks/19/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -26.8344 ]
}
tracks/20/type = "value"
tracks/20/path = NodePath("Axle/JointFront/LegFront/ShinFront:position")
tracks/20/interp = 1
tracks/20/loop_wrap = true
tracks/20/imported = false
tracks/20/enabled = true
tracks/20/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 3.8147e-06, 36 ) ]
}
tracks/21/type = "value"
tracks/21/path = NodePath("Axle/JointFront/LegFront/ShinFront:rotation_degrees")
tracks/21/interp = 1
tracks/21/loop_wrap = true
tracks/21/imported = false
tracks/21/enabled = true
tracks/21/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 51.0254 ]
}
tracks/22/type = "value"
tracks/22/path = NodePath("Axle/JointFront/LegFront/ShinFront/FootFront:position")
tracks/22/interp = 1
tracks/22/loop_wrap = true
tracks/22/imported = false
tracks/22/enabled = true
tracks/22/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0.00983047, 47.8521 ) ]
}
tracks/23/type = "value"
tracks/23/path = NodePath("Axle/JointFront/LegFront/ShinFront/FootFront:rotation_degrees")
tracks/23/interp = 1
tracks/23/loop_wrap = true
tracks/23/imported = false
tracks/23/enabled = true
tracks/23/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -25.1199 ]
}
tracks/24/type = "value"
tracks/24/path = NodePath("Axle/KneeBack:position")
tracks/24/interp = 1
tracks/24/loop_wrap = true
tracks/24/imported = false
tracks/24/enabled = true
tracks/24/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 6.25088, 28.1233 ) ]
}
tracks/25/type = "value"
tracks/25/path = NodePath("Axle/KneeBack:rotation_degrees")
tracks/25/interp = 1
tracks/25/loop_wrap = true
tracks/25/imported = false
tracks/25/enabled = true
tracks/25/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -8.65142e-06 ]
}
tracks/26/type = "value"
tracks/26/path = NodePath("Axle/KneeFront:position")
tracks/26/interp = 1
tracks/26/loop_wrap = true
tracks/26/imported = false
tracks/26/enabled = true
tracks/26/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 27.2509, 28.1233 ) ]
}
tracks/27/type = "value"
tracks/27/path = NodePath("Axle/KneeFront:rotation_degrees")
tracks/27/interp = 1
tracks/27/loop_wrap = true
tracks/27/imported = false
tracks/27/enabled = true
tracks/27/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ -8.65142e-06 ]
}
[sub_resource type="Animation" id=14]
resource_name = "stomping"
@ -1610,7 +1874,7 @@ update_scale = false
[node name="KneeBack" type="Sprite" parent="Axle"]
modulate = Color( 0.74902, 0.74902, 0.74902, 1 )
position = Vector2( 6.25089, 28.1233 )
position = Vector2( 6.25088, 28.1233 )
scale = Vector2( 1, -1 )
z_index = -1
texture = ExtResource( 8 )