stmatey35
Key RequiredUniversal

stmatey35

Universal Scriptstmatey25stmatey25 23 views 79 executesUpdated Aug 21, 2026
Unrated
00
Lua Script•995 lines (33579 chars)
--========================================================
-- ADMIN PANEL BY MATEY
-- ONE SCRIPT VERSION
-- LocalScript -> StarterGui
--
-- LIQUID GLASS REMOVED
-- SETTINGS -> BUTTON SIZE + SCROLLING MENU
-- NEW: MULTIPLE NEW SKY PRESETS
--========================================================

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

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

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

local NORMAL_SPEED = 70
local MAX_SPEED = 500

local flyEnabled = false
local flySpeed = NORMAL_SPEED

local character
local humanoid
local rootPart

local flyVelocity
local flyAttachment

local panelOpen = false
local introFinished = false

-- ADMIN BUTTON SIZE
local buttonSizeScale = 1
local MIN_BUTTON_SCALE = 0.5
local MAX_BUTTON_SCALE = 100

local BASE_BUTTON_WIDTH = 230
local BASE_BUTTON_HEIGHT = 80

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

local function getCharacter()
	character = player.Character or player.CharacterAdded:Wait()
	humanoid = character:WaitForChild("Humanoid")
	rootPart = character:WaitForChild("HumanoidRootPart")
end

getCharacter()

--========================================================
-- GUI
--========================================================

local gui = Instance.new("ScreenGui")
gui.Name = "MateyAdminPanel"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
gui.Parent = playerGui

--========================================================
-- ADMIN BUTTON
--========================================================

local adminButton = Instance.new("TextButton")
adminButton.Name = "AdminButton"
adminButton.Size = UDim2.fromOffset(BASE_BUTTON_WIDTH, BASE_BUTTON_HEIGHT)
adminButton.Position = UDim2.new(0, 60, 0.5, -40)
adminButton.BackgroundColor3 = Color3.fromRGB(28, 29, 39)
adminButton.Text = "ADMIN"
adminButton.TextColor3 = Color3.fromRGB(245, 245, 255)
adminButton.TextSize = 30
adminButton.Font = Enum.Font.GothamBold
adminButton.AutoButtonColor = false
adminButton.ZIndex = 20
adminButton.Parent = gui

local adminCorner = Instance.new("UICorner")
adminCorner.CornerRadius = UDim.new(0, 20)
adminCorner.Parent = adminButton

local adminStroke = Instance.new("UIStroke")
adminStroke.Color = Color3.fromRGB(95, 95, 120)
adminStroke.Thickness = 2
adminStroke.Parent = adminButton

--========================================================
-- BUTTON SIZE FUNCTION
--========================================================

local function applyButtonSize()
	local center = adminButton.AbsolutePosition + adminButton.AbsoluteSize / 2
	local newWidth = BASE_BUTTON_WIDTH * buttonSizeScale
	local newHeight = BASE_BUTTON_HEIGHT * buttonSizeScale

	adminButton.Size = UDim2.fromOffset(newWidth, newHeight)
	adminButton.Position = UDim2.fromOffset(center.X - newWidth / 2, center.Y - newHeight / 2)

	local camera = workspace.CurrentCamera
	if not camera then return end

	local viewport = camera.ViewportSize
	local x = math.clamp(adminButton.AbsolutePosition.X, 0, math.max(0, viewport.X - adminButton.AbsoluteSize.X))
	local y = math.clamp(adminButton.AbsolutePosition.Y, 0, math.max(0, viewport.Y - adminButton.AbsoluteSize.Y))

	adminButton.Position = UDim2.fromOffset(x, y)
end

--========================================================
-- STAR TRAIL
--========================================================
local draggingAdmin = false
local dragMoved = false
local dragStart
local startAbsolutePosition
local DRAG_THRESHOLD = 8
local lastStarPosition = nil
local starDistance = 10

local function createStar(position, amount)
	amount = amount or 1

	for i = 1, amount do
		local star = Instance.new("TextLabel")
		star.Name = "MateyDragStar"
		local size = math.random(12, 24)
		star.Size = UDim2.fromOffset(size, size)
		star.AnchorPoint = Vector2.new(0.5, 0.5)
		star.Position = UDim2.fromOffset(position.X + math.random(-12, 12), position.Y + math.random(-12, 12))
		star.BackgroundTransparency = 1
		star.Text = "★"
		star.TextColor3 = Color3.fromRGB(255, math.random(190, 255), 80)
		star.TextTransparency = 0
		star.TextSize = size
		star.Font = Enum.Font.GothamBold
		star.Rotation = math.random(0, 360)
		star.ZIndex = 15
		star.Parent = gui

		local randomX = math.random(-25, 25)
		local randomY = math.random(-25, 25)

		local tween = TweenService:Create(
			star,
			TweenInfo.new(math.random(35, 70) / 100, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
			{
				Position = UDim2.fromOffset(star.Position.X.Offset + randomX, star.Position.Y.Offset + randomY),
				TextTransparency = 1,
				Rotation = star.Rotation + math.random(90, 180)
			}
		)

		tween:Play()
		tween.Completed:Connect(function()
			if star then star:Destroy() end
		end)
	end
end

adminButton.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
		draggingAdmin = true
		dragMoved = false
		dragStart = input.Position
		startAbsolutePosition = adminButton.AbsolutePosition
		lastStarPosition = nil
	end
end)

