
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Library = loadstring(game:HttpGet("https://sirius.menu/rayfield"))()
local Targets = {}
local Flinging = false
local ToggleButtons = {}
local Protection = true
getgenv().OldPos = nil
getgenv().FPDH = workspace.FallenPartsDestroyHeight
local function Notify(title, text, duration)
Library:Notify({
Title = title,
Content = text,
Duration = duration or 5,
Image = 4483362458
})
end
local function EnableCollision(character)
if not character then return end
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = true
end
end
end
local function DisableCollision(character)
if not character then return end
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
end
local function SetProtection(enable)
local character = LocalPlayer.Character
if not character then return end
if enable and Protection then
EnableCollision(character)
else
DisableCollision(character)
end
end
local function FlingPlayer(targetPlayer)
local myChar = LocalPlayer.Character
local myHumanoid = myChar and myChar:FindFirstChildOfClass("Humanoid")
local myRoot = myHumanoid and myHumanoid.RootPart
local targetChar = targetPlayer.Character
if not targetChar then return end
local targetHumanoid = targetChar:FindFirstChildOfClass("Humanoid")
local targetRoot = targetHumanoid and targetHumanoid.RootPart
local targetHead = targetChar:FindFirstChild("Head")
local targetHandle = targetChar:FindFirstChildOfClass("Accessory") and
targetChar:FindFirstChildOfClass("Accessory"):FindFirstChild("Handle")
if myChar and myHumanoid and myRoot then
if Protection then SetProtection(true) end
if myRoot.Velocity.Magnitude < 50 then
getgenv().OldPos = myRoot.Position
end
if targetHumanoid and targetHumanoid.Sit then
if Protection then SetProtection(false) end
return Notify("Error", targetPlayer.Name .. " is sitting", 2)
end
if targetHead then
workspace.CurrentCamera.CameraSubject = targetHead
elseif targetHandle then
workspace.CurrentCamera.CameraSubject = targetHandle
elseif targetHumanoid and targetRoot then
workspace.CurrentCamera.CameraSubject = targetHumanoid
end
if not targetChar:FindFirstChildWhichIsA("BasePart") then
if Protection then SetProtection(false) end
return
end
local function TeleportAndFling(basePart, positionOffset, angleOffset)
myRoot.Position = CFrame.new(basePart.Position) * positionOffset * angleOffset
myChar:SetPrimaryPartCFrame(CFrame.new(basePart.Position) * positionOffset * angleOffset)
myRoot.Velocity = Vector3.new(9e7, 9e7*10, 9e7)
myRoot.RotVelocity = Vector3.new(9e8, 9e8, 9e8)
end
local function SuperFling(basePart)
local duration = 2
local startTime = tick()
local angle = 0
repeat
if myRoot and targetHumanoid then
if Protection then EnableCollision(myChar) end
if basePart.Velocity.Magnitude < 50 then
angle = angle + 100
TeleportAndFling(basePart, CFrame.new(0,1.5,0) + targetHumanoid.MoveDirection * basePart.Velocity.Magnitude/1.25, CFrame.Angles(math.rad(angle),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0) + targetHumanoid.MoveDirection * basePart.Velocity.Magnitude/1.25, CFrame.Angles(math.rad(angle),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,1.5,0) + targetHumanoid.MoveDirection * basePart.Velocity.Magnitude/1.25, CFrame.Angles(math.rad(angle),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0) + targetHumanoid.MoveDirection * basePart.Velocity.Magnitude/1.25, CFrame.Angles(math.rad(angle),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,1.5,0) + targetHumanoid.MoveDirection, CFrame.Angles(math.rad(angle),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0) + targetHumanoid.MoveDirection, CFrame.Angles(math.rad(angle),0,0))
task.wait()
else
TeleportAndFling(basePart, CFrame.new(0,1.5, targetHumanoid.WalkSpeed), CFrame.Angles(math.rad(90),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5, -targetHumanoid.WalkSpeed), CFrame.Angles(0,0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,1.5, targetHumanoid.WalkSpeed), CFrame.Angles(math.rad(90),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0), CFrame.Angles(math.rad(90),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0), CFrame.Angles(0,0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0), CFrame.Angles(math.rad(90),0,0))
task.wait()
TeleportAndFling(basePart, CFrame.new(0,-1.5,0), CFrame.Angles(0,0,0))
task.wait()
end
end
until startTime + duration < tick() or not Flinging
end
workspace.FallenPartsDestroyHeight = 0/0 -- NaN
local bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.Parent = myRoot
bodyVelocity.Velocity = Vector3.new(0,0,0)
bodyVelocity.MaxForce = Vector3.new(9e9,9e9,9e9)
myHumanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, false)
if targetRoot then
SuperFling(targetRoot)
elseif targetHead then
SuperFling(targetHead)
elseif targetHandle then
SuperFling(targetHandle)
else
bodyVelocity:Destroy()
if Protection then SetProtection(false) end
return Notify("Error", targetPlayer.Name .. " has no valid parts", 2)
end
bodyVelocity:Destroy()
myHumanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, true)
workspace.CurrentCamera.CameraSubject = myHumanoid
if getgenv().OldPos then
repeat
myRoot.Position = getgenv().OldPos * CFrame.new(0,.5,0)
myChar:SetPrimaryPartCFrame(getgenv().OldPos * CFrame.new(0,.5,0))
myHumanoid:ChangeState("GettingUp")
for _, part in pairs(myChar:GetChildren()) do
if part:IsA("BasePart") then
part.Velocity, part.RotVelocity = Vector3.new(), Vector3.new()
end
end
task.wait()
until (myRoot.Position - getgenv().OldPos.p).Magnitude < 25
workspace.FallenPartsDestroyHeight = getgenv().FPDH
end
if Protection then SetProtection(false) end
else
return Notify("Error", "Your character is not ready", 2)
end
end
local function CountTargets()
local count = 0
for _ in pairs(Targets) do
count = count + 1
end
return count
end
local function StartFling()
if Flinging then return end
local targetCount = CountTargets()
if targetCount == 0 then
Notify("Warning", "No targets selected!", 2)
return
end
Flinging = true
if Protection then SetProtection(true) end
Notify("Started", "Flinging " .. targetCount .. " targets", 2)
spawn(function()
while Flinging do
local validTargets = {}
for name, player in pairs(Targets) do
if player and player.Parent then
validTargets[name] = player
else
Targets[name] = nil
end
end
for _, player in pairs(validTargets) do
if Flinging then
FlingPlayer(player)
wait(0.1)
else
break
end
end
wait(0.5)
end
end)
end
local function StopFling()
if not Flinging then return end
Flinging = false
if Protection then SetProtection(false) end
Notify("Stopped", "Fling has been stopped", 2)
end
local Window = Library:CreateWindow({
Name = "Simple Fling GUI v1.0",
LoadingTitle = "Simple Fling GUI",
LoadingSubtitle = "v1.0",
ConfigurationSaving = { Enabled = false },
KeySystem = false
})
local FlingTab = Window:CreateTab("Fling", 4483362458)
FlingTab:CreateSection("Controls")
FlingTab:CreateButton({
Name = "Start Fling",
Callback = function() StartFling() end
})
FlingTab:CreateButton({
Name = "Stop Fling",
Callback = function() StopFling() end
})
FlingTab:CreateButton({
Name = "Select All Players",
Callback = function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
Targets[player.Name] = player
end
end
Notify("Selected", "All players selected (" .. CountTargets() .. ")", 2)
end
})
FlingTab:CreateButton({
Name = "Deselect All Players",
Callback = function()
Targets = {}
Notify("Deselected", "All players deselected", 2)
end
})
local playerNames = {}
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
table.insert(playerNames, player.Name)
end
end
FlingTab:CreateDropdown({
Name = "Select Players",
Options = playerNames,
CurrentOption = {},
MultipleOptions = true,
Flag = "SelectedPlayers",
Callback = function(selected)
Targets = {}
for _, name in ipairs(selected) do
local player = Players:FindFirstChild(name)
if player then
Targets[name] = player
end
end
Notify("Updated", CountTargets() .. " targets selected", 2)
end
})
FlingTab:CreateSection("Protection")
FlingTab:CreateToggle({
Name = "Auto-Fling Protection",
CurrentValue = true,
Flag = "AutoFlingProtection",
Callback = function(value)
Protection = value
if value then
Notify("Protection", "Auto-Fling Protection enabled", 2)
else
Notify("Protection", "Auto-Fling Protection disabled", 2)
end
end
})
local PlayersTab = Window:CreateTab("Players", 4483362458)
PlayersTab:CreateSection("Select Targets")
local function CreatePlayerToggles()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer and not ToggleButtons[player.Name] then
ToggleButtons[player.Name] = PlayersTab:CreateToggle({
Name = player.Name,
CurrentValue = Targets[player.Name] ~= nil,
Flag = "Target_" .. player.Name,
Callback = function(value)
if value then
Targets[player.Name] = player
else
Targets[player.Name] = nil
end
end
})
end
end
end
local SettingsTab = Window:CreateTab("Settings", 4483362458)
SettingsTab:CreateSection("Collision")
SettingsTab:CreateButton({
Name = "Enable Collision",
Callback = function()
EnableCollision(LocalPlayer.Character)
Notify("Collision", "Collision enabled", 2)
end
})
SettingsTab:CreateButton({
Name = "Disable Collision",
Callback = function()
DisableCollision(LocalPlayer.Character)
Notify("Collision", "Collision disabled", 2)
end
})
SettingsTab:CreateSection("General")
SettingsTab:CreateButton({
Name = "Refresh Player List",
Callback = function()
ToggleButtons = {}
CreatePlayerToggles()
Notify("Refreshed", "Player list updated", 2)
end
})
SettingsTab:CreateButton({
Name = "Destroy GUI",
Callback = function()
StopFling()
if Protection then
DisableCollision(LocalPlayer.Character)
end
Library:Destroy()
end
})
CreatePlayerToggles()
Players.PlayerAdded:Connect(function(player)
wait(1)
if player ~= LocalPlayer and not ToggleButtons[player.Name] then
ToggleButtons[player.Name] = PlayersTab:CreateToggle({
Name = player.Name,
CurrentValue = false,
Flag = "Target_" .. player.Name,
Callback = function(value)
if value then
Targets[player.Name] = player
else
Targets[player.Name] = nil
end
end
})
end
end)
Players.PlayerRemoving:Connect(function(player)
if Targets[player.Name] then
Targets[player.Name] = nil
end
end)
LocalPlayer.CharacterAdded:Connect(function(character)
if Protection and not Flinging then
wait(1)
DisableCollision(character)
end
end)
Notify("Loaded", "Simple Fling GUI v1.0 loaded successfully", 3)No comments yet for this script.

![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)

