-- player fling gui local Players = game:GetService("Players") local Player = Players.LocalPlayer local ScreenGui = Instance.new("ScreenGui") local Frame = Instance.new("Frame") local TextBox = Instance.new("TextBox") local TextButton = Instance.new("TextButton") ScreenGui.Parent = Player:WaitForChild("PlayerGui") ScreenGui.ResetOnSpawn = false Frame.Parent = ScreenGui Frame.BackgroundColor3 = Color3.fromRGB(33, 33, 33) Frame.Position = UDim2.new(0.5, -100, 0.5, -50) Frame.Size = UDim2.new(0, 200, 0, 100) Frame.Active = true Frame.Draggable = true TextBox.Parent = Frame TextBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255) TextBox.Position = UDim2.new(0.1, 0, 0.2, 0) TextBox.Size = UDim2.new(0.8, 0, 0.2, 0) TextBox.Font = Enum.Font.SourceSans TextBox.PlaceholderText = "Enter username" TextBox.Text = "" TextBox.TextColor3 = Color3.fromRGB(0, 0, 0) TextBox.TextSize = 14 TextButton.Parent = Frame TextButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0) TextButton.Position = UDim2.new(0.1, 0, 0.5, 0) TextButton.Size = UDim2.new(0.8, 0, 0.4, 0) TextButton.Font = Enum.Font.SourceSans TextButton.Text = "FLING!" TextButton.TextColor3 = Color3.fromRGB(255, 255, 255) TextButton.TextSize = 20 local function GetPlayer(Name) Name = Name:lower() 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 return nil end local function Message(_Title, _Text, Time) game:GetService("StarterGui"):SetCore("SendNotification", {Title = _Title, Text = _Text, Duration = Time}) end local function SkidFling(TargetPlayer) local Character = Player.Character local Humanoid = Character and Character:FindFirstChildOfClass("Humanoid") local RootPart = Humanoid and Humanoid.RootPart local TCharacter = TargetPlayer.Character local THumanoid = TCharacter and TCharacter:FindFirstChildOfClass("Humanoid") local TRootPart = THumanoid and THumanoid.RootPart local THead = TCharacter and TCharacter:FindFirstChild("Head") local Accessory = TCharacter and 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 then return Message("Error Occurred", "Target is sitting", 5) end if THead then workspace.CurrentCamera.CameraSubject = THead elseif Handle then workspace.CurrentCamera.CameraSubject = Handle else workspace.CurrentCamera.CameraSubject = THumanoid end if not TCharacter:FindFirstChildWhichIsA("BasePart") then return end local function FPos(BasePart, Pos, Ang) RootPart.CFrame = CFrame.new(BasePart.Position) * Pos * Ang Character:SetPrimaryPartCFrame(CFrame.new(BasePart.Position) * Pos * Ang) RootPart.Velocity = Vector3.new(9e7, 9e7 * 10, 9e7) RootPart.RotVelocity = Vector3.new(9e8, 9e8, 9e8) end local function SFBasePart(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), CFrame.Angles(math.rad(90), 0, 0)) task.wait() FPos(BasePart, CFrame.new(0, -1.5, -THumanoid.WalkSpeed), CFrame.Angles(0, 0, 0)) task.wait() FPos(BasePart, CFrame.new(0, 1.5, THumanoid.WalkSpeed), CFrame.Angles(math.rad(90), 0, 0)) task.wait() FPos(BasePart, CFrame.new(0, 1.5, TRootPart.Velocity.Magnitude / 1.25), CFrame.Angles(math.rad(90), 0, 0)) task.wait() FPos(BasePart, CFrame.new(0, -1.5, -TRootPart.Velocity.Magnitude / 1.25), CFrame.Angles(0, 0, 0)) task.wait() FPos(BasePart, CFrame.new(0, 1.5, TRootPart.Velocity.Magnitude / 1.25), 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 not 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(9e8, 9e8, 9e8) BV.MaxForce = Vector3.new(1/0, 1/0, 1/0) Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, false) if TRootPart and THead then if (TRootPart.CFrame.p - THead.CFrame.p).Magnitude > 5 then SFBasePart(THead) else SFBasePart(TRootPart) end elseif TRootPart and not THead then SFBasePart(TRootPart) elseif not TRootPart and THead then SFBasePart(THead) elseif not TRootPart and not THead and Accessory and 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, .5, 0) Character:SetPrimaryPartCFrame(getgenv().OldPos * CFrame.new(0, .5, 0)) Humanoid:ChangeState("GettingUp") table.foreach(Character:GetChildren(), function(_, x) if x:IsA("BasePart") then x.Velocity, x.RotVelocity = Vector3.new(), Vector3.new() end end) task.wait() until (RootPart.Position - getgenv().OldPos.p).Magnitude < 25 workspace.FallenPartsDestroyHeight = getgenv().FPDH else return Message("Error Occurred", "Random error", 5) end end TextButton.MouseButton1Click:Connect(function() local targetName = TextBox.Text local targetPlayer = GetPlayer(targetName) if targetPlayer then SkidFling(targetPlayer) else Message("Error Occurred", "Invalid username", 5) end end)