UserInputService.InputChanged:Connect(function(input)
	if not draggingAdmin then return end
	if input.UserInputType ~= Enum.UserInputType.MouseMovement and input.UserInputType ~= Enum.UserInputType.Touch then return end

	local delta = input.Position - dragStart
	if delta.Magnitude >= DRAG_THRESHOLD then
		dragMoved = true
	end

	if not dragMoved then return end

	local currentPosition = adminButton.AbsolutePosition + adminButton.AbsoluteSize / 2
	if lastStarPosition then
		local distance = (currentPosition - lastStarPosition).Magnitude
		if distance >= starDistance then
			local starAmount = math.clamp(math.floor(distance / 15), 1, 8)
			createStar(currentPosition, starAmount)
			lastStarPosition = currentPosition
		end
	else
		lastStarPosition = currentPosition
		createStar(currentPosition, 2)
	end

	local camera = workspace.CurrentCamera
	if not camera then return end

	local viewport = camera.ViewportSize
	local newX = startAbsolutePosition.X + delta.X
	local newY = startAbsolutePosition.Y + delta.Y

	newX = math.clamp(newX, 0, math.max(0, viewport.X - adminButton.AbsoluteSize.X))
	newY = math.clamp(newY, 0, math.max(0, viewport.Y - adminButton.AbsoluteSize.Y))

	adminButton.Position = UDim2.fromOffset(newX, newY)
end)

UserInputService.InputEnded:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
		draggingAdmin = false
		lastStarPosition = nil
		task.delay(0.05, function() dragMoved = false end)
	end
end)

--========================================================
-- ADMIN PANEL
--========================================================

local panel = Instance.new("Frame")
panel.Name = "AdminPanel"
panel.Size = UDim2.new(0, 430, 0, 340)
panel.Position = UDim2.new(0.5, -215, 0.5, -170)
panel.BackgroundColor3 = Color3.fromRGB(18, 19, 27)
panel.Visible = false
panel.ZIndex = 30
panel.Parent = gui

local panelCorner = Instance.new("UICorner")
panelCorner.CornerRadius = UDim.new(0, 22)
panelCorner.Parent = panel

local panelStroke = Instance.new("UIStroke")
panelStroke.Color = Color3.fromRGB(92, 92, 120)
panelStroke.Thickness = 2
panelStroke.Parent = panel

-- TITLE
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -100, 0, 50)
title.Position = UDim2.new(0, 25, 0, 18)
title.BackgroundTransparency = 1
title.Text = "ADMIN PANEL"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextSize = 28
title.Font = Enum.Font.GothamBold
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = panel

local creator = Instance.new("TextLabel")
creator.Size = UDim2.new(1, -50, 0, 25)
creator.Position = UDim2.new(0, 25, 0, 62)
creator.BackgroundTransparency = 1
creator.Text = "BY MATEY"
creator.TextColor3 = Color3.fromRGB(150, 150, 170)
creator.TextSize = 14
creator.Font = Enum.Font.GothamMedium
creator.TextXAlignment = Enum.TextXAlignment.Left
creator.Parent = panel

-- SETTINGS BUTTON
local settingsButton = Instance.new("TextButton")
settingsButton.Name = "SettingsButton"
settingsButton.Size = UDim2.new(0, 45, 0, 45)
settingsButton.Position = UDim2.new(1, -115, 0, 18)
settingsButton.BackgroundColor3 = Color3.fromRGB(35, 36, 46)
settingsButton.Text = "⚙"
settingsButton.TextColor3 = Color3.fromRGB(255, 255, 255)
settingsButton.TextSize = 25
settingsButton.Font = Enum.Font.GothamBold
settingsButton.AutoButtonColor = false
settingsButton.ZIndex = 35
settingsButton.Parent = panel
local settingsCorner = Instance.new("UICorner")
settingsCorner.CornerRadius = UDim.new(0, 13)
settingsCorner.Parent = settingsButton

-- CLOSE BUTTON
local closeButton = Instance.new("TextButton")
closeButton.Size = UDim2.new(0, 45, 0, 45)
closeButton.Position = UDim2.new(1, -62, 0, 18)
closeButton.BackgroundColor3 = Color3.fromRGB(35, 36, 46)
closeButton.Text = "×"
closeButton.TextColor3 = Color3.fromRGB(255, 255, 255)
closeButton.TextSize = 30
closeButton.Font = Enum.Font.GothamBold
closeButton.AutoButtonColor = false
closeButton.ZIndex = 35
closeButton.Parent = panel
local closeCorner = Instance.new("UICorner")
closeCorner.CornerRadius = UDim.new(0, 13)
closeCorner.Parent = closeButton

