2024-04-24 15:20:36 -04:00
|
|
|
extends Node2D
|
|
|
|
|
2024-04-26 16:32:56 -04:00
|
|
|
var riangle = preload("res://riangle-tar.tscn")
|
2024-04-24 15:20:36 -04:00
|
|
|
|
|
|
|
func spawn():
|
|
|
|
var tween = get_tree().create_tween()
|
|
|
|
tween.set_parallel(true)
|
|
|
|
tween.set_trans(Tween.TRANS_QUAD).set_ease(Tween.EASE_OUT)
|
|
|
|
for zone in get_children():
|
|
|
|
var node = riangle.instantiate()
|
|
|
|
zone.add_child(node)
|
|
|
|
node.global_rotation = zone.global_rotation
|
|
|
|
node.global_position = global_position
|
2024-04-26 16:32:56 -04:00
|
|
|
tween.tween_property(node, "position", Vector2.ZERO, 0.5)
|
2024-04-25 15:27:00 -04:00
|
|
|
|
|
|
|
func eject():
|
|
|
|
for spawner in get_children():
|
|
|
|
var riangle = spawner.get_child(0)
|
2024-04-29 16:27:25 -04:00
|
|
|
if riangle == null:
|
|
|
|
return
|
2024-04-30 15:37:00 -04:00
|
|
|
riangle.freeze = false
|
|
|
|
riangle.apply_central_impulse(Vector2(500, randi_range(-100, 100)).rotated(spawner.rotation))
|
2024-04-29 16:27:25 -04:00
|
|
|
await get_tree().create_timer(0.05).timeout
|
2024-04-30 15:37:00 -04:00
|
|
|
if riangle == null:
|
|
|
|
return
|
|
|
|
|
2024-04-29 16:27:25 -04:00
|
|
|
riangle.reparent($/root/Node2D)
|
2024-04-25 15:27:00 -04:00
|
|
|
|
2024-04-29 16:27:25 -04:00
|
|
|
await get_tree().create_timer(0.1).timeout
|