Zum Inhalt springen
Funktioniert

Fov changer Universal

CLclarkdevlinorg1 AufrufeUniversal26. Juli 2026
Teilen
Fov changer Universal

Script-Code

Lua
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")

local player = Players.LocalPlayer
local camera = workspace.CurrentCamera

local gui = Instance.new("ScreenGui")
gui.Name = "NASA_Settings_UI"
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")

local function tween(obj, info, props)
	local t = TweenService:Create(obj, info, props)
	t:Play()
	return t
end

local function corner(parent, r)
	local c = Instance.new("UICorner")
	c.CornerRadius = UDim.new(0, r)
	c.Parent = parent
	return c
end

local function stroke(parent, t, trans)
	local s = Instance.new("UIStroke")
	s.Thickness = t
	s.Transparency = trans or 0.4
	s.Color = Color3.fromRGB(80, 200, 255)
	s.Parent = parent
	return s
end

local main = Instance.new("Frame")
main.Size = UDim2.fromScale(0.35, 0.35)
main.Position = UDim2.fromScale(0.325, 0.325)
main.BackgroundColor3 = Color3.fromRGB(10, 14, 25)
main.Parent = gui
corner(main, 14)
stroke(main, 1.5)

local topBar = Instance.new("Frame")
topBar.Size = UDim2.new(1, 0, 0, 35)
topBar.BackgroundTransparency = 1
topBar.Parent = main

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -50, 1, 0)
title.Position = UDim2.new(0, 12, 0, 0)
title.Text = "SYSTEM SETTINGS"
title.TextColor3 = Color3.fromRGB(180, 220, 255)
title.BackgroundTransparency = 1
title.Font = Enum.Font.GothamBold
title.TextXAlignment = Enum.TextXAlignment.Left
title.TextSize = 14
title.Parent = topBar

local close = Instance.new("TextButton")
close.Size = UDim2.new(0, 28, 0, 28)
close.Position = UDim2.new(1, -34, 0, 4)
close.Text = "X"
close.TextColor3 = Color3.fromRGB(255, 80, 80)
close.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
close.Parent = topBar
corner(close, 8)

local sliderHolder = Instance.new("Frame")
sliderHolder.Size = UDim2.new(1, -40, 0, 70)
sliderHolder.Position = UDim2.new(0, 20, 0, 70)
sliderHolder.BackgroundTransparency = 1
sliderHolder.Parent = main

local label = Instance.new("TextLabel")
label.Size = UDim2.new(1, 0, 0, 20)
label.BackgroundTransparency = 1
label.Text = "Field of View: 70"
label.TextColor3 = Color3.fromRGB(200, 240, 255)
label.Font = Enum.Font.Gotham
label.TextSize = 13
label.TextXAlignment = Enum.TextXAlignment.Left
label.Parent = sliderHolder

local bar = Instance.new("Frame")
bar.Size = UDim2.new(1, 0, 0, 6)
bar.Position = UDim2.new(0, 0, 0, 35)
bar.BackgroundColor3 = Color3.fromRGB(25, 35, 55)
bar.Parent = sliderHolder
corner(bar, 6)

local fill = Instance.new("Frame")
fill.Size = UDim2.new(0.3, 0, 1, 0)
fill.BackgroundColor3 = Color3.fromRGB(80, 200, 255)
fill.Parent = bar
corner(fill, 6)

local minFov, maxFov = 50, 120
local currentFov = 70
camera.FieldOfView = currentFov

local draggingSlider = false

local function setFov(v)
	currentFov = math.clamp(v, minFov, maxFov)
	camera.FieldOfView = currentFov
	label.Text = "Field of View: " .. math.floor(currentFov)
	fill.Size = UDim2.new((currentFov - minFov) / (maxFov - minFov), 0, 1, 0)
end

bar.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		draggingSlider = true
	end
end)

UIS.InputEnded:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		draggingSlider = false
	end
end)

UIS.InputChanged:Connect(function(input)
	if draggingSlider and input.UserInputType == Enum.UserInputType.MouseMovement then
		local x = math.clamp((input.Position.X - bar.AbsolutePosition.X) / bar.AbsoluteSize.X, 0, 1)
		setFov(minFov + (maxFov - minFov) * x)
	end
end)