-- FLY BUTTON
local flyButton = Instance.new("TextButton")
flyButton.Name = "FlyButton"
flyButton.Size = UDim2.new(1, -50, 0, 72)
flyButton.Position = UDim2.new(0, 25, 0, 110)
flyButton.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
flyButton.Text = "✈  FLY"
flyButton.TextColor3 = Color3.fromRGB(255, 255, 255)
flyButton.TextSize = 24
flyButton.Font = Enum.Font.GothamBold
flyButton.AutoButtonColor = false
flyButton.Parent = panel
local flyCorner = Instance.new("UICorner")
flyCorner.CornerRadius = UDim.new(0, 17)
flyCorner.Parent = flyButton
local flyStroke = Instance.new("UIStroke")
flyStroke.Color = Color3.fromRGB(100, 100, 125)
flyStroke.Thickness = 1.5
flyStroke.Parent = flyButton

-- SPEED LABEL
local speedLabel = Instance.new("TextLabel")
speedLabel.Size = UDim2.new(1, -50, 0, 40)
speedLabel.Position = UDim2.new(0, 25, 0, 195)
speedLabel.BackgroundTransparency = 1
speedLabel.Text = "Fly Speed: 70"
speedLabel.TextColor3 = Color3.fromRGB(175, 175, 190)
speedLabel.TextSize = 17
speedLabel.Font = Enum.Font.GothamMedium
speedLabel.TextXAlignment = Enum.TextXAlignment.Left
speedLabel.Parent = panel

-- INFO
local info = Instance.new("TextLabel")
info.Size = UDim2.new(1, -50, 0, 70)
info.Position = UDim2.new(0, 25, 0, 245)
info.BackgroundTransparency = 1
info.Text = "Joystick = movement\nCamera = direction + altitude"
info.TextColor3 = Color3.fromRGB(125, 125, 145)
info.TextSize = 15
info.Font = Enum.Font.Gotham
info.TextWrapped = true
info.TextXAlignment = Enum.TextXAlignment.Left
info.TextYAlignment = Enum.TextYAlignment.Top
info.Parent = panel

--========================================================
-- SETTINGS MENU (UPDATED WITH NEW SKYES)
--========================================================

local settingsOverlay
local originalSkySettings = {
	Ambient = Lighting.Ambient,
	OutdoorAmbient = Lighting.OutdoorAmbient,
	ColorShift_Bottom = Lighting.ColorShift_Bottom,
	ColorShift_Top = Lighting.ColorShift_Top,
	TimeOfDay = Lighting.TimeOfDay
}

-- Functie pentru schimbare cer (Skybox preset nou cu ID-uri Roblox verificate)
local function setSkybox(id)
	local sky = Lighting:FindFirstChildOfClass("Sky")
	if not sky then
		sky = Instance.new("Sky")
		sky.Parent = Lighting
	end
	sky.SkyboxBk = id
	sky.SkyboxDn = id
	sky.SkyboxFt = id
	sky.SkyboxLf = id
	sky.SkyboxRt = id
	sky.SkyboxUp = id
end

-- Functie default sky
local function resetSky()
	local sky = Lighting:FindFirstChildOfClass("Sky")
	if sky then sky:Destroy() end
	Lighting.Ambient = originalSkySettings.Ambient
	Lighting.OutdoorAmbient = originalSkySettings.OutdoorAmbient
	Lighting.ColorShift_Bottom = originalSkySettings.ColorShift_Bottom
	Lighting.ColorShift_Top = originalSkySettings.ColorShift_Top
	Lighting.TimeOfDay = originalSkySettings.TimeOfDay
end

