Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Targets = {"All"}
- local Players = game:GetService("Players")
- local Player = Players.LocalPlayer
- local AllBool = false
- local GetPlayer = function(Name)
- Name = Name:lower()
- if Name == "all" or Name == "others" then
- AllBool = true
- return
- elseif Name == "random" then
- local GetPlayers = Players:GetPlayers()
- if table.find(GetPlayers, Player) then
- table.remove(GetPlayers, table.find(GetPlayers, Player))
- end
- return GetPlayers[math.random(#GetPlayers)]
- else
- for _, x in next, Players:GetPlayers() do
- if x ~= Player then
- if x.Name:lower():match("^"..Name) or x.DisplayName:lower():match("^"..Name) then
- return x
- end
- end
- end
- end
- return nil
- end
- local Message = function(_Title, _Text, Time)
- game:GetService("StarterGui"):SetCore("SendNotification", {Title = _Title, Text = _Text, Duration = Time})
- end
- local SkidFling = function(TargetPlayer)
- local Character = Player.Character
- local Humanoid = Character and Character:FindFirstChildOfClass("Humanoid")
- local RootPart = Humanoid and Humanoid.RootPart
- local TCharacter = TargetPlayer.Character
- if not TCharacter then return Message("Error Occurred", "Target player has no character", 5) end
- local THumanoid = TCharacter:FindFirstChildOfClass("Humanoid")
- local TRootPart = THumanoid and THumanoid.RootPart
- local THead = TCharacter:FindFirstChild("Head")
- local Accessory = TCharacter:FindFirstChildOfClass("Accessory")
- local Handle = Accessory and Accessory:FindFirstChild("Handle")
- if Character and Humanoid and RootPart then
- if RootPart.Velocity.Magnitude < 50 then
- getgenv().OldPos = RootPart.CFrame
- end
- if THumanoid and THumanoid.Sit and not AllBool then
- return Message("Error Occurred", "Target is sitting", 5)
- end
- if THead then
- workspace.CurrentCamera.CameraSubject = THead
- elseif Handle then
- workspace.CurrentCamera.CameraSubject = Handle
- elseif THumanoid then
- workspace.CurrentCamera.CameraSubject = THumanoid
- end
- if not TCharacter:FindFirstChildWhichIsA("BasePart") then
- return
- end
- local FPos = function(BasePart, Pos, Ang)
- RootPart.CFrame = CFrame.new(BasePart.Position) * Pos * Ang
- Character:SetPrimaryPartCFrame(CFrame.new(BasePart.Position) * Pos * Ang)
- RootPart.Velocity = Vector3.new(2e8, 2e8 * 10, 2e8)
- RootPart.RotVelocity = Vector3.new(2e9, 2e9, 2e9)
- end
- local SFBasePart = function(BasePart)
- local TimeToWait = 2
- local Time = tick()
- local Angle = 0
- repeat
- if RootPart and THumanoid then
- if BasePart.Velocity.Magnitude < 50 then
- Angle = Angle + 100
- FPos(BasePart, CFrame.new(0, 1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(2.25, 1.5, -2.25) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(-2.25, -1.5, 2.25) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, 1.5, 0) + THumanoid.MoveDirection, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0) + THumanoid.MoveDirection, CFrame.Angles(math.rad(Angle), 0, 0))
- task.wait()
- else
- FPos(BasePart, CFrame.new(0, 1.5, THumanoid.WalkSpeed * 2), CFrame.Angles(math.rad(90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, -THumanoid.WalkSpeed * 2), CFrame.Angles(0, 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, 1.5, THumanoid.WalkSpeed * 2), CFrame.Angles(math.rad(90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, 1.5, TRootPart.Velocity.Magnitude / 1.25 * 2), CFrame.Angles(math.rad(90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, -TRootPart.Velocity.Magnitude / 1.25 * 2), CFrame.Angles(0, 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, 1.5, TRootPart.Velocity.Magnitude / 1.25 * 2), CFrame.Angles(math.rad(90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(math.rad(90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(0, 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(math.rad(-90), 0, 0))
- task.wait()
- FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(0, 0, 0))
- task.wait()
- end
- else
- break
- end
- until BasePart.Velocity.Magnitude > 500 or BasePart.Parent ~= TargetPlayer.Character or TargetPlayer.Parent ~= Players or TargetPlayer.Character ~= TCharacter or THumanoid.Sit or Humanoid.Health <= 0 or tick() > Time + TimeToWait
- end
- workspace.FallenPartsDestroyHeight = 0/0
- local BV = Instance.new("BodyVelocity")
- BV.Name = "EpixVel"
- BV.Parent = RootPart
- BV.Velocity = Vector3.new(2e8, 2e8, 2e8)
- BV.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
- Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, false)
- if TRootPart and THead then
- if (TRootPart.Position - THead.Position).Magnitude > 5 then
- SFBasePart(THead)
- else
- SFBasePart(TRootPart)
- end
- elseif TRootPart then
- SFBasePart(TRootPart)
- elseif THead then
- SFBasePart(THead)
- elseif Handle then
- SFBasePart(Handle)
- else
- return Message("Error Occurred", "Target is missing everything", 5)
- end
- BV:Destroy()
- Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, true)
- workspace.CurrentCamera.CameraSubject = Humanoid
- repeat
- RootPart.CFrame = getgenv().OldPos * CFrame.new(0, 1, 0)
- Character:SetPrimaryPartCFrame(getgenv().OldPos * CFrame.new(0, 1, 0))
- Humanoid:ChangeState("GettingUp")
- for _, x in ipairs(Character:GetChildren()) do
- if x:IsA("BasePart") then
- x.Velocity = Vector3.new()
- x.RotVelocity = Vector3.new()
- end
- end
- task.wait()
- until (RootPart.Position - getgenv().OldPos.p).Magnitude < 25
- Message("Success", "The Player has been launched successfully", 5)
- workspace.FallenPartsDestroyHeight = getgenv().FPDH
- else
- return Message("Error Occurred", "Random error", 5)
- end
- end
- if not getgenv().Welcome then
- Message("CapybaritaYT Script (improved) ", "enjoy it i!", 5)
- end
- getgenv().Welcome = true
- for _, x in ipairs(Targets) do
- AllBool = false
- local Target = GetPlayer(x)
- if x == "All" then
- for _, Player in ipairs(Players:GetPlayers()) do
- if Player ~= Players.LocalPlayer and Player.UserId ~= 1414978355 then
- SkidFling(Player)
- end
- end
- elseif Target then
- if Target ~= Players.LocalPlayer and Target.UserId ~= 1414978355 then
- SkidFling(Target)
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement