Hey guys,
So today I was attempting to make a Part
Weld
above my Character
's head and when I hold the key 'Q' on my keyboard down it is supposed to(and it does) keep multiplying the number that the function
returns and keeps multiplying the C0
of the Weld
.
local player = game.Players.LocalPlayer; local uis = game:GetService("UserInputService"); local deb = false; local num = 0; function number() while deb == true do wait(); num = num + 0.01; return num; end end function fun(inputObject, gp) if inputObject.KeyCode == Enum.KeyCode.Q and not gp then pcall(function() deb = true; local part = Instance.new("Part", workspace); local weld = Instance.new("Weld", part); local char = player.Character; local torso = char:WaitForChild("Torso"); part.Name = player.userId; part.Shape = "Ball"; part.CanCollide = false; part.Anchored = false; part.TopSurface = "Smooth"; part.BottomSurface = "Smooth"; part.BrickColor = BrickColor:random(); part.Reflectance = math.random(); part.Transparency = math.random(); part.CFrame = torso.CFrame; weld.Part0 = part; weld.Part1 = torso; weld.C0 = CFrame.new(0, -6, 0); while deb == true do wait(); local numb = number(); print(numb); weld.C0 = weld.C0 * CFrame.fromEulerAnglesXYZ(0, numb, 0); end end) end end function ended(inputObject, gp) if inputObject.KeyCode == Enum.KeyCode.Q and not gp then deb = false; local part = workspace:findFirstChild(player.userId); part:Destroy(); num = 0; end end uis.InputEnded:connect(ended); uis.InputBegan:connect(fun);
Torso
's position to be under the Baseplate
and then I am the one spinning around rather then the other Part
. There is only one error that I had and I think I understand why it is but, if there's a method that any of you guys have to fix it that would be appreciated.19:47:33.113 - Players.KingLoneCat.PlayerGui.LocalScript:39: bad argument #2 to 'fromEulerAnglesXYZ' (number expected, got nil) 19:47:33.114 - Stack Begin 19:47:33.115 - Script 'Players.KingLoneCat.PlayerGui.LocalScript', Line 39 19:47:33.116 - Stack End