local function createSettings()
	if settingsOverlay then
		settingsOverlay:Destroy()
	end

	settingsOverlay = Instance.new("Frame")
	settingsOverlay.Name = "SettingsMenu"
	settingsOverlay.Size = UDim2.new(1, 0, 1, 0)
	settingsOverlay.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
	settingsOverlay.BackgroundTransparency = 0.3
	settingsOverlay.ZIndex = 70
	settingsOverlay.Parent = gui

	local box = Instance.new("Frame")
	box.Size = UDim2.new(0, 390, 0, 450)
	box.Position = UDim2.new(0.5, -195, 0.5, -225)
	box.BackgroundColor3 = Color3.fromRGB(20, 21, 30)
	box.ZIndex = 71
	box.Parent = settingsOverlay
	Instance.new("UICorner", box).CornerRadius = UDim.new(0, 22)
	local stroke = Instance.new("UIStroke", box)
	stroke.Thickness = 2
	stroke.Color = Color3.fromRGB(90, 90, 110)

	local heading = Instance.new("TextLabel")
	heading.Size = UDim2.new(1, -70, 0, 45)
	heading.Position = UDim2.new(0, 25, 0, 18)
	heading.BackgroundTransparency = 1
	heading.Text = "⚙  SETTINGS"
	heading.TextColor3 = Color3.fromRGB(255, 255, 255)
	heading.TextSize = 25
	heading.Font = Enum.Font.GothamBold
	heading.TextXAlignment = Enum.TextXAlignment.Left
	heading.ZIndex = 72
	heading.Parent = box

	local close = Instance.new("TextButton")
	close.Size = UDim2.new(0, 40, 0, 40)
	close.Position = UDim2.new(1, -55, 0, 18)
	close.BackgroundColor3 = Color3.fromRGB(40, 41, 52)
	close.Text = "×"
	close.TextColor3 = Color3.fromRGB(255, 255, 255)
	close.TextSize = 26
	close.Font = Enum.Font.GothamBold
	close.ZIndex = 72
	close.Parent = box
	Instance.new("UICorner", close).CornerRadius = UDim.new(0, 12)

	close.MouseButton1Click:Connect(function()
		settingsOverlay:Destroy()
		settingsOverlay = nil
	end)

	local scrollFrame = Instance.new("ScrollingFrame")
	scrollFrame.Name = "SettingsScroll"
	scrollFrame.Size = UDim2.new(1, 0, 1, -70)
	scrollFrame.Position = UDim2.new(0, 0, 0, 70)
	scrollFrame.BackgroundTransparency = 1
	scrollFrame.BorderSizePixel = 0
	scrollFrame.ScrollBarThickness = 6
	scrollFrame.ScrollingDirection = Enum.ScrollingDirection.Y
	scrollFrame.CanvasSize = UDim2.new(0, 0, 0, 620) -- Dimensiune optimizată pentru secțiunile rămase
	scrollFrame.ZIndex = 72
	scrollFrame.Parent = box

	--====================================================
	-- BUTTON SIZE
	--====================================================
	local sizeTitle = Instance.new("TextLabel")
	sizeTitle.Size = UDim2.new(1, -50, 0, 30)
	sizeTitle.Position = UDim2.new(0, 25, 0, 8)
	sizeTitle.BackgroundTransparency = 1
	sizeTitle.Text = "BUTTON SIZE"
	sizeTitle.TextColor3 = Color3.fromRGB(180, 180, 195)
	sizeTitle.TextSize = 14
	sizeTitle.Font = Enum.Font.GothamBold
	sizeTitle.TextXAlignment = Enum.TextXAlignment.Left
	sizeTitle.ZIndex = 72
	sizeTitle.Parent = scrollFrame

	local sizeValue = Instance.new("TextLabel")
	sizeValue.Size = UDim2.new(1, -50, 0, 50)
	sizeValue.Position = UDim2.new(0, 25, 0, 35)
	sizeValue.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
	sizeValue.Text = string.format("%.1fx", buttonSizeScale)
	sizeValue.TextColor3 = Color3.fromRGB(255, 255, 255)
	sizeValue.TextSize = 22
	sizeValue.Font = Enum.Font.GothamBold
	sizeValue.ZIndex = 72
	sizeValue.Parent = scrollFrame
	Instance.new("UICorner", sizeValue).CornerRadius = UDim.new(0, 13)

	local minus = Instance.new("TextButton")
	minus.Size = UDim2.new(0, 60, 0, 50)
	minus.Position = UDim2.new(0, 25, 0, 95)
	minus.BackgroundColor3 = Color3.fromRGB(45, 46, 58)
	minus.Text = "−"
	minus.TextColor3 = Color3.fromRGB(255, 255, 255)
	minus.TextSize = 28
	minus.Font = Enum.Font.GothamBold
	minus.ZIndex = 72
	minus.Parent = scrollFrame
	Instance.new("UICorner", minus).CornerRadius = UDim.new(0, 13)

	local plus = Instance.new("TextButton")
	plus.Size = UDim2.new(0, 60, 0, 50)
	plus.Position = UDim2.new(1, -85, 0, 95)
	plus.BackgroundColor3 = Color3.fromRGB(45, 46, 58)
	plus.Text = "+"
	plus.TextColor3 = Color3.fromRGB(255, 255, 255)
	plus.TextSize = 28
	plus.Font = Enum.Font.GothamBold
	plus.ZIndex = 72
	plus.Parent = scrollFrame
	Instance.new("UICorner", plus).CornerRadius = UDim.new(0, 13)

	local sizeInput = Instance.new("TextBox")
	sizeInput.Size = UDim2.new(1, -170, 0, 50)
	sizeInput.Position = UDim2.new(0, 85, 0, 95)
	sizeInput.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
	sizeInput.Text = ""
	sizeInput.PlaceholderText = "0.5 - 100"
	sizeInput.PlaceholderColor3 = Color3.fromRGB(130, 130, 145)
	sizeInput.TextColor3 = Color3.fromRGB(255, 255, 255)
	sizeInput.TextSize = 17
	sizeInput.Font = Enum.Font.GothamMedium
	sizeInput.ClearTextOnFocus = false
	sizeInput.ZIndex = 72
	sizeInput.Parent = scrollFrame
	Instance.new("UICorner", sizeInput).CornerRadius = UDim.new(0, 13)

	local presetTitle = Instance.new("TextLabel")
	presetTitle.Size = UDim2.new(1, -50, 0, 25)
	presetTitle.Position = UDim2.new(0, 25, 0, 160)
	presetTitle.BackgroundTransparency = 1
	presetTitle.Text = "PRESETS"
	presetTitle.TextColor3 = Color3.fromRGB(150, 150, 165)
	presetTitle.TextSize = 13
	presetTitle.Font = Enum.Font.GothamBold
	presetTitle.TextXAlignment = Enum.TextXAlignment.Left
	presetTitle.ZIndex = 72
	presetTitle.Parent = scrollFrame

	local presets = { 0.5, 1, 2, 5, 10, 25, 50, 100 }
	local presetFrame = Instance.new("Frame")
	presetFrame.Size = UDim2.new(1, -50, 0, 105)
	presetFrame.Position = UDim2.new(0, 25, 0, 185)
	presetFrame.BackgroundTransparency = 1
	presetFrame.ZIndex = 72
	presetFrame.Parent = scrollFrame

	local grid = Instance.new("UIGridLayout")
	grid.CellSize = UDim2.fromOffset(76, 42)
	grid.CellPadding = UDim2.fromOffset(10, 8)
	grid.HorizontalAlignment = Enum.HorizontalAlignment.Center
	grid.Parent = presetFrame

	local function updateSize(newSize)
		buttonSizeScale = math.clamp(newSize, MIN_BUTTON_SCALE, MAX_BUTTON_SCALE)
		applyButtonSize()
		sizeValue.Text = string.format("%.1fx", buttonSizeScale)
	end

	minus.MouseButton1Click:Connect(function() updateSize(buttonSizeScale <= 1 and buttonSizeScale - 0.1 or buttonSizeScale - 1) end)
	plus.MouseButton1Click:Connect(function() updateSize(buttonSizeScale < 1 and buttonSizeScale + 0.1 or buttonSizeScale + 1) end)
	sizeInput.FocusLost:Connect(function()
		local value = tonumber(sizeInput.Text)
		if value then updateSize(value) end
		sizeInput.Text = ""
	end)

	for _, preset in ipairs(presets) do
		local presetButton = Instance.new("TextButton")
		presetButton.BackgroundColor3 = Color3.fromRGB(40, 41, 53)
		presetButton.Text = string.format("%.1fx", preset)
		presetButton.TextColor3 = Color3.fromRGB(255, 255, 255)
		presetButton.TextSize = 14
		presetButton.Font = Enum.Font.GothamBold
		presetButton.ZIndex = 73
		presetButton.Parent = presetFrame
		Instance.new("UICorner", presetButton).CornerRadius = UDim.new(0, 10)
		presetButton.MouseButton1Click:Connect(function() updateSize(preset) end)
	end

	--====================================================
	-- NEW SKYES PRESETS SECTION
	--====================================================
	local skyTitle = Instance.new("TextLabel")
	skyTitle.Size = UDim2.new(1, -50, 0, 30)
	skyTitle.Position = UDim2.new(0, 25, 0, 305)
	skyTitle.BackgroundTransparency = 1
	skyTitle.Text = "NEW SKY PRESETS"
	skyTitle.TextColor3 = Color3.fromRGB(180, 180, 195)
	skyTitle.TextSize = 14
	skyTitle.Font = Enum.Font.GothamBold
	skyTitle.TextXAlignment = Enum.TextXAlignment.Left
	skyTitle.ZIndex = 72
	skyTitle.Parent = scrollFrame

	local skyPresetFrame = Instance.new("Frame")
	skyPresetFrame.Size = UDim2.new(1, -50, 0, 105)
	skyPresetFrame.Position = UDim2.new(0, 25, 0, 340)
	skyPresetFrame.BackgroundTransparency = 1
	skyPresetFrame.ZIndex = 72
	skyPresetFrame.Parent = scrollFrame

	local skyGrid = Instance.new("UIGridLayout")
	skyGrid.CellSize = UDim2.fromOffset(108, 42)
	skyGrid.CellPadding = UDim2.fromOffset(10, 8)
	skyGrid.HorizontalAlignment = Enum.HorizontalAlignment.Center
	skyGrid.Parent = skyPresetFrame

	-- Noile seturi de ceruri adăugate (Skybox ID-uri populare și estetice)
	local newSkies = {
		{Name = "Galaxy / Space", ID = "rbxassetid://159454286"},
		{Name = "Purple Nebula", ID = "rbxassetid://134707681"},
		{Name = "Anime Sky", ID = "rbxassetid://271042516"},
		{Name = "Vibrant Sunset", ID = "rbxassetid://600830707"},
		{Name = "Midnight Stars", ID = "rbxassetid://121517551"},
		{Name = "Blue Clouds", ID = "rbxassetid://141749449"}
	}

	for _, skyData in ipairs(newSkies) do
		local btn = Instance.new("TextButton")
		btn.BackgroundColor3 = Color3.fromRGB(45, 75, 120)
		btn.Text = skyData.Name
		btn.TextColor3 = Color3.fromRGB(255, 255, 255)
		btn.TextSize = 12
		btn.Font = Enum.Font.GothamBold
		btn.ZIndex = 73
		btn.Parent = skyPresetFrame
		Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 10)

		btn.MouseButton1Click:Connect(function()
			setSkybox(skyData.ID)
		end)
	end

	--====================================================
	-- DEFAULT SKY BUTTON
	--====================================================
	local defaultSkyBtn = Instance.new("TextButton")
	defaultSkyBtn.Size = UDim2.new(1, -50, 0, 45)
	defaultSkyBtn.Position = UDim2.new(0, 25, 0, 460)
	defaultSkyBtn.BackgroundColor3 = Color3.fromRGB(150, 50, 50)
	defaultSkyBtn.Text = "RESET TO DEFAULT SKY"
	defaultSkyBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
	defaultSkyBtn.TextSize = 15
	defaultSkyBtn.Font = Enum.Font.GothamBold
	defaultSkyBtn.ZIndex = 72
	defaultSkyBtn.Parent = scrollFrame
	Instance.new("UICorner", defaultSkyBtn).CornerRadius = UDim.new(0, 12)

	defaultSkyBtn.MouseButton1Click:Connect(function()
		resetSky()
	end)

