extends Node2D var fading = false var falling = false var shrinkSpeed = 1.5 var fallSpeed = 90 func start_transition(itemSprite): fading = false falling = true %ItemSprite.texture = itemSprite func _process(delta): if falling: $ItemSprite.position += Vector2(0, fallSpeed * delta) $ItemSprite.scale -= Vector2(shrinkSpeed * delta, shrinkSpeed * delta) if $ItemSprite.scale.x <= 0.5: fading = true if fading: if %ItemSprite.self_modulate.a > 0: %ItemSprite.self_modulate.a -= 4 * delta if %ItemSprite.self_modulate.a < 0: %ItemSprite.self_modulate.a = 0 queue_free()