K_4VAE Fe Fly Script
Key RequiredUniversal

K_4VAE Fe Fly Script

Universal ScriptK_4VAE_RobloxK_4VAE_Roblox 627 views 5.7K executesUpdated Aug 28, 2026
Unrated
00
Lua Script•1912 lines (44038 chars)
--// ECLIPSE• FE FLY
--// Made by K_4VAE on Roblox

local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local Lighting = game:GetService("Lighting")

local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")

--==================================================
-- CONFIG
--==================================================

local LOADING_TIME = 3
local PARTICLE_INTERVAL = 15

local DEFAULT_SPEED = 60
local MIN_SPEED = 1
local MAX_SPEED = 500

local BLACK = Color3.fromRGB(7, 7, 9)
local DARK = Color3.fromRGB(13, 13, 16)
local DARKER = Color3.fromRGB(20, 20, 24)

local ORANGE = Color3.fromRGB(255, 105, 15)
local LIGHT_ORANGE = Color3.fromRGB(255, 160, 60)
local DARK_ORANGE = Color3.fromRGB(135, 45, 5)

local WHITE = Color3.fromRGB(245, 245, 245)
local GREY = Color3.fromRGB(145, 145, 145)

--==================================================
-- STATE
--==================================================

local flying = false
local unloaded = false
local guiHidden = false

local flySpeed = DEFAULT_SPEED
local keyboardLayout = "AZERTY"

local waitingForKey = nil

local character
local humanoid
local rootPart

local flyVelocity
local flyGyro
local flyConnection

local espEnabled = false
local playerNamesEnabled = false
local skeletonEnabled = false

local fpsBoostEnabled = false
local antiLagEnabled = false
local rtxEnabled = false
local noclipEnabled = false

local noclipConnection

local connections = {}
local espObjects = {}

--==================================================
-- ORIGINAL LIGHTING
--==================================================

local originalLighting = {
	GlobalShadows = Lighting.GlobalShadows,
	FogEnd = Lighting.FogEnd,
	Brightness = Lighting.Brightness,
	ExposureCompensation = Lighting.ExposureCompensation,
	Ambient = Lighting.Ambient,
	OutdoorAmbient = Lighting.OutdoorAmbient,
	ClockTime = Lighting.ClockTime
}

--==================================================
-- KEYBINDS
--==================================================

local keys = {
	Fly = Enum.KeyCode.F,

	Forward = Enum.KeyCode.Z,
	Backward = Enum.KeyCode.S,

	Left = Enum.KeyCode.Q,
	Right = Enum.KeyCode.D,

	Up = Enum.KeyCode.E,
	Down = Enum.KeyCode.X
}

--==================================================
-- HELPERS
--==================================================

local function connect(signal, callback)
	local connection = signal:Connect(callback)
	table.insert(connections, connection)
	return connection
end

local function disconnectAll()
	for _, connection in ipairs(connections) do
		if connection then
			connection:Disconnect()
		end
	end

	table.clear(connections)
end

local function createCorner(parent, radius)
	local corner = Instance.new("UICorner")
	corner.CornerRadius = UDim.new(0, radius or 8)
	corner.Parent = parent
	return corner
end

local function createStroke(parent, color, thickness, transparency)
	local stroke = Instance.new("UIStroke")
	stroke.Color = color
	stroke.Thickness = thickness or 1
	stroke.Transparency = transparency or 0
	stroke.Parent = parent
	return stroke
end

--==================================================
-- LOADING SCREEN
--==================================================

local gui = Instance.new("ScreenGui")
gui.Name = "EclipseFEFly"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.Parent = PlayerGui

local loading = Instance.new("Frame")
loading.Size = UDim2.fromScale(1, 1)
loading.BackgroundColor3 = BLACK
loading.BorderSizePixel = 0
loading.ZIndex = 100
loading.Parent = gui

local loadingTitle = Instance.new("TextLabel")
loadingTitle.Size = UDim2.new(1, 0, 0, 60)
loadingTitle.Position = UDim2.new(0, 0, 0.34, 0)
loadingTitle.BackgroundTransparency = 1
loadingTitle.Text = "ECLIPSE"
loadingTitle.TextColor3 = ORANGE
loadingTitle.TextSize = 40
loadingTitle.Font = Enum.Font.GothamBlack
loadingTitle.ZIndex = 101
loadingTitle.Parent = loading

local loadingSub = Instance.new("TextLabel")
loadingSub.Size = UDim2.new(1, 0, 0, 30)
loadingSub.Position = UDim2.new(0, 0, 0.43, 0)
loadingSub.BackgroundTransparency = 1
loadingSub.Text = "FE FLY"
loadingSub.TextColor3 = WHITE
loadingSub.TextSize = 17
loadingSub.Font = Enum.Font.GothamBold
loadingSub.ZIndex = 101
loadingSub.Parent = loading

local loadingMade = Instance.new("TextLabel")
loadingMade.Size = UDim2.new(1, 0, 0, 25)
loadingMade.Position = UDim2.new(0, 0, 0.49, 0)
loadingMade.BackgroundTransparency = 1
loadingMade.Text = "Made by K_4VAE on Roblox"
loadingMade.TextColor3 = LIGHT_ORANGE
loadingMade.TextSize = 14
loadingMade.Font = Enum.Font.GothamBold
loadingMade.ZIndex = 101
loadingMade.Parent = loading

local loadingText = Instance.new("TextLabel")
loadingText.Size = UDim2.new(1, 0, 0, 25)
loadingText.Position = UDim2.new(0, 0, 0.535, 0)
loadingText.BackgroundTransparency = 1
loadingText.Text = "Initializing..."
loadingText.TextColor3 = GREY
loadingText.TextSize = 13
loadingText.Font = Enum.Font.Gotham
loadingText.ZIndex = 101
loadingText.Parent = loading

local loadingBack = Instance.new("Frame")
loadingBack.Size = UDim2.new(0, 300, 0, 5)
loadingBack.Position = UDim2.new(0.5, -150, 0.59, 0)
loadingBack.BackgroundColor3 = DARKER
loadingBack.BorderSizePixel = 0
loadingBack.ZIndex = 101
loadingBack.Parent = loading

createCorner(loadingBack, 5)

