From d18ff78b980805a83e57626e80255339488b54d4 Mon Sep 17 00:00:00 2001 From: Simon Ward Date: Thu, 22 Jan 2026 18:47:56 +1300 Subject: [PATCH] gears: made balls despawn after 5 seconds --- gears/ball.gd | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gears/ball.gd b/gears/ball.gd index 098ce8d..9d547d6 100644 --- a/gears/ball.gd +++ b/gears/ball.gd @@ -6,10 +6,13 @@ func gear_id(): return 1 func continuous(): return false +func kill_ball(ball): + ball.queue_free() func make_ball(player): var ball = RigidBody3D.new() var cs = CollisionShape3D.new() + var timer = Timer.new() cs.shape = SphereShape3D.new() ball.name = "Ball" ball.mass = 4 @@ -20,11 +23,16 @@ func make_ball(player): ball.set_collision_layer_value(1, false) ball.set_collision_layer_value(3, true) ball.set_collision_mask_value(3, true) + timer.one_shot = true + timer.autostart = true + timer.wait_time = 5 + timer.timeout.connect(kill_ball.bind(ball)) var mesh = $GearMesh.duplicate() mesh.position = Vector3.ZERO ball.add_child(mesh) ball.add_child(cs) + ball.add_child(timer) return ball