Coin.gd 706 B

1234567891011121314151617181920212223242526272829
  1. extends Node2D
  2. const COIN_SPARKLE = preload("res://Scenes/Prefabs/Particles/CoinSparkle.tscn")
  3. @export var spinning_coin_scene: PackedScene = null
  4. signal collected
  5. func area_entered(area: Area2D) -> void:
  6. if area.owner is Player:
  7. collect()
  8. func collect() -> void:
  9. collected.emit()
  10. Global.coins += 1
  11. DiscoLevel.combo_meter += 10
  12. Global.score += 200
  13. AudioManager.play_sfx("coin", global_position)
  14. queue_free()
  15. func summon_block_coin() -> void:
  16. var node = spinning_coin_scene.instantiate()
  17. node.global_position = global_position
  18. add_sibling(node)
  19. queue_free()
  20. func summon_particle() -> void:
  21. var node = COIN_SPARKLE.instantiate()
  22. node.global_position = global_position
  23. add_sibling(node)