local player = game.Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local hrp = character:WaitForChild("HumanoidRootPart") local playerPosition = hrp.Position local giftboxes = {} for _, v in pairs(workspace:GetDescendants()) do if v:IsA("Model") and v.Name == "GiftBox" then table.insert(giftboxes, v) end end local radius = 5 for i, giftbox in pairs(giftboxes) do local angle = (i - 1) * (2 * math.pi / #giftboxes) local offsetX = math.cos(angle) * radius local offsetZ = math.sin(angle) * radius local offsetPosition = playerPosition + Vector3.new(offsetX, 0, offsetZ) local targetCFrame = CFrame.new(offsetPosition) if giftbox.PrimaryPart then giftbox:SetPrimaryPartCFrame(targetCFrame) else for _, part in pairs(giftbox:GetChildren()) do if part:IsA("BasePart") then part.CFrame = targetCFrame end end end end