[!!] Im NOT asking for a request. (Obv) [!!]
Anyways.. This runs fast and fairly smooth, but the problem is, when I walk the the parts in a cirle around my head they lag and I dont like that, at all. I would like them to not skip some vector3'ing to get to there position. I had someone look at this a couple days ago and he just told me "#CamelRotation2015".
Can anyone help me making this not so laggy when talking or at least show me a few points of slowness?
local Rot1 = .1
local Rot2 = .001
local LerpRot = .03
function ConnectTablets()
coroutine.wrap(function()
for _, Player in pairs(game.Players:GetPlayers()) do
local CurrentTabs = {}
local Character_Pos = nil
for Index,Tablet in next,Gravity_V4._Tablets do
if(not(Tablet.Tab and Tablet.Tab:isDescendantOf(workspace)))then
ypcall(game.destroy,Tablet.Tab);
table.remove(Gravity_V4._Tablets,Index);
elseif(Tablet.Plr==Player.userId)then
table.insert(CurrentTabs,Tablet);
end;
end;
pcall(function()
if Player.Character.Parent ~= nil and Player.Character.Torso.Parent ~= nil then
Rot1=Rot1+Rot2
pcall(function()
Character_Pos = CFrame.new(Player.Character:WaitForChild("Head").CFrame.p)
end)
local run,error = ypcall(function()
for i,v in pairs(CurrentTabs) do
if v.Tab.Parent ~= nil and v.Plr == Player.userId then
local Radius1 = CFrame.new(0,0,-4.5-#CurrentTabs)
local Radius2 = Radius1*CFrame.Angles(math.rad(25),0,0)
local cfr = Character_Pos*CFrame.Angles(.001,math.rad((i*(360/#CurrentTabs))+Rot1),0)*Radius2 -- 360/#Gravity_V4._Tablets
local Pos = v.Tab.CFrame.p
Pos = Pos:Lerp(cfr.p,LerpRot)
v.Tab.CFrame = CFrame.new(Pos)*v.Gyro.cframe
v.Gyro.cframe = v.Gyro.cframe*CFrame.Angles(math.rad(.1),math.rad(.1),math.rad(.1))
end
end
end)
if not run then print(error) end
end
end)
end
end)()
end
