getgenv().deletewhendupefound = true local localplr = game.Players.LocalPlayer local lib = loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Lib-18698"))() lib.makelib("Troll Slapping Tower (2AreYouMental110)") local maintab = lib.maketab("Main") local slaptab = lib.maketab("Gloves") local buildtab = lib.maketab("Build") lib.makelabel("ALTS: normalxsx_casual1, normalxsx_casual2, normalxsx_casual3, normalxsx_casual4, normalxsx_casual5",maintab) local apb = false local ofs = -3.5 local conn = {} lib.maketoggle("Auto Place Block (Requires Block Glove)",maintab,function(bool) apb = bool while apb do task.wait() pcall(function() (workspace:FindFirstChild("BlockSlap",true) or game.Players:FindFirstChild("BlockSlap",true)).PlaceBlock:FireServer((localplr.Character.HumanoidRootPart.CFrame + Vector3.new(0,ofs,0)) * CFrame.fromEulerAnglesYXZ(math.rad(90),0,0)) end) end end) lib.maketextbox("Set Height Offset (-3.5 for floating platform)",maintab,function(txt) ofs = tonumber(txt) end) loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Anti-Slap-or-Fling-FOR-TROLL-GAMES-40702"))() local av = true lib.maketoggle("Infinite Yield Anti-Void",maintab,function(bool) av = bool end,true) local af = false lib.maketoggle("Anti-Time Stop (client sided)",maintab,function(bool) af = bool end) function da(c) if c:IsA("BasePart") then c:GetPropertyChangedSignal("Anchored"):Connect(function() if af and c.Anchored == true then c.Anchored = false end end) elseif c:IsA("Humanoid") then c:GetPropertyChangedSignal("WalkSpeed"):Connect(function() if af and c.WalkSpeed < 16 then c.WalkSpeed = 16 end end) c:GetPropertyChangedSignal("JumpPower"):Connect(function() if af and c.JumpPower < 50 then c.JumpPower = 50 end end) end end local OrgDestroyHeight = workspace.FallenPartsDestroyHeight workspace.FallenPartsDestroyHeight = -500000 local antivoidloop = game:GetService("RunService").Stepped:Connect(function() local root = (localplr.Character and localplr.Character:FindFirstChild("HumanoidRootPart")) if av and root and root.Position.Y <= OrgDestroyHeight + 25 then root.Velocity = root.Velocity + Vector3.new(0, 250, 0) end end) function onca(c) table.insert(conn,c.DescendantAdded:Connect(function(child) if nse and string.find(child.Name,"Velocity") then child:Destroy() localplr.Character.Humanoid.Sit = false localplr.Character.Humanoid.PlatformStand = false end da(child) end)) table.insert(conn,c.ChildAdded:Connect(function(child) da(child) end)) for i,v in pairs(c:GetChildren()) do da(v) end end if localplr.Character then onca(localplr.Character) end table.insert(conn,localplr.CharacterAdded:Connect(onca)) local aw = false local amtw = 1 lib.maketextbox("Set Win Multiplier (DO NOT SET HIGHER THAN 10/20 OTHERWISE YOU MAY CRASH!)",maintab,function(txt) amtw = tonumber(txt) end) lib.maketoggle("Auto Win",maintab,function(bool) aw = bool local winpad = nil for i,v in pairs(workspace:GetChildren()) do if v:IsA("BasePart") and v.Color == Color3.fromRGB(0,255,0) and v:FindFirstChildWhichIsA("ProximityPrompt") then winpad = v end end while aw do task.wait() for i=1,amtw do localplr.Character:PivotTo(winpad.CFrame) winpad.ProximityPrompt.HoldDuration = 0 fireproximityprompt(winpad.ProximityPrompt,0) end end end) local fxyz = Vector3.new(0,10,0) lib.maketextbox("Set Fling XYZ (seperate with commas, example: 0,10,0)",maintab,function(txt) local xyz = string.split(txt,",") fxyz = Vector3.new(tonumber(xyz[1]),tonumber(xyz[2]),tonumber(xyz[3])) end) lib.makebutton("Fling All Players",maintab,function() local event = nil for i,v in pairs(game.Players:GetPlayers()) do if v:FindFirstChild("Backpack") and v.Backpack:FindFirstChild("IsSlapTool",true) then event = v.Backpack:FindFirstChild("IsSlapTool",true).Parent.Event break elseif v.Character and v.Character:FindFirstChild("IsSlapTool",true) then event = v.Character:FindFirstChild("IsSlapTool",true).Parent.Event break end end if event then for i,v in pairs(game.Players:GetPlayers()) do if v.Character and v ~= localplr then task.wait() event:FireServer("slash",v.Character,fxyz) end end end end) local plrnames = {} local plrs = {} local plrdd = lib.makedropdown("Fling Player",maintab,{},function(plr) local event = nil local splr = plrs[plr] for i,v in pairs(game.Players:GetPlayers()) do if v:FindFirstChild("Backpack") and v.Backpack:FindFirstChild("IsSlapTool",true) then event = v.Backpack:FindFirstChild("IsSlapTool",true).Parent.Event break elseif v.Character and v.Character:FindFirstChild("IsSlapTool",true) then event = v.Character:FindFirstChild("IsSlapTool",true).Parent.Event break end end if event then event:FireServer("slash",splr.Character,fxyz) end end) function getname(plr) if plr then if plr.DisplayName == plr.Name then return plr.Name else return plr.DisplayName.."/"..plr.Name end end end lib.makebutton("Bring All Players",maintab,function() local event = nil if not localplr.Character:FindFirstChild("SwapperSlap") and not localplr.Backpack:FindFirstChild("SwapperSlap") then game.ReplicatedStorage.EquipSlapEvent:FireServer("SwapperSlap") localplr.Backpack:WaitForChild("SwapperSlap",99999).Parent = localplr.Character event = localplr.Character.SwapperSlap.Event elseif localplr.Backpack:FindFirstChild("SwapperSlap") then localplr.Backpack.SwapperSlap.Parent = localplr.Character event = localplr.Character.SwapperSlap.Event end if event then for i,v in pairs(game.Players:GetPlayers()) do if v.Character and v ~= localplr then event:FireServer("swap",localplr.Character.HumanoidRootPart.Position,localplr.Character.HumanoidRootPart.Position,v) end end end end) local plrdd2 = lib.makedropdown("Bring Player",maintab,{},function(plr) local event = nil local splr = plrs[plr] if not localplr.Character:FindFirstChild("SwapperSlap") and not localplr.Backpack:FindFirstChild("SwapperSlap") then game.ReplicatedStorage.EquipSlapEvent:FireServer("SwapperSlap") localplr.Backpack:WaitForChild("SwapperSlap",99999).Parent = localplr.Character event = localplr.Character.SwapperSlap.Event elseif localplr.Backpack:FindFirstChild("SwapperSlap") then localplr.Backpack.SwapperSlap.Parent = localplr.Character event = localplr.Character.SwapperSlap.Event end if event then event:FireServer("swap",localplr.Character.HumanoidRootPart.Position,localplr.Character.HumanoidRootPart.Position,splr) end end) function dp(plr,ns) local name = getname(plr) table.insert(plrnames,name) table.sort(plrnames,function(a,b) return a:lower() < b:lower() end) if not ns then lib.updatedropdown(plrdd,plrnames) lib.updatedropdown(plrdd2,plrnames) end plrs[name] = plr end for i,v in pairs(game.Players:GetPlayers()) do dp(v,true) end lib.updatedropdown(plrdd,plrnames) lib.updatedropdown(plrdd2,plrnames) table.insert(conn,game.Players.PlayerAdded:Connect(dp)) table.insert(conn,game.Players.PlayerRemoving:Connect(function() local name = getname(plr) pcall(function() plrs[name] = nil table.remove(plrnames,table.find(plrnames,name)) end) table.sort(plrnames,function(a,b) return a:lower() < b:lower() end) lib.updatedropdown(plrdd,plrnames) lib.updatedropdown(plrdd2,plrnames) end)) local asb = false lib.maketoggle("Auto Spam Bricks (Requires Brick Glove)",maintab,function(bool) asb = bool while asb do task.wait() pcall(function() (workspace:FindFirstChild("BrickSlap",true) or game.Players:FindFirstChild("BrickSlap",true)).Event:FireServer("lego") end) end end) local asbh = false lib.maketoggle("Auto Spam Black Holes (Requires Galaxy Glove)",maintab,function(bool) asbh = bool while asbh do task.wait() pcall(function() (workspace:FindFirstChild("GalaxySlap",true) or game.Players:FindFirstChild("GalaxySlap",true)).BlackholeEvent:FireServer() end) end end) local ass = false -- lol local resetsw = 0 lib.maketoggle("Auto Spam Swapper (PERMANENT DAMAGE)",maintab,function(bool) ass = bool while ass do task.wait(.2) resetsw += 1 local event = nil if resetsw%3 == 0 then if localplr.Character:FindFirstChild("SwapperSlap") then localplr.Character.SwapperSlap:Destroy() elseif localplr.Backpack:FindFirstChild("SwapperSlap") then localplr.Backpack.SwapperSlap:Destroy() end game.ReplicatedStorage.EquipSlapEvent:FireServer("SwapperSlap") localplr.Backpack:WaitForChild("SwapperSlap",99999).Parent = localplr.Character event = localplr.Character.SwapperSlap.Event else if localplr.Character:FindFirstChild("SwapperSlap") then event = localplr.Character.SwapperSlap.Event elseif localplr.Backpack:FindFirstChild("SwapperSlap") then event = localplr.Backpack.SwapperSlap.Event end end if event then for i,v in pairs(game.Players:GetPlayers()) do if v.Character and v ~= localplr then pcall(function() event:FireServer("swap",v.Character.HumanoidRootPart.Position,localplr.Character.HumanoidRootPart.Position,v) end) end end end end end) local nkbd = false function dkb(kb) if kb:IsA("BasePart") and (kb.Color == Color3.fromRGB(175,0,175) or kb.Color == Color3.fromRGB(17,17,17) or kb.Color == Color3.fromRGB(107,50,124) or kb.Color == Color3.fromRGB(255,0,0)) and kb:FindFirstChildWhichIsA("TouchTransmitter") then kb.CanTouch = not nkbd end end function dnkbd() for i,v in pairs(workspace:GetChildren()) do if v:IsA("BasePart") then dkb(v) elseif v:IsA("Model") then for i,v in pairs(v:GetChildren()) do dkb(v) end end end end lib.maketoggle("No Killbrick Damage",maintab,function(bool) nkbd = bool dnkbd() end) local cd = nil local cd2 = nil local slapsize = Vector3.new(2.46, 3.255954, 0.915844) function set0mass(part) part.Massless = true end table.insert(conn,localplr.Backpack.ChildAdded:Connect(function(child) if cd and child:IsA("Tool") and child:FindFirstChild("Speed") then child.Speed.Value = cd end if cd2 and child:IsA("Tool") and child:FindFirstChild("IsSlapTool") then set0mass(child.Handle) child.Handle.Size = slapsize*cd2 end end)) lib.maketextbox("Set Cooldown for Gloves (-1 to default)",slaptab,function(txt) txt = tonumber(txt) if txt == -1 then cd = nil else cd = txt end if cd then for i,v in pairs(localplr.Backpack:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("Speed") then v.Speed.Value = cd end end for i,v in pairs(localplr.Character:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("Speed") then v.Speed.Value = cd end end end end) lib.maketextbox("Set Size for Gloves (-1 to default)",slaptab,function(txt) txt = tonumber(txt) if txt == -1 then cd2 = nil else cd2 = txt end if cd2 then for i,v in pairs(localplr.Backpack:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("IsSlapTool") then set0mass(v.Handle) v.Handle.Size = slapsize*cd2 end end for i,v in pairs(localplr.Character:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("IsSlapTool") then set0mass(v.Handle) v.Handle.Size = slapsize*cd2 end end end end) lib.makelabel("Gloves",slaptab) local names = {} for i,v in pairs(game.ReplicatedStorage.SlapTools:GetChildren()) do local sgs = string.gsub(v.Name,"Slap"," Glove") table.insert(names,sgs) end table.sort(names,function(a,b) return a:lower() < b:lower() end) for i,v in pairs(names) do lib.makebutton("Get "..v,slaptab,function() local sgs = string.gsub(v," Glove","Slap") if localplr.Backpack:FindFirstChild(sgs) then localplr.Backpack[sgs]:Destroy() end game.ReplicatedStorage.EquipSlapEvent:FireServer(sgs) localplr.Backpack:WaitForChild(sgs,99999).Parent = localplr.Character end) end local partcfr = {} if getgenv().savedblockz then partcfr = getgenv().savedblockz end lib.makelabel("\u{26A0}\u{FE0F} Building does not save across servers!",buildtab) lib.makelabel("\u{26A0}\u{FE0F} Going higher than ~400 parts will start to glitch building!",buildtab) local pa = lib.makelabel("Part Amount: 0",buildtab) local wt = lib.makelabel("Wait Time: ??",buildtab) local awt = lib.makelabel("Actual Wait Time: ??",buildtab) local mouse = localplr:GetMouse() local singleframe = 1/60 local credit = " (BY 2AreYouMental110)" local display = Instance.new("Part") display.Anchored = true display.Transparency = 1 display.Color = Color3.fromRGB(117,112,116) display.Size = Vector3.new(8,10,1) display.CanCollide = false display.CastShadow = false display.Name = "DisplayBuild" display.CanQuery = false display.Parent = workspace local display2 = Instance.new("Highlight") display2.FillTransparency = 1 display2.OutlineColor = Color3.fromRGB(255,0,0) display2.DepthMode = Enum.HighlightDepthMode.Occluded display2.Parent = game.CoreGui local on = true local obs = false local mb = true local dist = 10 local snapcf = false local snapcf2 = false function convrot(int) return (int*360)/(math.pi*2) end function snap(cframe) local x,y,z = cframe:ToOrientation() local cfr2 = {math.rad(math.round(convrot(x)/45)*45),math.rad(math.round(convrot(y)/45)*45),math.rad(math.round(convrot(z)/45)*45)} return CFrame.new(cframe.Position) * CFrame.fromOrientation(table.unpack(cfr2)) end function snap2(cframe) return CFrame.new(math.round(cframe.Position.X),math.round(cframe.Position.Y),math.round(cframe.Position.Z)) * (cframe - cframe.Position) end function getpos() local cfr = (CFrame.new(((mouse.Hit.Position - localplr.Character:GetPivot().Position).Unit * dist)) * mouse.Hit.Rotation) + localplr.Character:GetPivot().Position if snapcf then cfr = snap(cfr) end if snapcf2 then cfr = snap2(cfr) end return cfr end local deq = false lib.makebutton("Get Build Tools",buildtab,function() if localplr.Backpack:FindFirstChild("funny build"..credit) then localplr.Backpack["funny build"..credit]:Destroy() end if localplr.Character:FindFirstChild("funny build"..credit) then localplr.Character["funny build"..credit]:Destroy() end if localplr.Backpack:FindFirstChild("funny delete"..credit) then localplr.Backpack["funny delete"..credit]:Destroy() end if localplr.Character:FindFirstChild("funny delete"..credit) then localplr.Character["funny delete"..credit]:Destroy() end local fb = Instance.new("Tool") fb.Name = "funny build"..credit fb.RequiresHandle = false fb.Equipped:Connect(function() display.Transparency = 0.6 end) fb.Unequipped:Connect(function() display.Transparency = 1 end) fb.Parent = localplr.Backpack fb.Activated:Connect(function() local hit = mouse.Hit if snapcf then hit = snap(hit) end if obs then hit = getpos() end if snapcf2 then hit = snap2(hit) end table.insert(partcfr,hit) lib.updatelabel("Part Amount: "..tostring(#partcfr),pa) local plcbl = workspace:FindFirstChild("PlaceBlock",true) or game.Players:FindFirstChild("PlaceBlock",true) if plcbl then plcbl:FireServer(hit) end end) local fb = Instance.new("Tool") fb.Name = "funny delete"..credit fb.RequiresHandle = false fb.Equipped:Connect(function() deq = true end) fb.Unequipped:Connect(function() deq = false end) fb.Parent = localplr.Backpack fb.Activated:Connect(function() if display2.Adornee ~= nil then for i,v in pairs(partcfr) do if v.Position == display2.Adornee.Position then partcfr[i] = nil lib.updatelabel("Part Amount: "..tostring(#partcfr),pa) break end end end end) end) lib.maketoggle("Make Blocks",buildtab,function(bool) mb = bool end,true) lib.makebutton("Delete Last Block",buildtab,function() partcfr[#partcfr] = nil lib.updatelabel("Part Amount: "..tostring(#partcfr),pa) end) lib.makebutton("Delete All Blocks",buildtab,function() partcfr = {} lib.updatelabel("Part Amount: "..tostring(#partcfr),pa) end) lib.maketoggle("Use other build positioning system",buildtab,function(bool) obs = bool end) lib.makeslider("Set Block Distance",buildtab,0,50,function(num) dist = num end) lib.maketoggle("Snap Rotation",buildtab,function(bool) snapcf = bool end) lib.maketoggle("Snap Position",buildtab,function(bool) snapcf2 = bool end) coroutine.wrap(function() while on do task.wait() pcall(function() if obs then display.CFrame = getpos() else local hit = mouse.Hit if snapcf then hit = snap(hit) end if snapcf2 then hit = snap2(hit) end display.CFrame = hit end if mouse.Target and mouse.Target.Name == "PlacedBlock" and deq then display2.Adornee = mouse.Target else display2.Adornee = nil end end) end end)() function getping() local ping = nil pcall(function() local ps = game.CoreGui:FindFirstChild("PerformanceStats",true) for i,v in pairs(ps:GetChildren()) do if v:FindFirstChild("StatsMiniTextPanelClass") and v.StatsMiniTextPanelClass.TitleLabel.Text == "Ping" then ping = tonumber(string.sub(v.StatsMiniTextPanelClass.ValueLabel.Text,1,string.find(v.StatsMiniTextPanelClass.ValueLabel.Text,"ms")-1))/1000 end end end) if not ping then ping = 0.5 end return ping end coroutine.wrap(function() while on do local s = tick() local waittime = ((2-(#partcfr/15)*singleframe))-getping() task.wait(waittime) if mb and (workspace:FindFirstChild("PlaceBlock",true) or game.Players:FindFirstChild("PlaceBlock",true)) then local plcbl = workspace:FindFirstChild("PlaceBlock",true) or game.Players:FindFirstChild("PlaceBlock",true) for i,v in pairs(partcfr) do if i%15 == 0 then task.wait() end plcbl:FireServer(v) end elseif localplr.Backpack:FindFirstChild("funny build"..credit) or localplr.Character:FindFirstChild("funny build"..credit) then game.ReplicatedStorage.EquipSlapEvent:FireServer("BlockSlap") end lib.updatelabel("Wait Time: "..tostring(waittime+((#partcfr/15)*singleframe)),wt) lib.updatelabel("Actual Wait Time: "..tostring(tick() - s),awt) end end)() local plrf = Instance.new("Folder") plrf.Name = "PLRFOLDER" plrf.Parent = workspace mouse.TargetFilter = plrf function oca(c) c.Parent = plrf end function opa(p) if p.Character then oca(p.Character) end table.insert(conn,p.CharacterAdded:Connect(oca)) end table.insert(conn,game.Players.PlayerAdded:Connect(opa)) for i,v in pairs(game.Players:GetPlayers()) do opa(v) end lib.ondestroyedfunc = function() apb = false nse = false aw = false asb = false asbh = false ass = false nkbd = false on = false av = false af = false dnkbd() for i,v in pairs(conn) do v:Disconnect() end for i,v in pairs(localplr.Backpack:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("IsSlapTool") then v.Handle.Massless = false v.Handle.Size = slapsize end end for i,v in pairs(localplr.Character:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("IsSlapTool") then v.Handle.Massless = false v.Handle.Size = slapsize end end if localplr.Backpack:FindFirstChild("funny build"..credit) then localplr.Backpack["funny build"..credit]:Destroy() end if localplr.Character:FindFirstChild("funny build"..credit) then localplr.Character["funny build"..credit]:Destroy() end if localplr.Backpack:FindFirstChild("funny delete"..credit) then localplr.Backpack["funny delete"..credit]:Destroy() end if localplr.Character:FindFirstChild("funny delete"..credit) then localplr.Character["funny delete"..credit]:Destroy() end display:Destroy() display2:Destroy() workspace.FallenPartsDestroyHeight = OrgDestroyHeight for i,v in pairs(plrf:GetChildren()) do v.Parent = workspace end plrf:Destroy() getgenv().savedblockz = partcfr end