local loadingBar = Instance.new("Frame")
loadingBar.Size = UDim2.new(0, 0, 1, 0)
loadingBar.BackgroundColor3 = ORANGE
loadingBar.BorderSizePixel = 0
loadingBar.ZIndex = 102
loadingBar.Parent = loadingBack

createCorner(loadingBar, 5)

TweenService:Create(
	loadingBar,
	TweenInfo.new(LOADING_TIME, Enum.EasingStyle.Linear),
	{Size = UDim2.fromScale(1, 1)}
):Play()

task.wait(LOADING_TIME)

if loading then
	loading:Destroy()
end

--==================================================
-- MAIN FRAME
--==================================================

local main = Instance.new("Frame")
main.Name = "Main"
main.Size = UDim2.new(0, 330, 0, 310)
main.Position = UDim2.new(0.5, -165, 0.5, -155)
main.BackgroundColor3 = BLACK
main.BorderSizePixel = 0
main.ClipsDescendants = false
main.ZIndex = 5
main.Parent = gui

createCorner(main, 14)
createStroke(main, ORANGE, 1.5, 0.2)

local glow = Instance.new("ImageLabel")
glow.Name = "Glow"
glow.AnchorPoint = Vector2.new(0.5, 0.5)
glow.Position = UDim2.fromScale(0.5, 0.5)
glow.Size = UDim2.new(1, 45, 1, 45)
glow.BackgroundTransparency = 1
glow.Image = "rbxassetid://5028857084"
glow.ImageColor3 = ORANGE
glow.ImageTransparency = 0.9
glow.ZIndex = 4
glow.Parent = main

--==================================================
-- TITLE
--==================================================

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -75, 0, 50)
title.Position = UDim2.new(0, 15, 0, 0)
title.BackgroundTransparency = 1
title.Text = "ECLIPSE • FE FLY"
title.TextColor3 = WHITE
title.TextSize = 20
title.Font = Enum.Font.GothamBlack
title.TextXAlignment = Enum.TextXAlignment.Left
title.ZIndex = 7
title.Parent = main

local titleLine = Instance.new("Frame")
titleLine.Size = UDim2.new(0, 50, 0, 2)
titleLine.Position = UDim2.new(0, 16, 0, 48)
titleLine.BackgroundColor3 = ORANGE
titleLine.BorderSizePixel = 0
titleLine.ZIndex = 7
titleLine.Parent = main

--==================================================
-- SETTINGS BUTTON
--==================================================

local settingsButton = Instance.new("TextButton")
settingsButton.Size = UDim2.new(0, 40, 0, 40)
settingsButton.Position = UDim2.new(1, -50, 0, 5)
settingsButton.BackgroundColor3 = DARK
settingsButton.Text = "⚙"
settingsButton.TextColor3 = ORANGE
settingsButton.TextSize = 21
settingsButton.BorderSizePixel = 0
settingsButton.ZIndex = 8
settingsButton.Parent = main

createCorner(settingsButton, 8)

--==================================================
-- FLY BUTTON
--==================================================

local flyButton = Instance.new("TextButton")
flyButton.Size = UDim2.new(0, 270, 0, 48)
flyButton.Position = UDim2.new(0.5, -135, 0, 65)
flyButton.BackgroundColor3 = DARK
flyButton.Text = "✦  FLY : OFF"
flyButton.TextColor3 = ORANGE
flyButton.TextSize = 17
flyButton.Font = Enum.Font.GothamBold
flyButton.BorderSizePixel = 0
flyButton.ZIndex = 7
flyButton.Parent = main

createCorner(flyButton, 9)
createStroke(flyButton, DARK_ORANGE, 1, 0.25)

--==================================================
-- FLY KEY
--==================================================

local flyKeyButton = Instance.new("TextButton")
flyKeyButton.Size = UDim2.new(0, 270, 0, 40)
flyKeyButton.Position = UDim2.new(0.5, -135, 0, 125)
flyKeyButton.BackgroundColor3 = DARK
flyKeyButton.Text = "Fly Key : F"
flyKeyButton.TextColor3 = WHITE
flyKeyButton.TextSize = 14
flyKeyButton.Font = Enum.Font.Gotham
flyKeyButton.BorderSizePixel = 0
flyKeyButton.ZIndex = 7
flyKeyButton.Parent = main

createCorner(flyKeyButton, 8)

--==================================================
-- SPEED
--==================================================

local speedBox = Instance.new("TextBox")
speedBox.Size = UDim2.new(0, 270, 0, 40)
speedBox.Position = UDim2.new(0.5, -135, 0, 175)
speedBox.BackgroundColor3 = DARK
speedBox.Text = tostring(DEFAULT_SPEED)
speedBox.PlaceholderText = "Fly Speed"
speedBox.TextColor3 = WHITE
speedBox.TextSize = 14
speedBox.Font = Enum.Font.Gotham
speedBox.ClearTextOnFocus = false
speedBox.BorderSizePixel = 0
speedBox.ZIndex = 7
speedBox.Parent = main

createCorner(speedBox, 8)

--==================================================
-- UNLOAD
--==================================================

local unloadButton = Instance.new("TextButton")
unloadButton.Size = UDim2.new(0, 120, 0, 32)
unloadButton.Position = UDim2.new(0, 12, 1, -44)
unloadButton.BackgroundColor3 = Color3.fromRGB(25, 10, 8)
unloadButton.Text = "✕ UNLOAD"
unloadButton.TextColor3 = Color3.fromRGB(255, 90, 60)
unloadButton.TextSize = 12
unloadButton.Font = Enum.Font.GothamBold
unloadButton.BorderSizePixel = 0
unloadButton.ZIndex = 7
unloadButton.Parent = main

createCorner(unloadButton, 7)
createStroke(unloadButton, Color3.fromRGB(130, 35, 20), 1, 0.3)

--==================================================
-- SETTINGS
--==================================================

local settings = Instance.new("Frame")
settings.Name = "Settings"
settings.Size = UDim2.new(0, 450, 0, 600)
settings.Position = UDim2.new(0.5, -225, 0.5, -300)
settings.BackgroundColor3 = BLACK
settings.BorderSizePixel = 0
settings.Visible = false
settings.ClipsDescendants = true
settings.ZIndex = 20
settings.Parent = gui

createCorner(settings, 14)
createStroke(settings, ORANGE, 1.5, 0.2)

local settingsTitle = Instance.new("TextLabel")
settingsTitle.Size = UDim2.new(1, -65, 0, 50)
settingsTitle.Position = UDim2.new(0, 15, 0, 0)
settingsTitle.BackgroundTransparency = 1
settingsTitle.Text = "⚙  SETTINGS"
settingsTitle.TextColor3 = WHITE
settingsTitle.TextSize = 21
settingsTitle.Font = Enum.Font.GothamBlack
settingsTitle.TextXAlignment = Enum.TextXAlignment.Left
settingsTitle.ZIndex = 22
settingsTitle.Parent = settings

local closeSettings = Instance.new("TextButton")
closeSettings.Size = UDim2.new(0, 40, 0, 40)
closeSettings.Position = UDim2.new(1, -50, 0, 5)
closeSettings.BackgroundColor3 = DARK
closeSettings.Text = "X"
closeSettings.TextColor3 = ORANGE
closeSettings.TextSize = 17
closeSettings.Font = Enum.Font.GothamBold
closeSettings.BorderSizePixel = 0
closeSettings.ZIndex = 22
closeSettings.Parent = settings

createCorner(closeSettings, 8)

--==================================================
-- SETTINGS SCROLL
--==================================================

local scroll = Instance.new("ScrollingFrame")
scroll.Size = UDim2.new(1, -20, 1, -60)
scroll.Position = UDim2.new(0, 10, 0, 55)
scroll.BackgroundTransparency = 1
scroll.BorderSizePixel = 0
scroll.ScrollBarThickness = 3
scroll.ScrollBarImageColor3 = ORANGE
scroll.CanvasSize = UDim2.new(0, 0, 0, 850)
scroll.ZIndex = 21
scroll.Parent = settings

--==================================================
-- SECTION
--==================================================

local function createSection(text, y)

	local label = Instance.new("TextLabel")
	label.Size = UDim2.new(1, -20, 0, 25)
	label.Position = UDim2.new(0, 10, 0, y)
	label.BackgroundTransparency = 1
	label.Text = text
	label.TextColor3 = GREY
	label.TextSize = 12
	label.Font = Enum.Font.GothamBold
	label.TextXAlignment = Enum.TextXAlignment.Left
	label.ZIndex = 22
	label.Parent = scroll

	return label
end

--==================================================
-- KEYBOARD
--==================================================

createSection("KEYBOARD LAYOUT", 10)

local azertyButton = Instance.new("TextButton")
azertyButton.Size = UDim2.new(0, 190, 0, 40)
azertyButton.Position = UDim2.new(0, 10, 0, 40)
azertyButton.BackgroundColor3 = ORANGE
azertyButton.Text = "AZERTY ✓"
azertyButton.TextColor3 = BLACK
azertyButton.TextSize = 14
azertyButton.Font = Enum.Font.GothamBold
azertyButton.BorderSizePixel = 0
azertyButton.ZIndex = 22
azertyButton.Parent = scroll
createCorner(azertyButton, 8)

local qwertyButton = Instance.new("TextButton")
qwertyButton.Size = UDim2.new(0, 190, 0, 40)
qwertyButton.Position = UDim2.new(0, 210, 0, 40)
qwertyButton.BackgroundColor3 = DARK
qwertyButton.Text = "QWERTY"
qwertyButton.TextColor3 = WHITE
qwertyButton.TextSize = 14
qwertyButton.Font = Enum.Font.GothamBold
qwertyButton.BorderSizePixel = 0
qwertyButton.ZIndex = 22
qwertyButton.Parent = scroll
createCorner(qwertyButton, 8)

--==================================================
-- KEYBINDS
--==================================================

createSection("FLY CONTROLS", 95)

local keyButtons = {}

local function createKeyButton(keyName, text, x, y)

	local button = Instance.new("TextButton")
	button.Size = UDim2.new(0, 190, 0, 38)
	button.Position = UDim2.new(0, x, 0, y)
	button.BackgroundColor3 = DARK
	button.Text = text
	button.TextColor3 = WHITE
	button.TextSize = 13
	button.Font = Enum.Font.Gotham
	button.BorderSizePixel = 0
	button.ZIndex = 22
	button.Parent = scroll

	createCorner(button, 7)
	createStroke(button, DARK_ORANGE, 1, 0.4)

	keyButtons[keyName] = button

	return button
end

local forwardButton = createKeyButton("Forward", "Forward : Z", 10, 125)
local backwardButton = createKeyButton("Backward", "Backward : S", 210, 125)
local leftButton = createKeyButton("Left", "Left : Q", 10, 170)
local rightButton = createKeyButton("Right", "Right : D", 210, 170)
local upButton = createKeyButton("Up", "Up : E", 10, 215)
local downButton = createKeyButton("Down", "Down : X", 210, 215)

--==================================================
-- PERFORMANCE
--==================================================

createSection("PERFORMANCE", 270)

local fpsButton = Instance.new("TextButton")
fpsButton.Size = UDim2.new(0, 390, 0, 40)
fpsButton.Position = UDim2.new(0, 10, 0, 300)
fpsButton.BackgroundColor3 = DARK
fpsButton.Text = "FPS BOOST                         ● OFF"
fpsButton.TextColor3 = WHITE
fpsButton.TextSize = 13
fpsButton.Font = Enum.Font.GothamBold
fpsButton.TextXAlignment = Enum.TextXAlignment.Left
fpsButton.BorderSizePixel = 0
fpsButton.ZIndex = 22
fpsButton.Parent = scroll
createCorner(fpsButton, 8)

local antiLagButton = Instance.new("TextButton")
antiLagButton.Size = UDim2.new(0, 390, 0, 40)
antiLagButton.Position = UDim2.new(0, 10, 0, 350)
antiLagButton.BackgroundColor3 = DARK
antiLagButton.Text = "ANTI-LAG                         ● OFF"
antiLagButton.TextColor3 = WHITE
antiLagButton.TextSize = 13
antiLagButton.Font = Enum.Font.GothamBold
antiLagButton.TextXAlignment = Enum.TextXAlignment.Left
antiLagButton.BorderSizePixel = 0
antiLagButton.ZIndex = 22
antiLagButton.Parent = scroll
createCorner(antiLagButton, 8)

