24 lines
717 B
GDScript
24 lines
717 B
GDScript
extends Node2D
|
|
|
|
|
|
export var segments: int = 8
|
|
|
|
|
|
onready var segment: RigidBody2D = $Segment
|
|
|
|
|
|
func _ready() -> void:
|
|
var line = segment.get_node("Line")
|
|
line.default_color = line.default_color.darkened(rand_range(-0.1, 0.1))
|
|
var last_segment = $Segment
|
|
for i in segments:
|
|
var new_segment = last_segment.duplicate(0)
|
|
add_child(new_segment)
|
|
new_segment.position.x -= 3.0
|
|
var joint = last_segment.get_node("Joint")
|
|
joint.node_a = joint.get_path_to(last_segment)
|
|
joint.node_b = joint.get_path_to(new_segment)
|
|
new_segment.apply_central_impulse(Vector2(30.0, rand_range(-10.0, -100.0)))
|
|
last_segment = new_segment
|
|
position.x += 1.5 * float(segments)
|
|
Audio.play_sound(Audio.a_spaghetti, Audio.ac_boss)
|