Загрузка данных
-- Скрипт для Delta Executor: розовая кнопка "Fly" с noclip
local player = game.Players.LocalPlayer
local FLY_SPEED = 50
local BUTTON_COLOR = Color3.fromRGB(255, 105, 180)
local flyEnabled = false
local bodyVelocity, bodyGyro
local noclipParts = {}
-- Создаём GUI
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = player.PlayerGui
local button = Instance.new("ImageButton")
button.Size = UDim2.new(0, 70, 0, 70)
button.Position = UDim2.new(0, 10, 0, 10)
button.BackgroundColor3 = BUTTON_COLOR
button.BorderSizePixel = 0
button.Image = "rbxassetid://"
button.ImageColor3 = BUTTON_COLOR
button.Parent = screenGui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(1, 0)
corner.Parent = button
local text = Instance.new("TextLabel")
text.Size = UDim2.new(1, 0, 1, 0)
text.BackgroundTransparency = 1
text.Text = "Fly"
text.TextColor3 = Color3.new(1, 1, 1)
text.TextScaled = true
text.Font = Enum.Font.SourceSansBold
text.Parent = button
local function toggleFly()
flyEnabled = not flyEnabled
local character = player.Character
if not character then return end
local root = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChildOfClass("Humanoid")
if not root or not humanoid then return end
if flyEnabled then
humanoid:SetStateEnabled(Enum.HumanoidStateType.Falling, false)
humanoid:SetStateEnabled(Enum.HumanoidStateType.Jumping, false)
humanoid.PlatformStand = true
bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.MaxForce = Vector3.new(1e6, 1e6, 1e6)
bodyVelocity.Velocity = Vector3.new(0, 0, 0)
bodyVelocity.Parent = root
bodyGyro = Instance.new("BodyGyro")
bodyGyro.MaxTorque = Vector3.new(1e6, 1e6, 1e6)
bodyGyro.CFrame = root.CFrame
bodyGyro.Parent = root
for _, part in ipairs(character:GetDescendants()) do
if part:IsA("BasePart") and part.CanCollide then
part.CanCollide = false
table.insert(noclipParts, part)
end
end
text.Text = "Fly ON"
else
humanoid.PlatformStand = false
humanoid:SetStateEnabled(Enum.HumanoidStateType.Falling, true)
humanoid:SetStateEnabled(Enum.HumanoidStateType.Jumping, true)
if bodyVelocity then bodyVelocity:Destroy() end
if bodyGyro then bodyGyro:Destroy() end
for _, part in ipairs(noclipParts) do
if part and part.Parent then
part.CanCollide = true
end
end
noclipParts = {}
text.Text = "Fly"
end
end
button.MouseButton1Click:Connect(toggleFly)
player.CharacterAdded:Connect(function()
if flyEnabled then
flyEnabled = false
text.Text = "Fly"
noclipParts = {}
end
end)
game:GetService("RunService").RenderStepped:Connect(function()
if not flyEnabled then return end
local character = player.Character
if not character then return end
local root = character:FindFirstChild("HumanoidRootPart")
if not root then return end
local cam = workspace.CurrentCamera
local forward = cam.CFrame.LookVector * Vector3.new(1, 0, 1)
forward = forward.Unit
local right = cam.CFrame.RightVector * Vector3.new(1, 0, 1)
right = right.Unit
local up = Vector3.new(0, 1, 0)
local moveDir = Vector3.new(0, 0, 0)
local uis = game:GetService("UserInputService")
if uis:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + forward end
if uis:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - forward end
if uis:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - right end
if uis:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + right end
if uis:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + up end
if uis:IsKeyDown(Enum.KeyCode.LeftShift) then moveDir = moveDir - up end
if moveDir.Magnitude > 0 then
moveDir = moveDir.Unit * FLY_SPEED
else
moveDir = Vector3.new(0, 0, 0)
end
if bodyVelocity then
bodyVelocity.Velocity = moveDir
end
if bodyGyro then
local look = cam.CFrame.LookVector * Vector3.new(1, 0, 1)
if look.Magnitude > 0.01 then
local targetCFrame = CFrame.lookAt(root.Position, root.Position + look, Vector3.new(0, 1, 0))
bodyGyro.CFrame = targetCFrame
end
end
end)