You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

32 line
561 B

  1. extends Node
  2. signal all_coins_picked_up
  3. export var coin_scene : PackedScene
  4. var prout := false
  5. export var spawn_on_ready := false
  6. var coins := -1
  7. func _ready():
  8. if spawn_on_ready:
  9. spawn_coins(null)
  10. func spawn_coins(args):
  11. yield(get_tree(), "idle_frame")
  12. if not prout:
  13. coins = 0
  14. for spawn in get_children():
  15. var coin = coin_scene.instance()
  16. coin.connect("picked_up", self, "on_coin_picked_up")
  17. coins += 1
  18. spawn.add_child(coin)
  19. prout = true
  20. func on_coin_picked_up():
  21. coins -= 1
  22. if coins == 0:
  23. emit_signal("all_coins_picked_up")