revo-jailbreak/objects/environment/spaghetti/spaghetti.gd
2023-09-16 00:49:09 -04:00

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)