
KeylessUniversal

local FLING_FORCE = Vector3.new(1e20, 1e20, 1e20)
local OFFSET_POS = CFrame.new(0, 0, 0)
local OFFSET_NEG = CFrame.new(0, 0, 0)
local FLING_TIME = 5
local MAX_ANGLE_INCREMENT = 500
local PART_SWITCH_DELAY = 0.5
local Players = game:GetService("Players")
local Player = Players.LocalPlayer
getgenv().FPDH = workspace.FallenPartsDestroyHeight
local function SafeReset(Character, oldPos)
local Humanoid = Character:FindFirstChildOfClass("Humanoid")
local RootPart = Humanoid and Humanoid.RootPart
if not RootPart then return end
repeat
RootPart.CFrame = oldPos * CFrame.new(0, 0, 0)
Character:SetPrimaryPartCFrame(oldPos * CFrame.new(0, 0, 0))
Humanoid:ChangeState(Enum.HumanoidStateType.GettingUp)
for _, part in ipairs(Character:GetChildren()) do
if part:IsA("BasePart") then
part.Velocity = Vector3.zero
part.RotVelocity = Vector3.zero
end
end
task.wait()
until (RootPart.Position - oldPos.p).Magnitude < 25
end
local function Fling(TargetPlayer)
local Character = Player.Character
local Humanoid = Character and Character:FindFirstChildOfClass("Humanoid")
local RootPart = Humanoid and Humanoid.RootPart
if not (Character and Humanoid and RootPart) then
return game.StarterGui:SetCore("SendNotification", {
Title = "Error",
Text = "Your character is unavailable.",
Duration = 5
})
end
local TCharacter = TargetPlayer.Character
if not TCharacter then return end
local THumanoid = TCharacter:FindFirstChildOfClass("Humanoid")
if not THumanoid then return end
if THumanoid.Sit then
game.StarterGui:SetCore("SendNotification", {
Title = "Error",
Text = "Target is sitting.",
Duration = 5
})
return
end
if RootPart.Velocity.Magnitude < 25 then
getgenv().OldPos = RootPart.CFrame
end
local THead = TCharacter:FindFirstChild("Head")
local Accessory = TCharacter:FindFirstChildOfClass("Accessory")
local Handle = Accessory and Accessory:FindFirstChild("Handle")
workspace.CurrentCamera.CameraSubject = THead or Handle or THumanoid or RootPart
workspace.FallenPartsDestroyHeight = 0 / 0
local BV = Instance.new("BodyVelocity")
BV.Name = "EpixVel"
BV.Velocity = FLING_FORCE
BV.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
BV.Parent = RootPart
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, false)
local function FPos(basePart, offset, angle)
RootPart.CFrame = basePart.CFrame * offset * angle
Character:SetPrimaryPartCFrame(basePart.CFrame * offset * angle)
RootPart.Velocity = FLING_FORCE / 9e8
RootPart.RotVelocity = FLING_FORCE
end
local function SFBasePart(TargetCharacter)
local startTime = tick()
local angle = 0
local parts = {}
for _, part in ipairs(TargetCharacter:GetDescendants()) do
if part:IsA("BasePart") then
table.insert(parts, part)
elseif part:IsA("Accessory") and part:FindFirstChild("Handle") then
table.insert(parts, part.Handle)
end
end
if #parts == 0 then return end
while tick() - startTime < FLING_TIME do
if not (RootPart and THumanoid and THumanoid.Health > 0) then break end
local part = parts[math.random(#parts)]
if not part or not part:IsDescendantOf(TargetCharacter) then continue end
angle += MAX_ANGLE_INCREMENT
local md = THumanoid.MoveDirection
local v = part.Velocity.Magnitude
local function pattern(offset)
local push = math.clamp(v, 0, 16) / 2.5 -- cap the offset to avoid flying too far
FPos(part, offset + md * push, CFrame.Angles(math.rad(angle), 0, 0))
task.wait(PART_SWITCH_DELAY)
end
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0.5, THumanoid.WalkSpeed / 4))
pattern(CFrame.new(0, -0.5, -THumanoid.WalkSpeed / 4))
pattern(CFrame.new(0, 0, 0)) -- direct hit
pattern(CFrame.new(0, 0, 0)) -- direct hit again
pattern(CFrame.new(0, 0, THumanoid.WalkSpeed / 8))
pattern(CFrame.new(0, 0, -THumanoid.WalkSpeed / 8))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, 0, 0))
pattern(CFrame.new(0, -0, 0))
pattern(CFrame.new(0, 0.5, THumanoid.WalkSpeed / 4))
pattern(CFrame.new(0, 0.5, -THumanoid.WalkSpeed / 4))
pattern(CFrame.new(0, 0, 0)) -- direct hit
pattern(CFrame.new(0, 0, 0)) -- direct hit again
pattern(CFrame.new(0, 0, THumanoid.WalkSpeed / 8))
pattern(CFrame.new(0, 0, -THumanoid.WalkSpeed / 8))
end
end
SFBasePart(TCharacter)
BV:Destroy()
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, true)
workspace.CurrentCamera.CameraSubject = Humanoid
SafeReset(Character, getgenv().OldPos)
workspace.FallenPartsDestroyHeight = getgenv().FPDH
end
-- Fling All
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= Player and plr.UserId ~= 1414978355 then
Fling(plr)
elseif plr.UserId == 1414978355 then
game:GetService("StarterGui"):SetCore("SendNotification", {
Title = "Notice",
Text = "Owner is whitelisted!",
Duration = 5
})
end
endNo comments yet for this script.



