This script goes in the frame
while true do script.Parent.Rotation=script.Parent.Rotation-UDim2.new(45) wait() end
For rotation a GUI you don't really need UDim2.new
because you'll get error.
The Rotation
take only one number because Its 2D
Here your code fixed:
while true do script.Parent.Rotation = script.Parent.Rotation - 45 wait() end
if you want it more beautifull you just need to just your number 45
and for this you can create a variable like this:
local rotation = 45
now you can write the rest of your code put you need to change 45 for the name of the variable
local rotation = 45 while true do script.Parent.Rotation = script.Parent.Rotation - rotation wait() end
Now lets make it more beautifull, theyre is two way for that the first way, you can change the secondes you want to wait or change the rotation
local rotation = 10 while true do script.Parent.Rotation = script.Parent.Rotation - rotation wait() end
there is now really more beautifull than later and if you want it more fast you can use
wait(0)-- faster than wait()
or again
game:GetService("RunService").RenderStepped:wait()-- faster than all
here we go, enjoy !