end

settingsButton.MouseButton1Click:Connect(createSettings)

--========================================================
-- INTRO
--========================================================

local intro = Instance.new("Frame")
intro.Name = "MateyIntro"
intro.Size = UDim2.new(1, 0, 1, 0)
intro.BackgroundColor3 = Color3.fromRGB(7, 7, 11)
intro.ZIndex = 100
intro.Parent = gui

local introTitle = Instance.new("TextLabel")
introTitle.Size = UDim2.new(1, 0, 0, 80)
introTitle.Position = UDim2.new(0, 0, 0.5, -40)
introTitle.BackgroundTransparency = 1
introTitle.Text = "ADMIN PANEL BY MATEY"
introTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
introTitle.TextTransparency = 1
introTitle.TextSize = 38
introTitle.Font = Enum.Font.GothamBold
introTitle.ZIndex = 101
introTitle.Parent = intro

task.spawn(function()
	if introFinished then
		intro.Visible = false
		return
	end
	introFinished = true
	task.wait(0.15)

	local fadeIn = TweenService:Create(introTitle, TweenInfo.new(0.7, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), { TextTransparency = 0 })
	fadeIn:Play()

	task.wait(2.1)

	local fadeText = TweenService:Create(introTitle, TweenInfo.new(0.45), { TextTransparency = 1 })
	local fadeBackground = TweenService:Create(intro, TweenInfo.new(0.55), { BackgroundTransparency = 1 })

	fadeText:Play()
	fadeBackground:Play()
	fadeBackground.Completed:Wait()
	intro.Visible = false
end)

