
Key RequiredUniversal

--[[
WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk!
]]
local player = game.Players.LocalPlayer
local character = player.Character
local humanoid = character:FindFirstChildOfClass("Humanoid")
local moonwalk = false
local playing = false
local playanim
local oldspd = 0
local oldjp = 0
local function AddGui()
local gui = Instance.new("ScreenGui", player.PlayerGui)
gui.Name = "DanceToolGui"
local dances = {"http://www.roblox.com/asset/?id=27789359",
"http://www.roblox.com/Asset?ID=35654637",
"http://www.roblox.com/Asset?ID=30196114",
"http://www.roblox.com/Asset?ID=178130996",
"http://www.roblox.com/Asset?ID=28440069",
"http://www.roblox.com/Asset?ID=45504977",
"http://www.roblox.com/Asset?ID=183294396",
"http://www.roblox.com/Asset?ID=35154961",
"http://www.roblox.com/Asset?ID=75354915",
"http://www.roblox.com/Asset?ID=54145508"}
local frame = Instance.new("ScrollingFrame", gui)
local list = Instance.new("UIGridLayout", frame)
frame.Position = UDim2.new(0.792, 0, 0.188, 0)
frame.Size = UDim2.new(0.193, 0, 0.574, 0)
frame.BackgroundColor3 = Color3.fromRGB(8, 162, 0)
list.CellSize = UDim2.new(0, 70, 0, 70)
list.CellPadding = UDim2.new(0, 10, 0, 10)
for i in dances do
local danceid = dances[i]
local button = Instance.new("TextButton", frame)
button.BackgroundColor3 = Color3.fromRGB(122, 216, 0)
button.Text = "Dance"..i
local anim = Instance.new("Animation", button)
anim.AnimationId = danceid
local track = humanoid:LoadAnimation(anim)
track.Looped = true
button.MouseButton1Click:Connect(function()
if playing == false then
track:Play()
playanim = track
playing = true
if i == 3 then
wait(3)
moonwalk = true
end
else
playanim = nil
if i == 3 then
moonwalk = false
end
track:Stop()
playing = false
end
end)
end
end
local function DelGui()
local gui = player.PlayerGui:FindFirstChild("DanceToolGui")
if gui then
gui:Destroy()
end
end
local function AddTool()
local tool = Instance.new("Tool", player.Backpack)
tool.Name = "DanceTool"
local handle = Instance.new("Part", tool)
handle.Name = "Handle"
handle.Transparency = 1
handle.CanCollide = false
tool.Equipped:Connect(function()
AddGui()
end)
tool.Unequipped:Connect(function()
moonwalk = false
DelGui()
for _,anim in pairs(humanoid:GetPlayingAnimationTracks()) do
anim:Stop()
end
end)
humanoid.Died:Connect(function()
moonwalk = false
tool:Destroy()
DelGui()
script:Destroy()
end)
end
AddTool()
local hrp : Part = character.HumanoidRootPart
local torso = character.Torso
while wait() do
if moonwalk then
if not hrp:FindFirstChildOfClass("BodyVelocity") and not hrp:FindFirstChildOfClass("BodyGyro") then
oldspd = humanoid.WalkSpeed
oldjp = humanoid.JumpPower
humanoid.WalkSpeed = 0
humanoid.JumpPower = 0
local bv = Instance.new("BodyVelocity", hrp)
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Velocity = ((torso.CFrame * CFrame.new(0,0,5)).p - torso.CFrame.p).unit * 5
local gyro = Instance.new"BodyGyro"
gyro.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
gyro.CFrame = hrp.CFrame
gyro.Parent = hrp
end
else
if hrp:FindFirstChildOfClass("BodyVelocity") and hrp:FindFirstChildOfClass("BodyGyro") then
humanoid.WalkSpeed = oldspd
humanoid.JumpPower = oldjp
hrp:FindFirstChildOfClass("BodyVelocity"):Destroy()
hrp:FindFirstChildOfClass("BodyGyro"):Destroy()
print("destroy", humanoid.WalkSpeed, humanoid.JumpPower, oldspd, oldjp)
end
end
if playing == true then
for _,anim in pairs(humanoid:GetPlayingAnimationTracks()) do
if anim ~= playanim then
anim:Stop()
end
end
end
endNo comments yet for this script.



![Item Spawner - Bypass Gamepass [OPEN-SOURCE]](https://scriptblox.com/images/sb/rbx-2736e5de37c3d8bc17e5e9bd07d73e38-cc0a9732451c.png)