-- MAIN DRAG
do
	local dragging = false
	local dragStart, startPos

	topBar.InputBegan:Connect(function(input)
		if input.UserInputType == Enum.UserInputType.MouseButton1 then
			dragging = true
			dragStart = input.Position
			startPos = main.Position
		end
	end)

	UIS.InputEnded:Connect(function(input)
		if input.UserInputType == Enum.UserInputType.MouseButton1 then
			dragging = false
		end
	end)

	UIS.InputChanged:Connect(function(input)
		if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
			local delta = input.Position - dragStart
			main.Position = UDim2.new(
				startPos.X.Scale,
				startPos.X.Offset + delta.X,
				startPos.Y.Scale,
				startPos.Y.Offset + delta.Y
			)
		end
	end)
end

local miniButton
local draggingMini = false
local dragStart, startPos
local moved = false

local function showMain()
	main.Visible = true
	main.BackgroundTransparency = 1
	tween(main, TweenInfo.new(0.25, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {
		BackgroundTransparency = 0
	})
end

local function hideMain()
	local tw = tween(main, TweenInfo.new(0.25, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {
		BackgroundTransparency = 1
	})
	tw.Completed:Wait()
	main.Visible = false
end

local function createMiniButton()
	if miniButton then
		miniButton:Destroy()
	end

	miniButton = Instance.new("TextButton")
	miniButton.Size = UDim2.new(0, 55, 0, 55)
	miniButton.Position = UDim2.fromScale(0.5, 0.5)
	miniButton.AnchorPoint = Vector2.new(0.5, 0.5)
	miniButton.Text = ""
	miniButton.BackgroundColor3 = Color3.fromRGB(15, 18, 30)
	miniButton.Parent = gui
	miniButton.AutoButtonColor = false

	corner(miniButton, 30)
	stroke(miniButton, 2, 0.2)

	task.spawn(function()
		while miniButton do
			tween(miniButton, TweenInfo.new(0.8, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {
				Size = UDim2.new(0, 60, 0, 60)
			})
			task.wait(0.8)
			if not miniButton then break end
			tween(miniButton, TweenInfo.new(0.8, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {
				Size = UDim2.new(0, 55, 0, 55)
			})
			task.wait(0.8)
		end
	end)

	miniButton.MouseButton1Down:Connect(function()
		draggingMini = true
		moved = false
		dragStart = UIS:GetMouseLocation()
		startPos = miniButton.Position
	end)

	UIS.InputChanged:Connect(function(input)
		if draggingMini and input.UserInputType == Enum.UserInputType.MouseMovement then
			local delta = UIS:GetMouseLocation() - dragStart

			if math.abs(delta.X) > 3 or math.abs(delta.Y) > 3 then
				moved = true
			end

			miniButton.Position = UDim2.new(
				startPos.X.Scale,
				startPos.X.Offset + delta.X,
				startPos.Y.Scale,
				startPos.Y.Offset + delta.Y
			)
		end
	end)

	miniButton.MouseButton1Up:Connect(function()
		if not draggingMini then return end
		draggingMini = false

		if moved then
			return
		end

		miniButton:Destroy()
		miniButton = nil
		showMain()
	end)
end

close.MouseButton1Click:Connect(function()
	hideMain()
	createMiniButton()
end)

setFov(70)

Beschreibung

Free field-of-view changer. I made it with Grok, so it might not work for long, but I'll try to update it to improve it if it breaks. So subscribe to my channel: https://www.youtube.com/@BigBodyrock

Kommentare (0)

Melde an, um an der Unterhaltung teilzunehmen

  • Sei der Erste, der kommentiert.

Häufig gestellte Fragen

Wie verwende ich den Fov changer Universal-Script?
Kopiere den obigen Code, öffne deinen Roblox-Executor, füge den Code ein und drücke Ausführen, während du im Spiel bist. Die Funktionen werden sofort aktiviert, sobald der Script läuft.
Ist der Fov changer Universal-Script kostenlos?
Ja. Dieser Script ist völlig kostenlos zu kopieren und zu verwenden. Wenn er ein Schlüsselsystem nutzt, folge dem Link "Schlüssel erhalten", um ihn kostenlos freizuschalten.
Ist der Fov changer Universal-Script sicher zu verwenden?
Der vollständige Quellcode wird auf dieser Seite angezeigt, damit du genau lesen kannst, was er tut, bevor du ihn ausführst. Verwende immer einen vertrauenswürdigen Executor, und denke daran, dass die Verwendung von Scripts gegen die Nutzungsbedingungen von Roblox verstößt — verwende sie auf eigene Gefahr.
Welcher Executor funktioniert mit Fov changer Universal?
Dieser Script funktioniert mit den meisten beliebten Roblox-Executoren. Besuche unsere Executor-Seite, um einen vertrauenswürdigen kostenlosen oder kostenpflichtigen Executor für dein Gerät zu finden.
Fov changer Universal | BloxScripter