extends Node2D var _time := 0.0 func _ready() -> void: z_index = -2 var label := Label.new() label.text = "WORMHOLE\nWleć, aby przejść do następnego układu" label.position = Vector2(-180, 72) label.size = Vector2(360, 44) label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER label.mouse_filter = Control.MOUSE_FILTER_IGNORE label.add_theme_font_size_override("font_size", 13) label.add_theme_color_override("font_color", Color("89e8ff")) add_child(label) func _process(delta: float) -> void: _time += delta queue_redraw() func _draw() -> void: var pulse := 1.0 + sin(_time * 2.5) * 0.06 for ring in range(6, 0, -1): draw_circle(Vector2.ZERO, (48.0 + ring * 4.0) * pulse, Color(0.28, 0.35, 0.95, 0.025 * (7 - ring))) draw_circle(Vector2.ZERO, 43.0, Color("040917")) for arm in 3: var points := PackedVector2Array() for segment in 65: var progress := segment / 64.0 var angle := progress * TAU * 1.3 + _time * 1.6 + TAU * arm / 3.0 points.append(Vector2.RIGHT.rotated(angle) * (8.0 + progress * 44.0) * pulse) draw_polyline(points, Color(0.35 + arm * 0.12, 0.55, 1.0, 0.8), 3.0, true) draw_arc(Vector2.ZERO, 49.0 * pulse, 0, TAU, 96, Color("8beaff"), 2.0, true)