| 1234567891011121314151617181920212223242526272829 |
- extends PlayerState
- var can_fall := false
- func enter(msg := {}) -> void:
- player.z_index = 20
- can_fall = false
- player.velocity = Vector2.ZERO
- player.stop_all_timers()
- await get_tree().create_timer(0.5).timeout
- can_fall =true
- for i in 16:
- player.set_collision_mask_value(i + 1, false)
- player.gravity = player.JUMP_GRAVITY
- if msg["Pit"] == false:
- player.velocity.y = -300
- func physics_update(delta: float) -> void:
- if can_fall:
- player.play_animation("Die")
- else:
- player.play_animation("DieFreeze")
- player.sprite.speed_scale = 1
- if can_fall:
- player.velocity.y += (player.JUMP_GRAVITY / delta) * delta
- player.velocity.y = clamp(player.velocity.y, -INF, player.MAX_FALL_SPEED)
- player.move_and_slide()
- if Input.is_action_just_pressed("jump_0"):
- player.death_load()
|