--========================================================
-- OPEN / CLOSE PANEL
--========================================================

local function openPanel()
	panelOpen = true
	panel.Visible = true
	panel.Size = UDim2.new(0, 390, 0, 310)
	TweenService:Create(panel, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = UDim2.new(0, 430, 0, 340) }):Play()
end

local function closePanel()
	panelOpen = false
	TweenService:Create(panel, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.In), { Size = UDim2.new(0, 390, 0, 310) }):Play()
	task.delay(0.2, function()
		if not panelOpen then panel.Visible = false end
	end)
end

adminButton.MouseButton1Click:Connect(function()
	if dragMoved then return end
	if panelOpen then closePanel() else openPanel() end
end)

closeButton.MouseButton1Click:Connect(function() closePanel() end)

--========================================================
-- SPEED MENU
--========================================================

local function speedMenu(callback)
	local overlay = Instance.new("Frame")
	overlay.Size = UDim2.new(1, 0, 1, 0)
	overlay.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
	overlay.BackgroundTransparency = 0.3
	overlay.ZIndex = 50
	overlay.Parent = gui

	local box = Instance.new("Frame")
	box.Size = UDim2.new(0, 330, 0, 280)
	box.Position = UDim2.new(0.5, -165, 0.5, -140)
	box.BackgroundColor3 = Color3.fromRGB(20, 21, 29)
	box.ZIndex = 51
	box.Parent = overlay
	Instance.new("UICorner", box).CornerRadius = UDim.new(0, 18)
	local boxStroke = Instance.new("UIStroke", box)
	boxStroke.Color = Color3.fromRGB(90, 90, 110)
	boxStroke.Thickness = 1.5

	local boxTitle = Instance.new("TextLabel")
	boxTitle.Size = UDim2.new(1, -70, 0, 40)
	boxTitle.Position = UDim2.new(0, 15, 0, 15)
	boxTitle.BackgroundTransparency = 1
	boxTitle.Text = "FLY SPEED"
	boxTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
	boxTitle.TextSize = 21
	boxTitle.Font = Enum.Font.GothamBold
	boxTitle.TextXAlignment = Enum.TextXAlignment.Left
	boxTitle.ZIndex = 52
	boxTitle.Parent = box

	local cancel = Instance.new("TextButton")
	cancel.Size = UDim2.new(0, 40, 0, 40)
	cancel.Position = UDim2.new(1, -55, 0, 12)
	cancel.BackgroundColor3 = Color3.fromRGB(55, 40, 45)
	cancel.Text = "×"
	cancel.TextColor3 = Color3.fromRGB(255, 255, 255)
	cancel.TextSize = 25
	cancel.Font = Enum.Font.GothamBold
	cancel.ZIndex = 53
	cancel.Parent = box
	Instance.new("UICorner", cancel).CornerRadius = UDim.new(0, 12)

	cancel.MouseButton1Click:Connect(function() overlay:Destroy() end)

	local normal = Instance.new("TextButton")
	normal.Size = UDim2.new(1, -40, 0, 52)
	normal.Position = UDim2.new(0, 20, 0, 75)
	normal.BackgroundColor3 = Color3.fromRGB(40, 41, 53)
	normal.Text = "NORMAL SPEED  •  70"
	normal.TextColor3 = Color3.fromRGB(255, 255, 255)
	normal.TextSize = 15
	normal.Font = Enum.Font.GothamBold
	normal.ZIndex = 52
	normal.Parent = box
	Instance.new("UICorner", normal).CornerRadius = UDim.new(0, 12)

	local custom = Instance.new("TextButton")
	custom.Size = UDim2.new(1, -40, 0, 52)
	custom.Position = UDim2.new(0, 20, 0, 140)
	custom.BackgroundColor3 = Color3.fromRGB(40, 41, 53)
	custom.Text = "CUSTOM SPEED"
	custom.TextColor3 = Color3.fromRGB(255, 255, 255)
	custom.TextSize = 15
	custom.Font = Enum.Font.GothamBold
	custom.ZIndex = 52
	custom.Parent = box
	Instance.new("UICorner", custom).CornerRadius = UDim.new(0, 12)

	normal.MouseButton1Click:Connect(function()
		flySpeed = NORMAL_SPEED
		speedLabel.Text = "Fly Speed: " .. flySpeed
		overlay:Destroy()
		callback()
	end)

	custom.MouseButton1Click:Connect(function()
		normal.Visible = false
		custom.Visible = false

		local input = Instance.new("TextBox")
		input.Size = UDim2.new(1, -40, 0, 52)
		input.Position = UDim2.new(0, 20, 0, 75)
		input.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
		input.Text = ""
		input.PlaceholderText = "Speed 1 - 500"
		input.PlaceholderColor3 = Color3.fromRGB(130, 130, 145)
		input.TextColor3 = Color3.fromRGB(255, 255, 255)
		input.TextSize = 17
		input.Font = Enum.Font.GothamMedium
		input.ClearTextOnFocus = false
		input.ZIndex = 52
		input.Parent = box
		Instance.new("UICorner", input).CornerRadius = UDim.new(0, 12)

		local ok = Instance.new("TextButton")
		ok.Size = UDim2.new(0, 100, 0, 45)
		ok.Position = UDim2.new(0.5, -50, 0, 145)
		ok.BackgroundColor3 = Color3.fromRGB(55, 125, 85)
		ok.Text = "OK"
		ok.TextColor3 = Color3.fromRGB(255, 255, 255)
		ok.TextSize = 16
		ok.Font = Enum.Font.GothamBold
		ok.ZIndex = 52
		ok.Parent = box
		Instance.new("UICorner", ok).CornerRadius = UDim.new(0, 11)

		local finished = false
		local function confirm()
			if finished then return end
			local value = tonumber(input.Text)
			if not value then
				input.Text = ""
				input.PlaceholderText = "Introdu un număr!"
				return
			end
			finished = true
			value = math.clamp(math.floor(value), 1, MAX_SPEED)
			flySpeed = value
			speedLabel.Text = "Fly Speed: " .. flySpeed
			overlay:Destroy()
			callback()
		end

		ok.MouseButton1Click:Connect(confirm)
		input.FocusLost:Connect(function(enterPressed) if enterPressed then confirm() end end)
		input:CaptureFocus()
	end)
