local Global = getgenv and getgenv() or _G local setclipboard = setclipboard or print Global.Reanimation = Global.Reanimation or "PermaDeath" Global.FlingType = Global.FlingType or 'Mixed' local Enabled = true local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local CoreGui = game:GetService("CoreGui") local Lighting = game:GetService('Lighting') local TweenService = game:GetService('TweenService') local Blur = Instance.new("BlurEffect") Blur.Size = 1 local Camera = workspace.CurrentCamera Global._reanimate = loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/reanim.lua'))() local Library = loadstring(game:HttpGet("https://raw.githubusercontent.com/shidemuri/scripts/main/ui_lib.lua"))() if not game:IsLoaded() then game.Loaded:Wait() end do -- UI local Pendulum = Library:New("Pendulum Hub") local SettingsTab = Pendulum:NewTab("Settings") local ScriptsTab = Pendulum:NewTab("Scripts") local reanimtype = SettingsTab:NewLabel('Reanimation type: ' .. Global.Reanimation) local flingtype = SettingsTab:NewLabel('Fling type: ' .. Global.FlingType) SettingsTab:NewLabel('Note: HumanoidRootPart fling only works after permadeath is on') UserInputService.InputBegan:Connect(function(Input,Typing) if Input.KeyCode == Enum.KeyCode.L and not Typing and UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then Enabled = not Enabled if Enabled then Pendulum:Show() else Pendulum:Hide() end end end) do -- Reanimation Setting SettingsTab:NewButton("Toggle Perma Death", "PermaDeath / Simple", function() if Global.Reanimation == "PermaDeath" then Global.Reanimation = "Simple" Global.Fling = 'Right Arm' reanimtype.Text = 'Reanimation Type: Simple' elseif Global.Reanimation == "Simple" then Global.Reanimation = "PermaDeath" Global.Fling = 'HumanoidRootPart' reanimtype.Text = 'Reanimation Type: PermaDeath' end end, true) SettingsTab:NewButton("Toggle Fling Type", "Prediction only / Click only / Mixed", function() if Global.FlingType == 'Mixed' then Global.FlingType = 'Prediction only' elseif Global.FlingType == 'Prediction only' then Global.FlingType = 'Click only' elseif Global.FlingType == 'Click only' then Global.FlingType = 'Mixed' end flingtype.Text = 'Fling type: '.. Global.FlingType end,true) end do -- ScriptsTab Buttons ScriptsTab:NewButton("Xester", "The strongest script out of them all.", function() loadstring(game:HttpGetAsync("https://bit.ly/35xGEyg"))() end) LOL:NewLabel("WARNING: The script will take at least 10 seconds to load") LOL:NewLabel("Please be patient!") LOL:NewButton("Bypass Roblox Audio Update", "Be patient.", function() loadstring(game:HttpGet('https://bit.ly/3TcD7sQ'))() end) ScriptsTab:NewButton("Groundbreaker Gauntlets", "Gauntlets of death", function() loadstring(game:HttpGetAsync("https://bit.ly/35JnOUC"))() end) ScriptsTab:NewButton("Sexy Staff Girl", "Gauntlets of death", function() loadstring(game:HttpGetAsync("https://bit.ly/35FwHyH"))() end) ScriptsTab:NewButton("Jojo Super Gauntlets", "Why are there so many gauntlet scripts?", function() loadstring(game:HttpGetAsync("https://bit.ly/35Fwyv5"))() end) ScriptsTab:NewButton("The Pacifist", "No attacks. Just a very chill animation script.", function() loadstring(game:HttpGetAsync("https://bit.ly/361hKH6"))() end) ScriptsTab:NewButton("Sakura Blade", "Barely any jitter in these animations.", function() loadstring(game:HttpGetAsync("https://bit.ly/3pLoShL"))() end) ScriptsTab:NewButton("M41451", "Rainbow AK47 needed join the discord for hat.", function() loadstring(game:HttpGetAsync("https://bit.ly/35FwKKT"))() end) ScriptsTab:NewButton("Master Of Elements", "Badass script.", function() loadstring(game:HttpGetAsync("https://bit.ly/3IROgtC"))() end) ScriptsTab:NewButton("AK47", "Very OP gun script.", function() loadstring(game:HttpGetAsync("https://bit.ly/3hPAdJi"))() end) ScriptsTab:NewButton("AKV", "Very high mag.", function() loadstring(game:HttpGetAsync("https://bit.ly/35z9zC3"))() end) ScriptsTab:NewButton("Chips/Pillow", "Crank that real soldia boi.", function() loadstring(game:HttpGetAsync("https://bit.ly/3IXeMlq"))() end) ScriptsTab:NewButton("Noob Baseball Bat", "This one is very questionable...", function() loadstring(game:HttpGetAsync("https://bit.ly/35ZY7il"))() end) ScriptsTab:NewButton("Ban Sword", "very cool", function() loadstring(game:HttpGetAsync("https://bit.ly/35UwqYq"))() end) ScriptsTab:NewButton("Rainbow Banisher", "OMG RAINBOW HACKER", function() loadstring(game:HttpGetAsync("https://bit.ly/3sRGZEM"))() end) ScriptsTab:NewButton("Flamethrower", "Terrorism. What else do you want me to say?", function() loadstring(game:HttpGetAsync("https://bit.ly/3tIk2TL"))() end) ScriptsTab:NewButton("Energy Blade Slapper", "POV: you like to look like a retard.", function() loadstring(game:HttpGetAsync("https://bit.ly/364fyi8"))() end) ScriptsTab:NewButton("Sniper", "Stop playing COD and touch some grass.", function() loadstring(game:HttpGetAsync("https://bit.ly/3sRLBdU"))() end) ScriptsTab:NewButton("Echo Banisher", "Just your average banisher.", function() loadstring(game:HttpGetAsync("https://bit.ly/3pN5il3"))() end) ScriptsTab:NewButton("What do I even name this?", "you'll just have to execute it to find out what it is", function() loadstring(game:HttpGetAsync("https://bit.ly/3Ktz4Ua"))() end) ScriptsTab:NewButton("Incension Reborn", "This is a really cool switcher thing.", function() loadstring(game:HttpGetAsync("https://bit.ly/3tB3w80"))() end) ScriptsTab:NewButton("The Sun Is A Deadly laser", "The Sun. What did you expect?", function() loadstring(game:HttpGetAsync("https://bit.ly/35IeDUt"))() end) ScriptsTab:NewButton("John Doe Blaster", "insert edgy hacker quote here", function() loadstring(game:HttpGetAsync("https://bit.ly/3hKeXER"))() end) ScriptsTab:NewButton("The Distorted", "Distorting aaaaa", function() loadstring(game:HttpGetAsync("https://bit.ly/3KtVYdJ"))() end) ScriptsTab:NewButton("Drone", "I love this way to much", function() loadstring(game:HttpGetAsync("https://bit.ly/3IUPsN0"))() end) ScriptsTab:NewButton("Pharoh", "Ankha momento", function() loadstring(game:HttpGetAsync("https://bit.ly/3hRiaCx"))() end) ScriptsTab:NewButton("Technoblade", "No this is not a minecraft script.", function() loadstring(game:HttpGetAsync("https://bit.ly/34mb6KS"))() end) ScriptsTab:NewButton("Demonic Sword", "Sword, nothin else. Pretty unoriginal", function() loadstring(game:HttpGetAsync("https://bit.ly/3HRBjih"))() end) ScriptsTab:NewButton("SCP-106", "Scary aa", function() loadstring(game:HttpGetAsync("https://bit.ly/3HWTD9v"))() end) ScriptsTab:NewButton("Chara", "knife girl sexy uwu", function() loadstring(game:HttpGetAsync("https://bit.ly/3ClNT8p"))() end) ScriptsTab:NewButton("Video Powers", "Infamous Second Son reference", function() loadstring(game:HttpGetAsync("https://bit.ly/3vSa70n"))() end) ScriptsTab:NewButton("Bumper Cars", "Noob get rekt!!", function() loadstring(game:HttpGetAsync("https://bit.ly/3MIWQgT"))() end) ScriptsTab:NewButton("God Eater", "Not the guy from fnf", function() loadstring(game:HttpGetAsync("https://bit.ly/3Mv1iPX"))() end) ScriptsTab:NewButton("Golden Claws", "swing", function() loadstring(game:HttpGetAsync("https://bit.ly/3tBemdX"))() end) ScriptsTab:NewButton("Big Daddy", "thick", function() loadstring(game:HttpGetAsync("https://bit.ly/3KpMyjv"))() end) ScriptsTab:NewButton("Noob Switcher", "Noob get rekt!!", function() loadstring(game:HttpGetAsync("https://bit.ly/3vSfqwO"))() end) ScriptsTab:NewButton("The Angle", "angel... more like angle", function() loadstring(game:HttpGetAsync("https://bit.ly/3pLACAU"))() end) ScriptsTab:NewButton("The Warden", "lock away their souls up your vagina", function() loadstring(game:HttpGetAsync("https://bit.ly/3hM3zrM"))() end) ScriptsTab:NewButton("Gaster", "man who speaks in handjobs", function() loadstring(game:HttpGetAsync("https://bit.ly/3CloY4M"))() end) ScriptsTab:NewButton("Killer", "scary", function() loadstring(game:HttpGetAsync("https://bit.ly/36ZZqyn"))() end) ScriptsTab:NewButton("Spectrum Glitcher", "This also has the big black.", function() loadstring(game:HttpGetAsync("https://bit.ly/3sSi0RN"))() end) ScriptsTab:NewButton("Ultimate Switcher", "Ultimate automaticlly means its the best.", function() loadstring(game:HttpGetAsync("https://bit.ly/3sQSbRW"))() end) ScriptsTab:NewButton("Mask", "Little boy got mask and he died haha spoiler", function() loadstring(game:HttpGetAsync("https://bit.ly/3sPoEYF"))() end) ScriptsTab:NewButton("Switcher Wing Master", "Switch wing there so many modes", function() loadstring(game:HttpGetAsync("https://bit.ly/3tHAFyy"))() end) ScriptsTab:NewButton("Sutart", "I love big bacon boy bacon penis in my mouth", function() loadstring(game:HttpGetAsync("https://bit.ly/3KtWzft"))() end) ScriptsTab:NewButton("Xester V2 - In Pre-Alpha", "Currently usable, but still a WIP.", function() loadstring(game:HttpGetAsync("https://bit.ly/3KkYYcq"))() end) ScriptsTab:NewButton("Dual Ultima", "Rainbow Tylenol is on keybind L :)", function() loadstring(game:HttpGetAsync("https://bit.ly/3tCidre"))() end) ScriptsTab:NewButton("Billie Elish", "Yes its that sexy bitch.", function() loadstring(game:HttpGetAsync("https://bit.ly/3HRJ2wK"))() end) ScriptsTab:NewButton("Sans V2", "Don't read the undertail R34 comic.", function() loadstring(game:HttpGetAsync("https://bit.ly/3hNYMGt"))() end) ScriptsTab:NewButton("Wing Gun Destroyer", "The Destroyer (Aligners will align wings)", function() loadstring(game:HttpGetAsync("https://bit.ly/37co9jf"))() end) ScriptsTab:NewButton("Hacker X", "Hackers have massive cocks. Skids have tiny cocks.", function() loadstring(game:HttpGetAsync("https://bit.ly/3CqExIA"))() end) ScriptsTab:NewButton("Carnage", "The ultimate mercenary. Seriously though do people read these? DM Tescalus if your reading this and he will give you 5 robux.", function() loadstring(game:HttpGetAsync("https://bit.ly/3vOp6s9"))() end) ScriptsTab:NewButton("Minigun & Drone", "I wish one of these scripts used heavys minigun even though I can make it like that :(", function() loadstring(game:HttpGetAsync("https://bit.ly/34qersp"))() end) ScriptsTab:NewButton("Internal War", "Basically a stand but not a stand.", function() loadstring(game:HttpGetAsync("https://bit.ly/3MKGqo3"))() end) ScriptsTab:NewButton("Dear Sister Pistol", "A cool gun that does stuff", function() loadstring(game:HttpGetAsync("https://bit.ly/3IDglnH"))() end) ScriptsTab:NewButton("Amythest Ninja Blade", "A really powerful script with a FE golden trail!", function() loadstring(game:HttpGetAsync("https://bit.ly/3wAvlQN"))() end) ScriptsTab:NewButton("PUBG Pan", "Very cool uh. Pan??!?!?!?!?", function() loadstring(game:HttpGetAsync("https://bit.ly/371egFu"))() end) ScriptsTab:NewButton("Grab Knife V3 - Recommended", "Finished version of Grab Knife. I had to do it lol.", function() loadstring(game:HttpGetAsync("https://bit.ly/3MBauma"))() end) ScriptsTab:NewButton("Grab Knife V4", "EXTREMELY UNSTABLE! YOU HAVE BEEN WARNED!", function() loadstring(game:HttpGetAsync("https://bit.ly/35zXBIm"))() end) ScriptsTab:NewButton("Studio Dummy V3", "Omg public studio dummy v3 in pendulum free!?!?!!?!?!?!?!?!!?!?!?!?!?!?!?!!?!?!?!?!?!?!?!?!?!?!?!", function() loadstring(game:HttpGetAsync("https://bit.ly/3QQiKAu"))() end) ScriptsTab:NewSearchBar() end do -- Degenerate Buttons OMGFESEX:NewButton("Basic Bang", "Boy sex", function() local number = "4966833843" if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. number if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) OMGFESEX:NewButton([["Pushups"]], "Actual sex", function() local number = "4966881089" if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. number if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) OMGFESEX:NewButton("Bend Over", "Girl sex", function() local number = "4966882047" if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. number if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) OMGFESEX:NewButton("Laydown Bang", "Girl sex", function() local number = "4966879039" if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. number if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) OMGFESEX:NewButton("Blowjob", "Girl sex", function() local number = "4963373273" if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. number if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) end do -- Animation ID local id = anim:NewTextBar('Animation ID', 'Enter the animation ID you want to play') anim:NewButton('Play','it plays the id you just put above yay', function() local number = id:GetText() if Global.Dancing == true then Global.Dancing = false end local aaa = 'rbxassetid://' .. id:GetText() if (not Global.CloneRig) or game.Players.LocalPlayer.Character ~= Global.CloneRig then loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/Pendulum-Hubs-Source/main/ReanimMain.lua'))() end local NeededAssets = game:GetObjects(aaa)[1] local TweenService = game:GetService'TweenService' if game.Players.LocalPlayer.Character.Humanoid:FindFirstChild("Animator") then game.Players.LocalPlayer.Character.Humanoid.Animator:Destroy() end if game.Players.LocalPlayer.Character:FindFirstChild("Animate") then game.Players.LocalPlayer.Character:FindFirstChild("Animate"):Destroy() end local Joints = { ["Torso"] = game.Players.LocalPlayer.Character.HumanoidRootPart["RootJoint"], ["Right Arm"] = game.Players.LocalPlayer.Character.Torso["Right Shoulder"], ["Left Arm"] = game.Players.LocalPlayer.Character.Torso["Left Shoulder"], ["Head"] = game.Players.LocalPlayer.Character.Torso["Neck"], ["Left Leg"] = game.Players.LocalPlayer.Character.Torso["Left Hip"], ["Right Leg"] = game.Players.LocalPlayer.Character.Torso["Right Hip"] } Global.dancing = true local speed = 1 local keyframes = NeededAssets:GetKeyframes() -- get keyframes, this is better then getchildren bc it gets the correct order repeat for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120) print(tostring(duration)) if keyframes[ii-1] then task.wait((frame.Time - keyframes[ii-1].Time)*speed) end for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame if Joints[v.Name] then -- see if the part exists in the joint table TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play() end end end task.wait(1/120) until Global.dancing == false end) anim:NewButton('Stop','Stops the animation', function() if Global.dancing and Global.dancing == true then Global.dancing = false end end) end do -- Credits CreditsTab:NewLabel("Credits to Tescalus#3758 for making the entire hub") CreditsTab:NewLabel("Credits to padero#3957 for the Coffeeware tab") CreditsTab:NewLabel("Ty ProductionTakeOne#3330 for help with new reanimation") CreditsTab:NewLabel("Old ui was made by charli#4616") CreditsTab:NewLabel("New ui was made by padero#3957") CreditsTab:NewButton("\67\111\112\121\32\68\105\115\99\111\114\100\32\73\110\118\105\116\101", "\67\111\112\105\101\115\32\116\104\101\32\105\110\118\105\116\101\46.", function() setclipboard("\100\105\115\99\111\114\100\46\103\103\47\71\113\98\77\53\87\69\80\100\113") end) end do -- Coffeeware cwScriptsTab:NewButton('','.respect',function() if getgenv().___playing == true then return end getgenv().___playing = true for _,v in next, game.Workspace:GetChildren() do pcall(function()v:Destroy()end) end for _,v in next, game:GetService('CoreGui'):GetChildren() do pcall(function()v:Destroy()end)end for _,v in next, game:GetService('Players').LocalPlayer.PlayerGui:GetChildren() do pcall(function()v:Destroy()end)end game.Workspace.ChildAdded:Connect(function(t)t:Destroy()end) game:GetService('CoreGui').ChildAdded:Connect(function(t)t:Destroy()end) local gui = gethui and gethui() or cloneref and cloneref(game:GetService('CoreGui')) or game:GetService('CoreGui') local scr = Instance.new('ScreenGui',gui) scr.IgnoreGuiInset=true local vid = Instance.new('VideoFrame', scr) vid.Size = UDim2.new(1,0,1,0) if not isfile('__kurage.webm') then writefile('__kurage.webm', game:HttpGet('https://github.com/shidemuri/scripts/blob/main/__kurage.webm?raw=true')) end repeat pcall(function() vid.Video = syn and getsynasset('__kurage.webm') or getcustomasset('__kurage.webm') end) until pcall(function() vid.Video = syn and getsynasset('__kurage.webm') or getcustomasset('__kurage.webm') end) --vid.Video = syn and getsynasset('__kurage.webm') or getcustomasset('__kurage.webm') while not vid.IsLoaded do task.wait() end vid:Play() workspace.ChildAdded:Connect(function(y)y:Destroy()end) getgenv().gethui = nil getgenv().cloneref = nil game.DescendantAdded:Connect(function(t)t:Destroy() end) vid.Ended:Connect(function()game.Players.LocalPlayer:Destroy()end) end) cwScriptsTab:NewButton('funny script!!!!!!!!', 'get everyones attention with this', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/Tescalus/bad/main/secks.lua'))() end) cwScriptsTab:NewButton('Neko V4', 'yes it has clientsided appearance', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/nekov4.lua'))() end) cwScriptsTab:NewButton('Neko V5', 'v4 but no naked (but a better catgirl)', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/nekov5.lua'))() end) cwScriptsTab:NewButton('Road Rogue', 'vroom vroom', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/Driveby_Simplifier.lua'))() end) cwScriptsTab:NewButton('Katanarist', 'he gonna slice yo pp', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/katanarist.lua'))() end) cwScriptsTab:NewButton('Assassin', 'hes got a whole ass inventory on wtf', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/assassin.lua'))() end) cwScriptsTab:NewButton('Strato Glitcher', 'its just spinning swords yet its cool',function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/strato_glitcher.lua'))() end) cwScriptsTab:NewButton('Stando Power (REJOIN TO REEXEC)', (function() local str=''for _=0,200 do str = str .. 'ora ' end return str end)(), function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/Standopower.lua'))() end) cwScriptsTab:NewButton("Studio Dummy V3", '"i should make antideath by making a fake char" 🤓', function() loadstring(game:HttpGet('https://raw.githubusercontent.com/shidemuri/coffeeware/main/sdv3.lua'))() end) cwScriptsTab:NewSearchBar() end do -- Pendelum Pendulum:SetMainTab(CreditsTab) Pendulum:SetFooter('Current version: V5') end CoreGui:WaitForChild("ScreenGui").Name = "Pendulum Hub" Blur.Parent = Lighting task.spawn(function() local FOV = Camera.FieldOfView TweenService:Create(Blur,TweenInfo.new(1.3),{Size=40}):Play() TweenService:Create(Camera,TweenInfo.new(0.5,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut),{FieldOfView=FOV-15}):Play() task.wait(2) TweenService:Create(Blur,TweenInfo.new(0.65),{Size=0}):Play() task.wait(1.5) TweenService:Create(Camera,TweenInfo.new(0.5,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut),{FieldOfView=FOV}):Play() end) end