local rtxButton = Instance.new("TextButton")
rtxButton.Size = UDim2.new(0, 390, 0, 40)
rtxButton.Position = UDim2.new(0, 10, 0, 400)
rtxButton.BackgroundColor3 = DARK
rtxButton.Text = "RTX / REALISTIC                  ● OFF"
rtxButton.TextColor3 = WHITE
rtxButton.TextSize = 13
rtxButton.Font = Enum.Font.GothamBold
rtxButton.TextXAlignment = Enum.TextXAlignment.Left
rtxButton.BorderSizePixel = 0
rtxButton.ZIndex = 22
rtxButton.Parent = scroll
createCorner(rtxButton, 8)

local noclipButton = Instance.new("TextButton")
noclipButton.Size = UDim2.new(0, 390, 0, 40)
noclipButton.Position = UDim2.new(0, 10, 0, 450)
noclipButton.BackgroundColor3 = DARK
noclipButton.Text = "NOCLIP                         ● OFF"
noclipButton.TextColor3 = WHITE
noclipButton.TextSize = 13
noclipButton.Font = Enum.Font.GothamBold
noclipButton.TextXAlignment = Enum.TextXAlignment.Left
noclipButton.BorderSizePixel = 0
noclipButton.ZIndex = 22
noclipButton.Parent = scroll
createCorner(noclipButton, 8)

--==================================================
-- ESP
--==================================================

createSection("ESP", 505)

local espButton = Instance.new("TextButton")
espButton.Size = UDim2.new(0, 390, 0, 40)
espButton.Position = UDim2.new(0, 10, 0, 535)
espButton.BackgroundColor3 = DARK
espButton.Text = "ESP                              ● OFF"
espButton.TextColor3 = WHITE
espButton.TextSize = 13
espButton.Font = Enum.Font.GothamBold
espButton.TextXAlignment = Enum.TextXAlignment.Left
espButton.BorderSizePixel = 0
espButton.ZIndex = 22
espButton.Parent = scroll
createCorner(espButton, 8)

local namesButton = Instance.new("TextButton")
namesButton.Size = UDim2.new(0, 390, 0, 40)
namesButton.Position = UDim2.new(0, 10, 0, 585)
namesButton.BackgroundColor3 = DARK
namesButton.Text = "PLAYER NAMES                  ● OFF"
namesButton.TextColor3 = WHITE
namesButton.TextSize = 13
namesButton.Font = Enum.Font.GothamBold
namesButton.TextXAlignment = Enum.TextXAlignment.Left
namesButton.BorderSizePixel = 0
namesButton.ZIndex = 22
namesButton.Parent = scroll
createCorner(namesButton, 8)

local skeletonButton = Instance.new("TextButton")
skeletonButton.Size = UDim2.new(0, 390, 0, 40)
skeletonButton.Position = UDim2.new(0, 10, 0, 635)
skeletonButton.BackgroundColor3 = DARK
skeletonButton.Text = "SKELETON                         ● OFF"
skeletonButton.TextColor3 = WHITE
skeletonButton.TextSize = 13
skeletonButton.Font = Enum.Font.GothamBold
skeletonButton.TextXAlignment = Enum.TextXAlignment.Left
skeletonButton.BorderSizePixel = 0
skeletonButton.ZIndex = 22
skeletonButton.Parent = scroll
createCorner(skeletonButton, 8)

scroll.CanvasSize = UDim2.new(0, 0, 0, 700)

--==================================================
-- DRAGGING
--==================================================

local function makeDraggable(frame, handle)

	local dragging = false
	local dragStart
	local startPosition

	connect(handle.InputBegan, function(input)

		if input.UserInputType == Enum.UserInputType.MouseButton1 then
			dragging = true
			dragStart = input.Position
			startPosition = frame.Position
		end

	end)

	connect(handle.InputEnded, function(input)

		if input.UserInputType == Enum.UserInputType.MouseButton1 then
			dragging = false
		end

	end)

	connect(UserInputService.InputChanged, function(input)

		if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then

			local delta = input.Position - dragStart

			frame.Position = UDim2.new(
				startPosition.X.Scale,
				startPosition.X.Offset + delta.X,
				startPosition.Y.Scale,
				startPosition.Y.Offset + delta.Y
			)
		end

	end)
end

makeDraggable(main, title)
makeDraggable(settings, settingsTitle)

--==================================================
-- CHARACTER
--==================================================

local function setupCharacter(char)

	character = char
	humanoid = char:WaitForChild("Humanoid")
	rootPart = char:WaitForChild("HumanoidRootPart")

	flying = false

	if flyButton then
		flyButton.Text = "✦  FLY : OFF"
		flyButton.TextColor3 = ORANGE
	end

	if noclipEnabled then
		task.wait(0.2)

		for _, object in ipairs(char:GetDescendants()) do
			if object:IsA("BasePart") then
				object.CanCollide = false
			end
		end
	end
end

if LocalPlayer.Character then
	setupCharacter(LocalPlayer.Character)
end

connect(LocalPlayer.CharacterAdded, setupCharacter)

--==================================================
-- FLY
--==================================================

local function stopFly()

	flying = false

	if flyConnection then
		flyConnection:Disconnect()
		flyConnection = nil
	end

	if flyVelocity then
		flyVelocity:Destroy()
		flyVelocity = nil
	end

	if flyGyro then
		flyGyro:Destroy()
		flyGyro = nil
	end

	if humanoid then
		humanoid.PlatformStand = false
	end

	if flyButton then
		flyButton.Text = "✦  FLY : OFF"
		flyButton.TextColor3 = ORANGE
	end
end

local function startFly()

	if not humanoid or not rootPart then
		return
	end

	flying = true

	flyButton.Text = "✦  FLY : ON"
	flyButton.TextColor3 = LIGHT_ORANGE

	flyVelocity = Instance.new("BodyVelocity")
	flyVelocity.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
	flyVelocity.Velocity = Vector3.zero
	flyVelocity.Parent = rootPart

	flyGyro = Instance.new("BodyGyro")
	flyGyro.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
	flyGyro.P = 10000
	flyGyro.Parent = rootPart

	humanoid.PlatformStand = true

	flyConnection = RunService.RenderStepped:Connect(function()

		if not flying or not rootPart or not rootPart.Parent then
			return
		end

		local camera = workspace.CurrentCamera
		local direction = Vector3.zero

		if UserInputService:IsKeyDown(keys.Forward) then
			direction += camera.CFrame.LookVector
		end

		if UserInputService:IsKeyDown(keys.Backward) then
			direction -= camera.CFrame.LookVector
		end

		if UserInputService:IsKeyDown(keys.Left) then
			direction -= camera.CFrame.RightVector
		end

		if UserInputService:IsKeyDown(keys.Right) then
			direction += camera.CFrame.RightVector
		end

		if UserInputService:IsKeyDown(keys.Up) then
			direction += Vector3.new(0, 1, 0)
		end

		if UserInputService:IsKeyDown(keys.Down) then
			direction -= Vector3.new(0, 1, 0)
		end

		if direction.Magnitude > 0 then
			direction = direction.Unit * flySpeed
		end

		flyVelocity.Velocity = direction
		flyGyro.CFrame = camera.CFrame
	end)
