Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local UserInputService = game:GetService("UserInputService")
- local Debris = game:GetService("Debris")
- local Players = game:GetService("Players")
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
- local RunService = game:GetService("RunService")
- local GrabEvents = ReplicatedStorage:WaitForChild("GrabEvents")
- local SetNetworkOwner = GrabEvents:WaitForChild("SetNetworkOwner")
- local toysFolder = ReplicatedStorage:FindFirstChild("ToysFolder") or Instance.new("Folder", ReplicatedStorage)
- toysFolder.Name = "ToysFolder"
- local function spawnItem(itemName, position, orientation)
- task.spawn(function()
- local cframe = CFrame.new(position)
- local rotation = Vector3.new(0, 90, 0)
- ReplicatedStorage.MenuToys.SpawnToyRemoteFunction:InvokeServer(itemName, cframe, rotation)
- end)
- end
- local function getDescendantParts(name)
- local parts = {}
- for _, descendant in ipairs(workspace:GetDescendants()) do
- if descendant:IsA("BasePart") and descendant.Name == name then
- table.insert(parts, descendant)
- end
- end
- return parts
- end
- local poisonHurtParts = getDescendantParts("PoisonHurtPart")
- local paintPlayerParts = getDescendantParts("PaintPlayerPart")
- local playerList = {}
- local function updatePlayerList()
- playerList = {}
- for _, player in ipairs(Players:GetPlayers()) do
- table.insert(playerList, player.Name)
- end
- end
- local function onPlayerAdded(player)
- table.insert(playerList, player.Name)
- end
- local function onPlayerRemoving(player)
- for i, name in ipairs(playerList) do
- if name == player.Name then
- table.remove(playerList, i)
- break
- end
- end
- end
- local function grabHandler(grabType)
- while true do
- local success, err = pcall(function()
- local child = workspace:FindFirstChild("GrabParts")
- if child and child.Name == "GrabParts" then
- local grabPart = child:FindFirstChild("GrabPart")
- local grabbedPart = grabPart:FindFirstChild("WeldConstraint").Part1
- local head = grabbedPart.Parent:FindFirstChild("Head")
- if head then
- while workspace:FindFirstChild("GrabParts") do
- local partsTable = grabType == "poison" and poisonHurtParts or paintPlayerParts
- for _, part in pairs(partsTable) do
- part.Size = Vector3.new(2, 2, 2)
- part.Transparency = 1
- part.Position = head.Position
- end
- wait()
- for _, part in pairs(partsTable) do
- part.Position = Vector3.new(0, -200, 0)
- end
- end
- for _, part in pairs(partsTable) do
- part.Position = Vector3.new(0, -200, 0)
- end
- end
- end
- end)
- wait()
- end
- end
- local function noclipHandler()
- while true do
- local success, err = pcall(function()
- local child = workspace:FindFirstChild("GrabParts")
- if child and child.Name == "GrabParts" then
- local grabPart = child:FindFirstChild("GrabPart")
- local grabbedPart = grabPart:FindFirstChild("WeldConstraint").Part1
- local character = grabbedPart.Parent
- if character.HumanoidRootPart then
- while workspace:FindFirstChild("GrabParts") do
- for _, part in pairs(character:GetChildren()) do
- if part:IsA("BasePart") then
- part.CanCollide = false
- end
- end
- wait()
- end
- for _, part in pairs(character:GetChildren()) do
- if part:IsA("BasePart") then
- part.CanCollide = true
- end
- end
- end
- end
- end)
- wait()
- end
- end
- local function deathGrabHandler()
- while true do
- local success, err = pcall(function()
- local child = workspace:FindFirstChild("GrabParts")
- if child and child.Name == "GrabParts" then
- local grabPart = child:FindFirstChild("GrabPart")
- local grabbedPart = grabPart:FindFirstChild("WeldConstraint").Part1
- local humanoid = grabbedPart.Parent:FindFirstChildOfClass("Humanoid")
- if humanoid then
- while workspace:FindFirstChild("GrabParts") do
- humanoid:ChangeState(Enum.HumanoidStateType.Dead)
- wait()
- end
- end
- end
- end)
- wait()
- end
- end
- local function setupAntiExplosion(character)
- local partOwner = character:WaitForChild("Humanoid"):FindFirstChild("Ragdolled")
- if partOwner then
- local partOwnerChangedConn
- partOwnerChangedConn = partOwner:GetPropertyChangedSignal("Value"):Connect(function()
- if partOwner.Value then
- for _, part in ipairs(character:GetChildren()) do
- if part:IsA("BasePart") then
- part.Anchored = true
- end
- end
- else
- for _, part in ipairs(character:GetChildren()) do
- if part:IsA("BasePart") then
- part.Anchored = false
- end
- end
- end
- end)
- antiExplosionConnection = partOwnerChangedConn
- end
- end
- local antiGrabConnection
- local function setupAntiGrab()
- local Player = game:GetService("Players").LocalPlayer
- local BeingHeld = Player:WaitForChild("IsHeld")
- local StruggleEvent = game:GetService("ReplicatedStorage"):WaitForChild("CharacterEvents"):WaitForChild("Struggle")
- antiGrabConnection = BeingHeld.Changed:Connect(function(C)
- if C == true then
- local Event
- Event = game:GetService("RunService").RenderStepped:Connect(function()
- if BeingHeld.Value == true then
- Player.Character["HumanoidRootPart"].AssemblyLinearVelocity = Vector3.new()
- StruggleEvent:FireServer(Player)
- elseif BeingHeld.Value == false then
- Event:Disconnect()
- end
- end)
- end
- end)
- end
- local function disableAntiGrab()
- if antiGrabConnection then
- antiGrabConnection:Disconnect()
- antiGrabConnection = nil
- end
- end
- local currentKunai = nil
- local kunaiSpawningEnabled = false
- local function spawnItemCf(itemName, cframe)
- local rotation = Vector3.new(90, 90, 0)
- local toy = ReplicatedStorage.MenuToys.SpawnToyRemoteFunction:InvokeServer(itemName, cframe, rotation)
- return toy
- end
- local function attachKunaiToThigh()
- if currentKunai and currentKunai.Parent then
- return
- end
- local playerCharacter = localPlayer.Character or localPlayer.CharacterAdded:Wait()
- local torso = playerCharacter:WaitForChild("Torso", 5)
- if torso then
- local kunaiPosition = torso.CFrame
- * CFrame.new(-0.5, -torso.Size.Y / 2, 0)
- * CFrame.Angles(math.rad(-100), 0, 0)
- spawnItemCf("NinjaKunai", kunaiPosition)
- for i = 1, 20 do
- local toysFolder = workspace:FindFirstChild(localPlayer.Name .. "SpawnedInToys")
- if toysFolder then
- currentKunai = toysFolder:FindFirstChild("NinjaKunai")
- if currentKunai then
- break
- end
- end
- task.wait()
- end
- if currentKunai then
- currentKunai.AncestryChanged:Connect(function(_, parent)
- if not parent and kunaiSpawningEnabled then
- currentKunai = nil
- attachKunaiToThigh()
- end
- end)
- else
- task.wait(1)
- attachKunaiToThigh()
- end
- end
- end
- local function monitorKunai()
- while kunaiSpawningEnabled do
- if not (currentKunai and currentKunai.Parent) then
- currentKunai = nil
- attachKunaiToThigh()
- end
- task.wait()
- end
- end
- local function initializeKunai()
- attachKunaiToThigh()
- task.spawn(monitorKunai)
- end
- local function disableKunai()
- kunaiSpawningEnabled = false
- if currentKunai then
- currentKunai:Destroy()
- currentKunai = nil
- end
- end
- local OrionLib = loadstring(game:HttpGet(('https://raw.githubusercontent.com/tomoneko2222/roblox-script/refs/heads/main/orion')))()
- local Window = OrionLib:MakeWindow({Name = "物人用script", HidePremium = false, SaveConfig = true, ConfigFolder = "OrionTest"})
- local GrabTab = Window:MakeTab({
- Name = "grab",
- Icon = "rbxassetid://4483345998",
- PremiumOnly = false
- })
- _G.strength = 400
- GrabTab:AddSlider({
- Name = "Strength",
- Min = 300,
- Max = 4000,
- Color = Color3.fromRGB(153, 102, 204),
- ValueName = ".",
- Increment = 1,
- Default = _G.strength,
- Save = true,
- Flag = "StrengthSlider",
- Callback = function(value)
- _G.strength = value
- end
- })
- GrabTab:AddToggle({
- Name = "Strength",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "StrengthToggle",
- Callback = function(enabled)
- if enabled then
- strengthConnection = workspace.ChildAdded:Connect(function(model)
- if model.Name == "GrabParts" then
- local partToImpulse = model.GrabPart.WeldConstraint.Part1
- if partToImpulse then
- local velocityObj = Instance.new("BodyVelocity")
- velocityObj.MaxForce = Vector3.new(0, 0, 0)
- velocityObj.Parent = partToImpulse
- local function applyVelocity()
- velocityObj.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- velocityObj.Velocity = workspace.CurrentCamera.CFrame.LookVector * _G.strength
- Debris:AddItem(velocityObj, 1)
- end
- model.GrabPart:GetPropertyChangedSignal("Parent"):Connect(function()
- if not model.Parent then
- if UserInputService:GetLastInputType() == Enum.UserInputType.MouseButton2 then
- applyVelocity()
- else
- velocityObj:Destroy()
- end
- end
- end)
- partToImpulse:GetPropertyChangedSignal("Parent"):Connect(function()
- if not partToImpulse.Parent then
- velocityObj:Destroy()
- end
- end)
- end
- end
- end)
- elseif strengthConnection then
- strengthConnection:Disconnect()
- end
- end
- })
- GrabTab:AddToggle({
- Name = "Poison Grab",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "PoisonGrab",
- Callback = function(enabled)
- if enabled then
- poisonGrabCoroutine = coroutine.create(function() grabHandler("poison") end)
- coroutine.resume(poisonGrabCoroutine)
- else
- if poisonGrabCoroutine then
- coroutine.close(poisonGrabCoroutine)
- poisonGrabCoroutine = nil
- for _, part in pairs(poisonHurtParts) do
- part.Position = Vector3.new(0, -200, 0)
- end
- end
- end
- end
- })
- GrabTab:AddToggle({
- Name = "Radioactive Grab",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "RadioactiveGrab",
- Callback = function(enabled)
- if enabled then
- ufoGrabCoroutine = coroutine.create(function() grabHandler("radioactive") end)
- coroutine.resume(ufoGrabCoroutine)
- else
- if ufoGrabCoroutine then
- coroutine.close(ufoGrabCoroutine)
- ufoGrabCoroutine = nil
- for _, part in pairs(paintPlayerParts) do
- part.Position = Vector3.new(0, -200, 0)
- end
- end
- end
- end
- })
- GrabTab:AddToggle({
- Name = "Noclip Grab",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "NoclipGrab",
- Callback = function(enabled)
- if enabled then
- noclipGrabCoroutine = coroutine.create(noclipHandler)
- coroutine.resume(noclipGrabCoroutine)
- else
- if noclipGrabCoroutine then
- coroutine.close(noclipGrabCoroutine)
- noclipGrabCoroutine = nil
- end
- end
- end
- })
- GrabTab:AddToggle({
- Name = "Death Grab",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "DeathGrab",
- Callback = function(enabled)
- if enabled then
- deathGrabCoroutine = coroutine.create(deathGrabHandler)
- coroutine.resume(deathGrabCoroutine)
- else
- if deathGrabCoroutine then
- coroutine.close(deathGrabCoroutine)
- deathGrabCoroutine = nil
- end
- end
- end
- })
- local spinningObjects = {}
- GrabTab:AddToggle({
- Name = "Spin Grab",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "SpinGrab",
- Callback = function(enabled)
- if enabled then
- gravityGrabConnection = workspace.ChildAdded:Connect(function(model)
- if model.Name == "GrabParts" then
- local partToImpulse = model.GrabPart.WeldConstraint.Part1
- if partToImpulse then
- local bodyAngularVelocity = Instance.new("BodyAngularVelocity")
- bodyAngularVelocity.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
- bodyAngularVelocity.AngularVelocity = Vector3.new(0, 5, 0)
- bodyAngularVelocity.Parent = partToImpulse
- local bodyPosition = Instance.new("BodyPosition")
- bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- bodyPosition.Position = partToImpulse.Position
- bodyPosition.Parent = partToImpulse
- table.insert(spinningObjects, {part = partToImpulse, bav = bodyAngularVelocity, bp = bodyPosition})
- end
- end
- end)
- else
- if gravityGrabConnection then
- gravityGrabConnection:Disconnect()
- end
- end
- end
- })
- GrabTab:AddButton({
- Name = "unallspin",
- Callback = function()
- for _, obj in ipairs(spinningObjects) do
- if obj.part and obj.part.Parent then
- if obj.bav then obj.bav:Destroy() end
- if obj.bp then obj.bp:Destroy() end
- end
- end
- spinningObjects = {}
- end
- })
- local selectedPlayer = nil
- local function updatePlayerList()
- local playerList = {"Select Player"}
- for _, player in ipairs(Players:GetPlayers()) do
- table.insert(playerList, player.Name)
- end
- return playerList
- end
- local playerDropdown = GrabTab:AddDropdown({
- Name = "Select Player for Bring Grab",
- Default = "Select Player",
- Options = updatePlayerList(),
- Callback = function(Value)
- selectedPlayer = Value ~= "Select Player" and Players:FindFirstChild(Value) or nil
- end
- })
- Players.PlayerAdded:Connect(function()
- playerDropdown:Refresh(updatePlayerList(), true)
- end)
- Players.PlayerRemoving:Connect(function()
- playerDropdown:Refresh(updatePlayerList(), true)
- end)
- local movingObjects = {}
- local function setCanCollide(part, value)
- if part:IsA("BasePart") and not part.Anchored then
- part.CanCollide = value
- end
- end
- local function processDescendants(part, value)
- for _, descendant in ipairs(part:GetDescendants()) do
- setCanCollide(descendant, value)
- end
- end
- GrabTab:AddToggle({
- Name = "Bring Grab",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "BringGrab",
- Callback = function(enabled)
- if enabled then
- bringGrabConnection = workspace.ChildAdded:Connect(function(model)
- if model.Name == "GrabParts" and selectedPlayer then
- local partToMove = model:WaitForChild("GrabPart"):WaitForChild("WeldConstraint").Part1
- if partToMove and not partToMove.Anchored then
- local bodyPosition = Instance.new("BodyPosition")
- bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- bodyPosition.Parent = partToMove
- setCanCollide(partToMove, false)
- processDescendants(partToMove, false)
- local updatePositionConnection
- updatePositionConnection = game:GetService("RunService").Heartbeat:Connect(function()
- if selectedPlayer and selectedPlayer.Character and selectedPlayer.Character:FindFirstChild("HumanoidRootPart") then
- bodyPosition.Position = selectedPlayer.Character.HumanoidRootPart.Position
- end
- end)
- table.insert(movingObjects, {part = partToMove, bodyPosition = bodyPosition, connection = updatePositionConnection})
- end
- end
- end)
- else
- if bringGrabConnection then
- bringGrabConnection:Disconnect()
- end
- for _, obj in ipairs(movingObjects) do
- if obj.bodyPosition then obj.bodyPosition:Destroy() end
- if obj.connection then obj.connection:Disconnect() end
- if obj.part then
- setCanCollide(obj.part, true)
- processDescendants(obj.part, true)
- end
- end
- movingObjects = {}
- end
- end
- })
- local movingObjectsV2 = {}
- local circleSpeed = 2 * math.pi / 1
- local circleRadius = 110
- local function moveInCircle(part, center, radius, speed)
- local angle = 0
- local runService = game:GetService("RunService")
- local bodyPosition = Instance.new("BodyPosition")
- bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- bodyPosition.Parent = part
- local connection
- connection = runService.Heartbeat:Connect(function(deltaTime)
- if not part.Parent then
- connection:Disconnect()
- bodyPosition:Destroy()
- return
- end
- angle = angle + speed * deltaTime
- local x = center.Position.X + radius * math.cos(angle)
- local z = center.Position.Z + radius * math.sin(angle)
- bodyPosition.Position = Vector3.new(x, center.Position.Y, z)
- end)
- return {bodyPosition = bodyPosition, connection = connection}
- end
- GrabTab:AddToggle({
- Name = "Bring Grab v2",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "BringGrabV2",
- Callback = function(enabled)
- if enabled then
- bringGrabV2Connection = workspace.ChildAdded:Connect(function(model)
- if model.Name == "GrabParts" and selectedPlayer then
- local partToMove = model:WaitForChild("GrabPart"):WaitForChild("WeldConstraint").Part1
- if partToMove and not partToMove.Anchored then
- local moveData = moveInCircle(partToMove, selectedPlayer.Character.HumanoidRootPart, circleRadius, circleSpeed)
- table.insert(movingObjectsV2, {part = partToMove, bodyPosition = moveData.bodyPosition, connection = moveData.connection})
- end
- end
- end)
- else
- if bringGrabV2Connection then
- bringGrabV2Connection:Disconnect()
- end
- for _, obj in ipairs(movingObjectsV2) do
- if obj.bodyPosition then obj.bodyPosition:Destroy() end
- if obj.connection then obj.connection:Disconnect() end
- end
- movingObjectsV2 = {}
- end
- end
- })
- local AntiTab = Window:MakeTab({
- Name = "Anti",
- Icon = "rbxassetid://4483345998",
- PremiumOnly = false
- })
- AntiTab:AddToggle({
- Name = "Anti-Explosion",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "AntiExplosion",
- Callback = function(enabled)
- local localPlayer = game.Players.LocalPlayer
- if enabled then
- if localPlayer.Character then
- setupAntiExplosion(localPlayer.Character)
- end
- characterAddedConn = localPlayer.CharacterAdded:Connect(function(character)
- if antiExplosionConnection then
- antiExplosionConnection:Disconnect()
- end
- setupAntiExplosion(character)
- end)
- else
- if antiExplosionConnection then
- antiExplosionConnection:Disconnect()
- antiExplosionConnection = nil
- end
- if characterAddedConn then
- characterAddedConn:Disconnect()
- characterAddedConn = nil
- end
- end
- end
- })
- AntiTab:AddToggle({
- Name = "Anti-Grab",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "AntiGrab",
- Callback = function(enabled)
- if enabled then
- setupAntiGrab()
- else
- disableAntiGrab()
- end
- end
- })
- local function monitorFireLight()
- local localPlayer = game.Players.LocalPlayer
- local character = localPlayer.Character or localPlayer.CharacterAdded:Wait()
- local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
- while true do
- local fireLight = humanoidRootPart:FindFirstChild("FireLight")
- if fireLight then
- local barrier = workspace.Plots.Plot4.Barrier:GetChildren()[1]
- local originalSize = barrier.Size
- local originalCFrame = barrier.CFrame
- barrier.Size = Vector3.new(0.5, 0.5, 0.5)
- barrier.CFrame = humanoidRootPart.CFrame
- task.wait(1)
- barrier.Size = originalSize
- barrier.CFrame = originalCFrame
- end
- task.wait()
- end
- end
- AntiTab:AddToggle({
- Name = "Anti-Fire",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "AntiFire",
- Callback = function(enabled)
- if enabled then
- fireLightCoroutine = coroutine.create(monitorFireLight)
- coroutine.resume(fireLightCoroutine)
- else
- if fireLightCoroutine then
- coroutine.close(fireLightCoroutine)
- fireLightCoroutine = nil
- end
- end
- end
- })
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
- local Players = game:GetService("Players")
- local localPlayer = Players.LocalPlayer
- local currentKunai = nil
- local kunaiSpawningEnabled = false
- local function spawnItemCf(itemName, cframe)
- local rotation = Vector3.new(90, 90, 0)
- local toy = ReplicatedStorage.MenuToys.SpawnToyRemoteFunction:InvokeServer(itemName, cframe, rotation)
- return toy
- end
- local function attachKunaiToThigh()
- if currentKunai and currentKunai.Parent then
- return
- end
- local playerCharacter = localPlayer.Character or localPlayer.CharacterAdded:Wait()
- local torso = playerCharacter:WaitForChild("Torso", 5)
- if torso then
- local kunaiPosition = torso.CFrame
- * CFrame.new(-0.5, -torso.Size.Y / 2, 0)
- * CFrame.Angles(math.rad(-100), 0, 0)
- spawnItemCf("NinjaKunai", kunaiPosition)
- for i = 1, 20 do
- local toysFolder = workspace:FindFirstChild(localPlayer.Name .. "SpawnedInToys")
- if toysFolder then
- currentKunai = toysFolder:FindFirstChild("NinjaKunai")
- if currentKunai then
- break
- end
- end
- task.wait()
- end
- if currentKunai then
- currentKunai.AncestryChanged:Connect(function(_, parent)
- if not parent and kunaiSpawningEnabled then
- currentKunai = nil
- attachKunaiToThigh()
- end
- end)
- else
- task.wait(1)
- attachKunaiToThigh()
- end
- else
- warn("Torso not found!")
- end
- end
- local function monitorKunai()
- while kunaiSpawningEnabled do
- if not (currentKunai and currentKunai.Parent) then
- currentKunai = nil
- attachKunaiToThigh()
- end
- task.wait()
- end
- end
- local function initializeKunai()
- attachKunaiToThigh()
- task.spawn(monitorKunai)
- end
- local function disableKunai()
- kunaiSpawningEnabled = false
- if currentKunai then
- currentKunai:Destroy()
- currentKunai = nil
- end
- end
- AntiTab:AddToggle({
- Name = "Anti-Kick",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "AntiKick",
- Callback = function(enabled)
- if enabled then
- kunaiSpawningEnabled = true
- initializeKunai()
- else
- disableKunai()
- end
- end
- })
- local function isDescendantOf(descendant, ancestor)
- local parent = descendant
- while parent do
- if parent == ancestor then
- return true
- end
- parent = parent.Parent
- end
- return false
- end
- local function blobGrabPlayer(player, blobman)
- if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
- local args = {
- [1] = blobman:FindFirstChild("RightDetector"),
- [2] = player.Character:FindFirstChild("HumanoidRootPart"),
- [3] = blobman:FindFirstChild("RightDetector"):FindFirstChild("RightWeld")
- }
- blobman:WaitForChild("BlobmanSeatAndOwnerScript"):WaitForChild("CreatureGrab"):FireServer(unpack(args))
- end
- end
- local function runBlobmanGrabber(targetPlayer)
- local blobman
- local foundBlobman = false
- for i, v in pairs(game.Workspace:GetDescendants()) do
- if v.Name == "CreatureBlobman" then
- if v:FindFirstChild("VehicleSeat") and v.VehicleSeat:FindFirstChild("SeatWeld") and isDescendantOf(v.VehicleSeat.SeatWeld.Part1, localPlayer.Character) then
- blobman = v
- foundBlobman = true
- break
- end
- end
- end
- if not foundBlobman then
- return
- end
- if blobman and targetPlayer then
- blobGrabPlayer(targetPlayer, blobman)
- end
- end
- local antivoid = false
- AntiTab:AddToggle({
- Name = "Anti-Void",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Save = true,
- Flag = "AntiVoid",
- Callback = function(enabled)
- antivoid = enabled
- if antivoid then
- workspace.FallenPartsDestroyHeight = -100000000000
- else
- workspace.FallenPartsDestroyHeight = -100
- end
- end
- })
- local BlobmanTab = Window:MakeTab({
- Name = "Blobman",
- Icon = "rbxassetid://4483345998",
- PremiumOnly = false
- })
- local selectedBlobPlayer = nil
- local function updateBlobPlayerList()
- local playerList = {"Select Player"}
- for _, player in ipairs(Players:GetPlayers()) do
- if player ~= localPlayer then
- table.insert(playerList, player.Name)
- end
- end
- return playerList
- end
- local blobPlayerDropdown = BlobmanTab:AddDropdown({
- Name = "Select Player",
- Default = "Select Player",
- Options = updateBlobPlayerList(),
- Callback = function(Value)
- selectedBlobPlayer = Value ~= "Select Player" and Players:FindFirstChild(Value) or nil
- end
- })
- Players.PlayerAdded:Connect(function()
- blobPlayerDropdown:Refresh(updateBlobPlayerList(), true)
- end)
- Players.PlayerRemoving:Connect(function()
- blobPlayerDropdown:Refresh(updateBlobPlayerList(), true)
- end)
- BlobmanTab:AddButton({
- Name = "Bring",
- Callback = function()
- if selectedBlobPlayer then
- runBlobmanGrabber(selectedBlobPlayer)
- end
- end
- })
- -- プレイヤーリストを随時更新
- game:GetService("Players").PlayerAdded:Connect(updatePlayerList)
- game:GetService("Players").PlayerRemoving:Connect(updatePlayerList)
- local blobalter = 1
- local function blobGrabPlayer(player, blobman)
- if blobalter == 1 then
- if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
- local args = {
- [1] = blobman:FindFirstChild("LeftDetector"),
- [2] = player.Character:FindFirstChild("HumanoidRootPart"),
- [3] = blobman:FindFirstChild("LeftDetector"):FindFirstChild("LeftWeld")
- }
- blobman:WaitForChild("BlobmanSeatAndOwnerScript"):WaitForChild("CreatureGrab"):FireServer(unpack(args))
- blobalter = 2
- end
- else
- if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
- local args = {
- [1] = blobman:FindFirstChild("RightDetector"),
- [2] = player.Character:FindFirstChild("HumanoidRootPart"),
- [3] = blobman:FindFirstChild("RightDetector"):FindFirstChild("RightWeld")
- }
- blobman:WaitForChild("BlobmanSeatAndOwnerScript"):WaitForChild("CreatureGrab"):FireServer(unpack(args))
- blobalter = 1
- end
- end
- end
- local blobman1 = BlobmanTab:AddToggle({
- Name = "Loop Grab All",
- Color = Color3.fromRGB(153, 102, 204),
- Default = false,
- Callback = function(enabled)
- if enabled then
- print("Toggle enabled")
- blobmanCoroutine = coroutine.create(function()
- local foundBlobman = false
- for i, v in pairs(game.Workspace:GetDescendants()) do
- if v.Name == "CreatureBlobman" then
- print("Found CreatureBlobman")
- if v:FindFirstChild("VehicleSeat") and v.VehicleSeat:FindFirstChild("SeatWeld") and isDescendantOf(v.VehicleSeat.SeatWeld.Part1, localPlayer.Character) then
- print("Mounted on blobman")
- blobman = v
- foundBlobman = true
- break
- end
- end
- end
- print("Out of the loop!")
- if not foundBlobman then
- print("No mount found")
- OrionLib:MakeNotification({
- Name = "Error",
- Content = "You must be mounted upon a blobman to begin this process. Please mount one and toggle this again!",
- Image = "rbxassetid://4483345998",
- Time = 5
- })
- blobman1:Set(false)
- blobman = nil
- coroutine.close(blobmanCoroutine)
- blobmanCoroutine = nil
- return
- end
- while true do
- pcall(function()
- while wait() do
- for i, v in pairs(Players:GetChildren()) do
- if blobman and v ~= localPlayer then
- blobGrabPlayer(v, blobman)
- print(v.Name)
- wait(_G.BlobmanDelay)
- end
- end
- end
- end)
- wait(0.02)
- end
- end)
- coroutine.resume(blobmanCoroutine)
- else
- if blobmanCoroutine then
- coroutine.close(blobmanCoroutine)
- blobmanCoroutine = nil
- blobman = nil
- end
- end
- end
- })
- local LineTab = Window:MakeTab({
- Name = "line",
- Icon = "rbxassetid://4483345998",
- PremiumOnly = false
- })
- local zgt = false
- local N = { zgv = 0 }
- LineTab:AddToggle({
- Name = "inf line",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "InfLine",
- Callback = function(enabled)
- zgt = enabled
- if enabled then
- UserInputService.InputChanged:Connect(function(inp)
- if inp.UserInputType == Enum.UserInputType.MouseWheel and zgt then
- local v1 = workspace:FindFirstChild("GrabParts")
- if v1 then
- if inp.Position.Z == 1 then
- N.zgv = N.zgv + 3
- else
- N.zgv = N.zgv - 3
- end
- else
- N.zgv = 0
- end
- end
- end)
- workspace.ChildAdded:Connect(function(f)
- if f.Name == "GrabParts" and not(kickkk1) and not(kickkk2) then
- N.zgv = 0
- local da = f.DragPart.DragAttach
- while f.Parent and task.wait() do
- da.Position = workspace.CurrentCamera.CFrame.LookVector * N.zgv
- end
- end
- end)
- end
- end
- })
- local invisline = false
- LineTab:AddToggle({
- Name = "invis line",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "InvisLine",
- Callback = function(enabled)
- invisline = enabled
- while invisline do
- ReplicatedStorage.GrabEvents.CreateGrabLine:FireServer()
- task.wait()
- end
- end
- })
- local crazyline = false
- LineTab:AddToggle({
- Name = "Crazy line",
- Default = false,
- Save = true,
- Color = Color3.fromRGB(153, 102, 204),
- Flag = "CrazyLine",
- Callback = function(enabled)
- crazyline = enabled
- while crazyline do
- for _, plr in ipairs(Players:GetPlayers()) do
- local character = plr.Character
- if character then
- local torso = character:FindFirstChild("Torso")
- if torso then
- ReplicatedStorage.GrabEvents.CreateGrabLine:FireServer(torso, torso.CFrame)
- task.wait()
- end
- end
- end
- end
- end
- })
- local auraRadius = 30
- local grabSpeed = 0
- local AuraTab = Window:MakeTab({
- Name = "Aura",
- Icon = "rbxassetid://4483345998",
- PremiumOnly = false
- })
- AuraTab:AddToggle({
- Name = "Grab Aura",
- Color = Color3.fromRGB(153, 102, 204),
- Default = false,
- Flag = "FlingAura",
- Callback = function(enabled)
- if enabled then
- auraCoroutine = coroutine.create(function()
- while true do
- local success, err = pcall(function()
- local character = localPlayer.Character
- if character and character:FindFirstChild("Head") and character:FindFirstChild("HumanoidRootPart") then
- local head = character.Head
- local humanoidRootPart = character.HumanoidRootPart
- for _, player in pairs(Players:GetPlayers()) do
- coroutine.wrap(function()
- if player ~= localPlayer and player.Character then
- local playerCharacter = player.Character
- local playerTorso = playerCharacter:FindFirstChild("Torso")
- if playerTorso then
- local distance = (playerTorso.Position - humanoidRootPart.Position).Magnitude
- if distance <= auraRadius then
- SetNetworkOwner:FireServer(playerTorso, playerCharacter.HumanoidRootPart.FirePlayerPart.CFrame)
- task.wait(0.1)
- end
- end
- end
- end)()
- end
- end
- end)
- if not success then
- warn("Error in Air Suspend Aura: " .. tostring(err))
- end
- wait(0)
- end
- end)
- coroutine.resume(auraCoroutine)
- else
- if auraCoroutine then
- coroutine.close(auraCoroutine)
- auraCoroutine = nil
- end
- end
- end
- })
- local poisonAuraCoroutine = nil
- local poisonHurtParts = getDescendantParts("PoisonHurtPart")
- AuraTab:AddToggle({
- Name = "Poison Aura",
- Default = false,
- Color = Color3.fromRGB(153, 102, 204),
- Callback = function(enabled)
- if enabled then
- poisonAuraCoroutine = coroutine.create(function()
- while true do
- local success, err = pcall(function()
- local character = localPlayer.Character
- if character and character:FindFirstChild("HumanoidRootPart") then
- local humanoidRootPart = character.HumanoidRootPart
- for _, player in pairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character then
- local playerCharacter = player.Character
- local playerTorso = playerCharacter:FindFirstChild("Torso")
- local playerHead = playerCharacter:FindFirstChild("Head")
- if playerTorso and playerHead then
- local distance = (playerTorso.Position - humanoidRootPart.Position).Magnitude
- if distance <= auraRadius then
- SetNetworkOwner:FireServer(playerTorso, playerCharacter.HumanoidRootPart.CFrame)
- for _, part in pairs(poisonHurtParts) do
- part.Size = Vector3.new(1, 3, 1)
- part.Transparency = 1
- part.Position = playerHead.Position
- end
- wait(0.1)
- for _, part in pairs(poisonHurtParts) do
- part.Position = Vector3.new(0, -200, 0)
- end
- end
- end
- end
- end
- end
- end)
- if not success then
- warn("Error in Poison Aura: " .. tostring(err))
- end
- wait(0.02)
- end
- end)
- coroutine.resume(poisonAuraCoroutine)
- elseif poisonAuraCoroutine then
- coroutine.close(poisonAuraCoroutine)
- for _, part in pairs(poisonHurtParts) do
- part.Position = Vector3.new(0, -200, 0)
- end
- poisonAuraCoroutine = nil
- end
- end
- })
- local function flingAuraHandler()
- while true do
- local success, err = pcall(function()
- local character = localPlayer.Character
- if character and character:FindFirstChild("HumanoidRootPart") then
- local humanoidRootPart = character.HumanoidRootPart
- for _, player in pairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character then
- local playerCharacter = player.Character
- local playerTorso = playerCharacter:FindFirstChild("Torso")
- if playerTorso then
- local distance = (playerTorso.Position - humanoidRootPart.Position).Magnitude
- if distance <= auraRadius then
- SetNetworkOwner:FireServer(playerTorso, playerCharacter.HumanoidRootPart.CFrame)
- task.wait(0.1)
- local velocity = playerTorso:FindFirstChild("BodyVelocity") or Instance.new("BodyVelocity", playerTorso)
- velocity.Velocity = Vector3.new(0, 10000, 0)
- velocity.MaxForce = Vector3.new(0, math.huge, 0)
- Debris:AddItem(velocity, 1)
- end
- end
- end
- end
- end
- end)
- if not success then
- warn("Error in Fling Aura: " .. tostring(err))
- end
- wait(0.1)
- end
- end
- AuraTab:AddToggle({
- Name = "Fling Aura",
- Color = Color3.fromRGB(153, 102, 204),
- Default = false,
- Flag = "FlingAura",
- Callback = function(enabled)
- if enabled then
- flingAuraCoroutine = coroutine.create(flingAuraHandler)
- coroutine.resume(flingAuraCoroutine)
- else
- if flingAuraCoroutine then
- coroutine.close(flingAuraCoroutine)
- flingAuraCoroutine = nil
- end
- end
- end
- })
- local tornadoAuraSpeed = 2 * math.pi / 1
- local tornadoAuraRadius = 90
- local tornadoAuraObjects = {}
- local function tornadoAuraHandler()
- while true do
- local success, err = pcall(function()
- local character = localPlayer.Character
- if character and character:FindFirstChild("HumanoidRootPart") then
- local humanoidRootPart = character.HumanoidRootPart
- for _, player in pairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character then
- local playerCharacter = player.Character
- local playerTorso = playerCharacter:FindFirstChild("Torso")
- if playerTorso then
- local distance = (playerTorso.Position - humanoidRootPart.Position).Magnitude
- if distance <= auraRadius then
- SetNetworkOwner:FireServer(playerTorso, playerCharacter.HumanoidRootPart.CFrame)
- task.wait(0.1)
- local moveData = moveInCircle(playerTorso, humanoidRootPart, tornadoAuraRadius, tornadoAuraSpeed)
- table.insert(tornadoAuraObjects, {part = playerTorso, bodyPosition = moveData.bodyPosition, connection = moveData.connection})
- end
- end
- end
- end
- end
- end)
- if not success then
- warn("Error in Tornado Aura: " .. tostring(err))
- end
- wait(0.1)
- end
- end
- AuraTab:AddToggle({
- Name = "Tornado Aura",
- Color = Color3.fromRGB(153, 102, 204),
- Default = false,
- Flag = "TornadoAura",
- Callback = function(enabled)
- if enabled then
- tornadoAuraCoroutine = coroutine.create(tornadoAuraHandler)
- coroutine.resume(tornadoAuraCoroutine)
- else
- if tornadoAuraCoroutine then
- coroutine.close(tornadoAuraCoroutine)
- tornadoAuraCoroutine = nil
- end
- for _, obj in ipairs(tornadoAuraObjects) do
- if obj.bodyPosition then obj.bodyPosition:Destroy() end
- if obj.connection then obj.connection:Disconnect() end
- end
- tornadoAuraObjects = {}
- end
- end
- })
- local bringAuraObjects = {}
- local function bringAuraHandler()
- while true do
- local success, err = pcall(function()
- local character = localPlayer.Character
- if character and character:FindFirstChild("HumanoidRootPart") then
- local humanoidRootPart = character.HumanoidRootPart
- for _, player in pairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character then
- local playerCharacter = player.Character
- local playerTorso = playerCharacter:FindFirstChild("Torso")
- if playerTorso then
- local distance = (playerTorso.Position - humanoidRootPart.Position).Magnitude
- if distance <= auraRadius then
- SetNetworkOwner:FireServer(playerTorso, playerCharacter.HumanoidRootPart.CFrame)
- task.wait(0.1)
- local bodyPosition = Instance.new("BodyPosition")
- bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- bodyPosition.Position = Vector3.new(0, 10, 0) -- 世界の座標(0, 10, 0)に設定
- bodyPosition.Parent = playerTorso
- local bodyGyro = Instance.new("BodyGyro")
- bodyGyro.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
- bodyGyro.CFrame = CFrame.new(Vector3.new(0, 10, 0), humanoidRootPart.Position) -- (0, 10, 0)からプレイヤーの方を向く
- bodyGyro.Parent = playerTorso
- table.insert(bringAuraObjects, {part = playerTorso, bodyPosition = bodyPosition, bodyGyro = bodyGyro})
- end
- end
- end
- end
- end
- end)
- if not success then
- warn("Error in Bring Aura: " .. tostring(err))
- end
- wait(0.1)
- end
- end
- AuraTab:AddToggle({
- Name = "Bring Aura",
- Color = Color3.fromRGB(153, 102, 204),
- Default = false,
- Flag = "BringAura",
- Callback = function(enabled)
- if enabled then
- bringAuraCoroutine = coroutine.create(bringAuraHandler)
- coroutine.resume(bringAuraCoroutine)
- else
- if bringAuraCoroutine then
- coroutine.close(bringAuraCoroutine)
- bringAuraCoroutine = nil
- end
- for _, obj in ipairs(bringAuraObjects) do
- if obj.bodyPosition then obj.bodyPosition:Destroy() end
- if obj.bodyGyro then obj.bodyGyro:Destroy() end
- end
- bringAuraObjects = {}
- end
- end
- })
Advertisement
Add Comment
Please, Sign In to add comment