mirror of
https://github.com/JHDev2006/Super-Mario-Bros.-Remastered-Public.git
synced 2025-10-22 15:38:14 +00:00
added the game
This commit is contained in:
37
Scripts/Classes/Blocks/DonutBlock.gd
Normal file
37
Scripts/Classes/Blocks/DonutBlock.gd
Normal file
@@ -0,0 +1,37 @@
|
||||
extends StaticBody2D
|
||||
|
||||
var falling := false
|
||||
var can_fall := false
|
||||
|
||||
const FALL_SPEED := 96
|
||||
|
||||
@onready var starting_position := global_position
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
if falling:
|
||||
global_position.y += FALL_SPEED * delta
|
||||
if $PlayerDetection.is_player_in_area():
|
||||
$Sprite.play("Fall")
|
||||
elif not falling:
|
||||
$Sprite.play("Idle")
|
||||
|
||||
func start_falling() -> void:
|
||||
falling = true
|
||||
$Collision.set_deferred("one_way_collision", true)
|
||||
$FallTimer.start()
|
||||
|
||||
|
||||
func respawn() -> void:
|
||||
$Collision.set_deferred("one_way_collision", false)
|
||||
can_fall = true
|
||||
falling = false
|
||||
global_position = starting_position
|
||||
$AnimationPlayer.play("Grow")
|
||||
|
||||
|
||||
func on_player_entered() -> void:
|
||||
$AnimationPlayer.play("Shake")
|
||||
|
||||
|
||||
func on_player_exited() -> void:
|
||||
$AnimationPlayer.play("RESET")
|
Reference in New Issue
Block a user