end

--==================================================
-- SKELETON
--==================================================

local function removeSkeleton(data)

	if not data or not data.skeleton then
		return
	end

	for _, beam in ipairs(data.skeleton) do
		if beam then
			beam:Destroy()
		end
	end

	data.skeleton = nil
end

local function getPart(char, name)
	return char:FindFirstChild(name)
end

local function createSkeletonLine(folder, partA, partB)

	if not partA or not partB then
		return nil
	end

	local attachmentA = Instance.new("Attachment")
	attachmentA.Name = "EclipseSkeletonA"
	attachmentA.Parent = partA

	local attachmentB = Instance.new("Attachment")
	attachmentB.Name = "EclipseSkeletonB"
	attachmentB.Parent = partB

	local beam = Instance.new("Beam")
	beam.Name = "EclipseSkeleton"
	beam.Attachment0 = attachmentA
	beam.Attachment1 = attachmentB

	beam.Color = ColorSequence.new(LIGHT_ORANGE)
	beam.Width0 = 0.055
	beam.Width1 = 0.055
	beam.FaceCamera = true
	beam.LightEmission = 1
	beam.Transparency = NumberSequence.new(0)
	beam.Parent = folder

	return {
		beam = beam,
		attachmentA = attachmentA,
		attachmentB = attachmentB
	}
end

local function createSkeleton(player)

	if player == LocalPlayer then
		return nil
	end

	local char = player.Character

	if not char then
		return nil
	end

	local folder = Instance.new("Folder")
	folder.Name = "EclipseSkeleton"
	folder.Parent = char

	local lines = {}

	local torso = getPart(char, "UpperTorso") or getPart(char, "Torso")
	local head = getPart(char, "Head")

	local upperLeftArm = getPart(char, "LeftUpperArm")
	local lowerLeftArm = getPart(char, "LeftLowerArm")
	local leftHand = getPart(char, "LeftHand")

	local upperRightArm = getPart(char, "RightUpperArm")
	local lowerRightArm = getPart(char, "RightLowerArm")
	local rightHand = getPart(char, "RightHand")

	local upperLeftLeg = getPart(char, "LeftUpperLeg")
	local lowerLeftLeg = getPart(char, "LeftLowerLeg")
	local leftFoot = getPart(char, "LeftFoot")

	local upperRightLeg = getPart(char, "RightUpperLeg")
	local lowerRightLeg = getPart(char, "RightLowerLeg")
	local rightFoot = getPart(char, "RightFoot")

	-- R15
	if torso and head then
		table.insert(lines, createSkeletonLine(folder, head, torso))
	end

	if torso and upperLeftArm then
		table.insert(lines, createSkeletonLine(folder, torso, upperLeftArm))
		table.insert(lines, createSkeletonLine(folder, upperLeftArm, lowerLeftArm))
		table.insert(lines, createSkeletonLine(folder, lowerLeftArm, leftHand))
	end

	if torso and upperRightArm then
		table.insert(lines, createSkeletonLine(folder, torso, upperRightArm))
		table.insert(lines, createSkeletonLine(folder, upperRightArm, lowerRightArm))
		table.insert(lines, createSkeletonLine(folder, lowerRightArm, rightHand))
	end

	if torso and upperLeftLeg then
		table.insert(lines, createSkeletonLine(folder, torso, upperLeftLeg))
		table.insert(lines, createSkeletonLine(folder, upperLeftLeg, lowerLeftLeg))
		table.insert(lines, createSkeletonLine(folder, lowerLeftLeg, leftFoot))
	end

	if torso and upperRightLeg then
		table.insert(lines, createSkeletonLine(folder, torso, upperRightLeg))
		table.insert(lines, createSkeletonLine(folder, upperRightLeg, lowerRightLeg))
		table.insert(lines, createSkeletonLine(folder, lowerRightLeg, rightFoot))
	end

	-- R6
	local leftArm = getPart(char, "Left Arm")
	local rightArm = getPart(char, "Right Arm")
	local leftLeg = getPart(char, "Left Leg")
	local rightLeg = getPart(char, "Right Leg")

	if torso and not upperLeftArm then

		if head then
			table.insert(lines, createSkeletonLine(folder, head, torso))
		end

		if leftArm then
			table.insert(lines, createSkeletonLine(folder, torso, leftArm))
		end

		if rightArm then
			table.insert(lines, createSkeletonLine(folder, torso, rightArm))
		end

		if leftLeg then
			table.insert(lines, createSkeletonLine(folder, torso, leftLeg))
		end

		if rightLeg then
			table.insert(lines, createSkeletonLine(folder, torso, rightLeg))
		end
	end

	local cleanLines = {}

	for _, line in ipairs(lines) do
		if line then
			table.insert(cleanLines, line.beam)
		end
	end

	return {
		folder = folder,
		skeleton = cleanLines
	}
end

--==================================================
-- ESP
--==================================================

local function removeESP(player)

	local data = espObjects[player]

	if not data then
		return
	end

	if data.highlight then
		data.highlight:Destroy()
	end

	if data.billboard then
		data.billboard:Destroy()
	end

	if data.skeletonFolder then
		data.skeletonFolder:Destroy()
	end

	espObjects[player] = nil
end