end

--========================================================
-- CREATE & STOP FLY
--========================================================

local function createFly()
	if not character or not character.Parent or not humanoid or not rootPart then getCharacter() end
	if flyVelocity then flyVelocity:Destroy(); flyVelocity = nil end
	if flyAttachment then flyAttachment:Destroy(); flyAttachment = nil end

	flyAttachment = Instance.new("Attachment")
	flyAttachment.Name = "MateyFlyAttachment"
	flyAttachment.Parent = rootPart

	flyVelocity = Instance.new("LinearVelocity")
	flyVelocity.Name = "MateyFlyVelocity"
	flyVelocity.Attachment0 = flyAttachment
	flyVelocity.RelativeTo = Enum.ActuatorRelativeTo.World
	flyVelocity.MaxForce = math.huge
	flyVelocity.VectorVelocity = Vector3.zero
	flyVelocity.Parent = rootPart

	humanoid.AutoRotate = false
	humanoid:ChangeState(Enum.HumanoidStateType.Freefall)
end

local function stopFly()
	flyEnabled = false
	if flyVelocity then flyVelocity.VectorVelocity = Vector3.zero; flyVelocity:Destroy(); flyVelocity = nil end
	if flyAttachment then flyAttachment:Destroy(); flyAttachment = nil end
	if humanoid then humanoid.AutoRotate = true; humanoid:ChangeState(Enum.HumanoidStateType.GettingUp) end

	flyButton.Text = "✈  FLY"
	flyButton.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
end

flyButton.MouseButton1Click:Connect(function()
	if flyEnabled then stopFly(); return end
	speedMenu(function()
		if not character or not character.Parent then getCharacter() end
		createFly()
		flyEnabled = true
		flyButton.Text = "✈  FLY • ON"
		flyButton.BackgroundColor3 = Color3.fromRGB(45, 120, 80)
	end)
end)

--========================================================
-- FLY MOVEMENT
--========================================================

RunService.RenderStepped:Connect(function()
	if not flyEnabled then return end
	if not character or not character.Parent or not humanoid or not rootPart or not flyVelocity then stopFly(); return end

	local camera = workspace.CurrentCamera
	if not camera then return end

	local joystickDirection = humanoid.MoveDirection
	if joystickDirection.Magnitude < 0.05 then flyVelocity.VectorVelocity = Vector3.zero; return end

	local cameraLook = camera.CFrame.LookVector
	local cameraRight = camera.CFrame.RightVector
	local horizontalCamera = Vector3.new(cameraLook.X, 0, cameraLook.Z)
	if horizontalCamera.Magnitude > 0 then horizontalCamera = horizontalCamera.Unit end

	local right = Vector3.new(cameraRight.X, 0, cameraRight.Z)
	if right.Magnitude > 0 then right = right.Unit end

	local forwardAmount = joystickDirection:Dot(horizontalCamera)
	local sideAmount = joystickDirection:Dot(right)
	local verticalAmount = forwardAmount * cameraLook.Y

	local finalDirection = (horizontalCamera * forwardAmount) + (right * sideAmount) + Vector3.new(0, verticalAmount, 0)
	if finalDirection.Magnitude > 1 then finalDirection = finalDirection.Unit end

	flyVelocity.VectorVelocity = finalDirection * flySpeed
end)

--========================================================
-- CHARACTER RESPAWN
--========================================================

player.CharacterAdded:Connect(function(newCharacter)
	flyEnabled = false
	if flyVelocity then flyVelocity:Destroy(); flyVelocity = nil end
	if flyAttachment then flyAttachment:Destroy(); flyAttachment = nil end

	character = newCharacter
	humanoid = newCharacter:WaitForChild("Humanoid")
	rootPart = newCharacter:WaitForChild("HumanoidRootPart")
	flyButton.Text = "✈  FLY"
	flyButton.BackgroundColor3 = Color3.fromRGB(35, 36, 47)
end)

--========================================================
-- BUTTON EFFECTS
--========================================================

local function addButtonEffect(button)
	local originalSize = button.Size

	button.MouseEnter:Connect(function()
		TweenService:Create(button, TweenInfo.new(0.15), { BackgroundColor3 = Color3.fromRGB(48, 49, 62) }):Play()
	end)

	button.MouseLeave:Connect(function()
		if button == flyButton and flyEnabled then return end
		if button == adminButton then
			TweenService:Create(button, TweenInfo.new(0.15), { BackgroundColor3 = Color3.fromRGB(28, 29, 39) }):Play()
		else
			TweenService:Create(button, TweenInfo.new(0.15), { BackgroundColor3 = Color3.fromRGB(35, 36, 47) }):Play()
		end
	end)

	button.MouseButton1Down:Connect(function()
		if button ~= adminButton then
			TweenService:Create(button, TweenInfo.new(0.08), {
				Size = UDim2.new(originalSize.X.Scale, originalSize.X.Offset - 4, originalSize.Y.Scale, originalSize.Y.Offset - 4)
			}):Play()
		end
	end)

	button.MouseButton1Up:Connect(function()
		if button ~= adminButton then
			TweenService:Create(button, TweenInfo.new(0.08), { Size = originalSize }):Play()
		end
	end)
end

addButtonEffect(adminButton)
addButtonEffect(flyButton)
addButtonEffect(settingsButton)
addButtonEffect(closeButton)

--========================================================
-- FINAL
--========================================================
print("========================================")
print("ADMIN PANEL BY MATEY LOADED")
print("ONE SCRIPT VERSION (CLEANED & UPDATED)")
print("NEW SKY PRESETS LOADED SUCCESSFULLY")
print("========================================")

Features & Information

ammm hii

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts