Problems with creating animation for loading screen

Hey, I was making a loading screen and was going to make a cool animation to it, little bit in and I couldn’t find a solution to make it how I wanted it to look.

I couldn’t find any animations on it so I’ll try to describe it as best I can. 10 dots are all at the center of the screen. They spread out to create a dotted circle, then go back to the center.


This is the current code I am dealing with:


local RunService = game:GetService("RunService")
local PartCache = {}
----------------------------------------------------------------------------------
for i = 1,30 do
	local Frame = Instance.new("Frame", script.Parent.ScreenGui)
	Frame.Size = UDim2.new(0,10,0,10)
	local ui_corner = Instance.new("UICorner", Frame)
	ui_corner.CornerRadius = UDim.new(1,0)
	PartCache[i] = Frame
end
----------------------------------------------------------------------------------
RunService.RenderStepped:Connect(function()
	for i = 1,#PartCache,1 do
		local Frame = PartCache[i]
		local r = i - #PartCache/2
		local x = math.sin((tick())*7)*(r*5)
		local y = math.sin((tick()+i)*3)*(r*5)
		Frame.Position = UDim2.new(0.5,x,0.5,y)
	end
end)