local function updateESP(player)

	if player == LocalPlayer then
		return
	end

	removeESP(player)

	if not espEnabled and not playerNamesEnabled and not skeletonEnabled then
		return
	end

	local char = player.Character

	if not char then
		return
	end

	local root = char:FindFirstChild("HumanoidRootPart")

	if not root then
		return
	end

	local data = {}

	-- ESP highlight
	if espEnabled then

		local highlight = Instance.new("Highlight")
		highlight.Name = "EclipseESP"
		highlight.FillColor = ORANGE
		highlight.OutlineColor = LIGHT_ORANGE
		highlight.FillTransparency = 0.8
		highlight.OutlineTransparency = 0
		highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
		highlight.Parent = char

		data.highlight = highlight
	end

	-- Names
	if playerNamesEnabled then

		local billboard = Instance.new("BillboardGui")
		billboard.Name = "EclipsePlayerName"
		billboard.Size = UDim2.new(0, 200, 0, 40)
		billboard.StudsOffset = Vector3.new(0, 3, 0)
		billboard.AlwaysOnTop = true
		billboard.Adornee = root
		billboard.Parent = gui

		local label = Instance.new("TextLabel")
		label.Size = UDim2.fromScale(1, 1)
		label.BackgroundTransparency = 1
		label.Text = player.DisplayName
		label.TextColor3 = LIGHT_ORANGE
		label.TextStrokeColor3 = BLACK
		label.TextStrokeTransparency = 0
		label.TextSize = 14
		label.Font = Enum.Font.GothamBold
		label.Parent = billboard

		data.billboard = billboard
	end

	-- Skeleton
	if skeletonEnabled then

		local skeletonData = createSkeleton(player)

		if skeletonData then
			data.skeletonFolder = skeletonData.folder
		end
	end

	espObjects[player] = data
end

local function refreshESP()

	for _, player in ipairs(Players:GetPlayers()) do

		if player ~= LocalPlayer then
			updateESP(player)
		end
	end
end

--==================================================
-- FPS BOOST
--==================================================

local function setFPSBoost(enabled)

	fpsBoostEnabled = enabled

	if enabled then

		Lighting.GlobalShadows = false
		Lighting.FogEnd = 100000

	else

		Lighting.GlobalShadows = originalLighting.GlobalShadows
		Lighting.FogEnd = originalLighting.FogEnd
	end

	fpsButton.Text =
		"FPS BOOST                 ● " ..
		(enabled and "ON" or "OFF")

	fpsButton.TextColor3 =
		enabled and LIGHT_ORANGE or WHITE
end

--==================================================
-- ANTI LAG
--==================================================

local function setAntiLag(enabled)

	antiLagEnabled = enabled

	for _, object in ipairs(workspace:GetDescendants()) do

		if object:IsA("ParticleEmitter") then

			if enabled then

				if object:GetAttribute("EclipseOriginalRate") == nil then
					object:SetAttribute(
						"EclipseOriginalRate",
						object.Rate
					)
				end

				object.Rate = math.min(object.Rate, 5)

			else

				local original =
					object:GetAttribute("EclipseOriginalRate")

				if original then
					object.Rate = original
					object:SetAttribute(
						"EclipseOriginalRate",
						nil
					)
				end
			end
		end

		if object:IsA("Trail") then

			if enabled then

				if object:GetAttribute("EclipseOriginalLifetime") == nil then
					object:SetAttribute(
						"EclipseOriginalLifetime",
						object.Lifetime
					)
				end

				object.Lifetime = NumberRange.new(0.05)

			else

				local original =
					object:GetAttribute("EclipseOriginalLifetime")

				if original then
					object.Lifetime = original
					object:SetAttribute(
						"EclipseOriginalLifetime",
						nil
					)
				end
			end
		end
	end

	antiLagButton.Text =
		"ANTI-LAG                 ● " ..
		(enabled and "ON" or "OFF")

	antiLagButton.TextColor3 =
		enabled and LIGHT_ORANGE or WHITE
end

--==================================================
-- RTX / REALISTIC
--==================================================

local rtxObjects = {}

local function removeRTXObjects()

	for _, object in ipairs(rtxObjects) do

		if object and object.Parent then
			object:Destroy()
		end
	end

	table.clear(rtxObjects)
end

local function setRTX(enabled)

	rtxEnabled = enabled

	removeRTXObjects()

	if enabled then

		-- Atmosphere
		local atmosphere = Instance.new("Atmosphere")
		atmosphere.Name = "EclipseRTX_Atmosphere"
		atmosphere.Density = 0.28
		atmosphere.Offset = 0.15
		atmosphere.Color = Color3.fromRGB(199, 216, 255)
		atmosphere.Decay = Color3.fromRGB(90, 105, 130)
		atmosphere.Glare = 0.15
		atmosphere.Haze = 1.2
		atmosphere.Parent = Lighting

		table.insert(rtxObjects, atmosphere)

		-- Bloom
		local bloom = Instance.new("BloomEffect")
		bloom.Name = "EclipseRTX_Bloom"
		bloom.Intensity = 0.32
		bloom.Size = 24
		bloom.Threshold = 1.1
		bloom.Parent = Lighting

		table.insert(rtxObjects, bloom)

		-- Color correction
		local color = Instance.new("ColorCorrectionEffect")
		color.Name = "EclipseRTX_Color"
		color.Brightness = 0.04
		color.Contrast = 0.16
		color.Saturation = 0.08
		color.TintColor = Color3.fromRGB(255, 245, 230)
		color.Parent = Lighting

		table.insert(rtxObjects, color)

		-- Sun rays
		local sun = Instance.new("SunRaysEffect")
		sun.Name = "EclipseRTX_SunRays"
		sun.Intensity = 0.08
		sun.Spread = 0.85
		sun.Parent = Lighting

		table.insert(rtxObjects, sun)

		-- Depth of field
		local depth = Instance.new("DepthOfFieldEffect")
		depth.Name = "EclipseRTX_Depth"
		depth.FarIntensity = 0.08
		depth.FocusDistance = 35
		depth.InFocusRadius = 45
		depth.NearIntensity = 0.03
		depth.Parent = Lighting

		table.insert(rtxObjects, depth)

		Lighting.GlobalShadows = true
		Lighting.Brightness = math.max(
			originalLighting.Brightness,
			2
		)

		Lighting.ExposureCompensation = 0.05

	else

		Lighting.GlobalShadows = originalLighting.GlobalShadows
		Lighting.Brightness = originalLighting.Brightness
		Lighting.ExposureCompensation =
			originalLighting.ExposureCompensation
	end

	rtxButton.Text =
		"RTX / REALISTIC             ● " ..
		(enabled and "ON" or "OFF")

	rtxButton.TextColor3 =
		enabled and LIGHT_ORANGE or WHITE
end

--==================================================
-- NOCLIP
--==================================================

local function setNoclip(enabled)

	noclipEnabled = enabled

	if noclipConnection then
		noclipConnection:Disconnect()
		noclipConnection = nil
	end

	if enabled then

		noclipConnection = RunService.Stepped:Connect(function()

			if not noclipEnabled or not character then
				return
			end

			for _, object in ipairs(character:GetDescendants()) do

				if object:IsA("BasePart") then
					object.CanCollide = false
				end

			end
		end)
	end

	noclipButton.Text =
		"NOCLIP                         ● " ..
		(enabled and "ON" or "OFF")

	noclipButton.TextColor3 =
		enabled and LIGHT_ORANGE or WHITE
end

--==================================================
-- LAYOUT
--==================================================

local function setAZERTY()

	keyboardLayout = "AZERTY"

	keys.Forward = Enum.KeyCode.Z
	keys.Backward = Enum.KeyCode.S
	keys.Left = Enum.KeyCode.Q
	keys.Right = Enum.KeyCode.D
	keys.Up = Enum.KeyCode.E
	keys.Down = Enum.KeyCode.X

	forwardButton.Text = "Forward : Z"
	backwardButton.Text = "Backward : S"
	leftButton.Text = "Left : Q"
	rightButton.Text = "Right : D"
	upButton.Text = "Up : E"
	downButton.Text = "Down : X"

	azertyButton.Text = "AZERTY ✓"
	azertyButton.BackgroundColor3 = ORANGE
	azertyButton.TextColor3 = BLACK

	qwertyButton.Text = "QWERTY"
	qwertyButton.BackgroundColor3 = DARK
	qwertyButton.TextColor3 = WHITE
end

local function setQWERTY()

	keyboardLayout = "QWERTY"

	keys.Forward = Enum.KeyCode.W
	keys.Backward = Enum.KeyCode.S
	keys.Left = Enum.KeyCode.A
	keys.Right = Enum.KeyCode.D
	keys.Up = Enum.KeyCode.Space
	keys.Down = Enum.KeyCode.LeftControl

	forwardButton.Text = "Forward : W"
	backwardButton.Text = "Backward : S"
	leftButton.Text = "Left : A"
	rightButton.Text = "Right : D"
	upButton.Text = "Up : SPACE"
	downButton.Text = "Down : CTRL"

	azertyButton.Text = "AZERTY"
	azertyButton.BackgroundColor3 = DARK
	azertyButton.TextColor3 = WHITE

	qwertyButton.Text = "QWERTY ✓"
	qwertyButton.BackgroundColor3 = ORANGE
	qwertyButton.TextColor3 = BLACK
end

--==================================================
-- KEYBIND EDITING
--==================================================

local displayNames = {
	Forward = "Forward",
	Backward = "Backward",
	Left = "Left",
	Right = "Right",
	Up = "Up",
	Down = "Down"
}

local function beginKeybindChange(button, keyName)

	if waitingForKey then
		return
	end

	waitingForKey = keyName
	button.Text = "Press a key..."
	button.TextColor3 = ORANGE
end

connect(forwardButton.MouseButton1Click, function()
	beginKeybindChange(forwardButton, "Forward")
end)

connect(backwardButton.MouseButton1Click, function()
	beginKeybindChange(backwardButton, "Backward")
end)

connect(leftButton.MouseButton1Click, function()
	beginKeybindChange(leftButton, "Left")
end)

connect(rightButton.MouseButton1Click, function()
	beginKeybindChange(rightButton, "Right")
end)

connect(upButton.MouseButton1Click, function()
	beginKeybindChange(upButton, "Up")
end)

connect(downButton.MouseButton1Click, function()
	beginKeybindChange(downButton, "Down")
end)

connect(flyKeyButton.MouseButton1Click, function()

	if waitingForKey then
		return
	end

	waitingForKey = "Fly"

	flyKeyButton.Text = "Press a key..."
	flyKeyButton.TextColor3 = ORANGE
end)

--==================================================
-- BUTTON EVENTS
--==================================================

connect(flyButton.MouseButton1Click, function()

	if flying then
		stopFly()
	else
		startFly()
	end
end)

connect(settingsButton.MouseButton1Click, function()

	main.Visible = false
	settings.Visible = true
end)

connect(closeSettings.MouseButton1Click, function()

	settings.Visible = false
	main.Visible = true
end)

connect(azertyButton.MouseButton1Click, setAZERTY)
connect(qwertyButton.MouseButton1Click, setQWERTY)

connect(speedBox.FocusLost, function()

	local value = tonumber(speedBox.Text)

	if value then
		flySpeed = math.clamp(value, MIN_SPEED, MAX_SPEED)
	else
		flySpeed = DEFAULT_SPEED
	end

	speedBox.Text = tostring(flySpeed)
end)

--==================================================
-- ESP BUTTONS
--==================================================

connect(espButton.MouseButton1Click, function()

	espEnabled = not espEnabled

	espButton.Text =
		"ESP                              ● " ..
		(espEnabled and "ON" or "OFF")

	espButton.TextColor3 =
		espEnabled and LIGHT_ORANGE or WHITE

	refreshESP()
end)

connect(namesButton.MouseButton1Click, function()

	playerNamesEnabled = not playerNamesEnabled

	namesButton.Text =
		"PLAYER NAMES                  ● " ..
		(playerNamesEnabled and "ON" or "OFF")

	namesButton.TextColor3 =
		playerNamesEnabled and LIGHT_ORANGE or WHITE

	refreshESP()
end)

connect(skeletonButton.MouseButton1Click, function()

	skeletonEnabled = not skeletonEnabled

	skeletonButton.Text =
		"SKELETON                         ● " ..
		(skeletonEnabled and "ON" or "OFF")

	skeletonButton.TextColor3 =
		skeletonEnabled and LIGHT_ORANGE or WHITE

	refreshESP()
end)

--==================================================
-- PERFORMANCE BUTTONS
--==================================================

connect(fpsButton.MouseButton1Click, function()
	setFPSBoost(not fpsBoostEnabled)
end)

connect(antiLagButton.MouseButton1Click, function()
	setAntiLag(not antiLagEnabled)
end)

connect(rtxButton.MouseButton1Click, function()
	setRTX(not rtxEnabled)
end)

connect(noclipButton.MouseButton1Click, function()
	setNoclip(not noclipEnabled)
end)

--==================================================
-- PLAYER EVENTS
--==================================================

connect(Players.PlayerAdded, function(player)

	connect(player.CharacterAdded, function()

		task.wait(0.5)

		if espEnabled or playerNamesEnabled or skeletonEnabled then
			updateESP(player)
		end
	end)
end)

connect(Players.PlayerRemoving, function(player)

	removeESP(player)
end)

for _, player in ipairs(Players:GetPlayers()) do

	if player ~= LocalPlayer then

		connect(player.CharacterAdded, function()

			task.wait(0.5)

			if espEnabled or playerNamesEnabled or skeletonEnabled then
				updateESP(player)
			end
		end)
	end
end

--==================================================
-- GUI PARTICLES
--==================================================

local particleFolder = Instance.new("Folder")
particleFolder.Name = "EclipseParticles"
particleFolder.Parent = gui

local function createParticle()

	if unloaded or not main.Visible then
		return
	end

	local particle = Instance.new("Frame")

	local size = math.random(2, 5)

	particle.Size = UDim2.new(0, size, 0, size)
	particle.BackgroundColor3 = ORANGE
	particle.BackgroundTransparency = 0.1
	particle.BorderSizePixel = 0
	particle.ZIndex = 15
	particle.Parent = particleFolder

	createCorner(particle, 10)

	local side = math.random(1, 4)

	if side == 1 then

		particle.Position = UDim2.new(
			math.random(),
			0,
			0,
			-10
		)

	elseif side == 2 then

		particle.Position = UDim2.new(
			1,
			10,
			math.random(),
			0
		)

	elseif side == 3 then

		particle.Position = UDim2.new(
			math.random(),
			0,
			1,
			10
		)

	else

		particle.Position = UDim2.new(
			0,
			-10,
			math.random(),
			0
		)
	end

	local target = UDim2.new(
		math.random(),
		math.random(-30, 30),
		math.random(),
		math.random(-30, 30)
	)

	local tween = TweenService:Create(
		particle,
		TweenInfo.new(
			math.random(12, 20) / 10,
			Enum.EasingStyle.Quad,
			Enum.EasingDirection.Out
		),
		{
			Position = target,
			BackgroundTransparency = 1,
			Size = UDim2.new(0, 1, 0, 1)
		}
	)

	tween:Play()

	tween.Completed:Connect(function()

		if particle then
			particle:Destroy()
		end
	end)
end

task.spawn(function()

	while not unloaded do

		task.wait(PARTICLE_INTERVAL)

		if not unloaded and main.Visible then

			for i = 1, 14 do

				if unloaded then
					break
				end

				createParticle()
				task.wait(0.05)
			end
		end
	end
end)

--==================================================
-- CTRL HIDE / SHOW + KEYBINDS
--==================================================

connect(UserInputService.InputBegan, function(input, gameProcessed)

	if unloaded then
		return
	end

	if input.UserInputType ~= Enum.UserInputType.Keyboard then
		return
	end

	-- Keybind editing
	if waitingForKey then

		local selectedKey = waitingForKey

		if selectedKey == "Fly" then

			keys.Fly = input.KeyCode

			flyKeyButton.Text =
				"Fly Key : " .. input.KeyCode.Name

			flyKeyButton.TextColor3 = WHITE

		else

			keys[selectedKey] = input.KeyCode

			keyButtons[selectedKey].Text =
				displayNames[selectedKey] ..
				" : " ..
				input.KeyCode.Name

			keyButtons[selectedKey].TextColor3 = WHITE
		end

		waitingForKey = nil

		return
	end

	if gameProcessed then
		return
	end

	-- CTRL = hide/show
	if input.KeyCode == Enum.KeyCode.LeftControl
		or input.KeyCode == Enum.KeyCode.RightControl then

		guiHidden = not guiHidden

		main.Visible = not guiHidden

		if guiHidden then
			settings.Visible = false
		end

		return
	end

	-- Fly key
	if input.KeyCode == keys.Fly then

		if flying then
			stopFly()
		else
			startFly()
		end
	end
end)

--==================================================
-- UNLOAD
--==================================================

local function unload()

	if unloaded then
		return
	end

	unloaded = true

	-- Stop Fly
	stopFly()

	-- Stop Noclip
	if noclipConnection then
		noclipConnection:Disconnect()
		noclipConnection = nil
	end

	noclipEnabled = false

	-- Restore character collision
	if character then

		for _, object in ipairs(character:GetDescendants()) do

			if object:IsA("BasePart") then
				object.CanCollide = true
			end
		end
	end

	-- Remove ESP
	for player in pairs(espObjects) do
		removeESP(player)
	end

	table.clear(espObjects)

	-- Remove RTX
	removeRTXObjects()

	-- Restore lighting
	Lighting.GlobalShadows = originalLighting.GlobalShadows
	Lighting.FogEnd = originalLighting.FogEnd
	Lighting.Brightness = originalLighting.Brightness
	Lighting.ExposureCompensation =
		originalLighting.ExposureCompensation
	Lighting.Ambient = originalLighting.Ambient
	Lighting.OutdoorAmbient = originalLighting.OutdoorAmbient
	Lighting.ClockTime = originalLighting.ClockTime

	-- Restore anti-lag
	for _, object in ipairs(workspace:GetDescendants()) do

		if object:IsA("ParticleEmitter") then

			local original =
				object:GetAttribute("EclipseOriginalRate")

			if original then

				object.Rate = original

				object:SetAttribute(
					"EclipseOriginalRate",
					nil
				)
			end
		end

		if object:IsA("Trail") then

			local original =
				object:GetAttribute(
					"EclipseOriginalLifetime"
				)

			if original then

				object.Lifetime = original

				object:SetAttribute(
					"EclipseOriginalLifetime",
					nil
				)
			end
		end
	end

	-- Remove particles
	if particleFolder then
		particleFolder:Destroy()
	end

	-- Disconnect
	disconnectAll()

	-- Remove GUI
	if gui then
		gui:Destroy()
	end
end

connect(unloadButton.MouseButton1Click, unload)

--==================================================
-- INITIALIZE
--==================================================

setAZERTY()

print("ECLIPSE • FE FLY loaded successfully.")
print("Made by K_4VAE on Roblox")

Features & Information

you will see by yourself :) ( Only For PC )

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts