Fonctionnel
Fov changer Universal

Code du script
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)Description
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
Commentaires (0)
Connectez-vous pour participer à la conversation
- Soyez le premier à commenter.
Questions fréquentes
- Comment utiliser le script Fov changer Universal ?
- Copiez le code ci-dessus, ouvrez votre exécuteur Roblox, collez le code et appuyez sur exécuter pendant que vous êtes dans le jeu. Les fonctionnalités s'activent instantanément une fois le script lancé.
- Le script Fov changer Universal est-il gratuit ?
- Oui. Ce script est gratuit à copier et utiliser. S'il utilise un système de clé, suivez le lien « Obtenir la clé » pour le débloquer gratuitement.
- Le script Fov changer Universal est-il sûr à utiliser ?
- Le code source complet est affiché sur cette page pour que vous puissiez lire exactement ce qu'il fait avant de l'exécuter. Utilisez toujours un exécuteur de confiance, et n'oubliez pas que l'utilisation de scripts est contraire aux conditions d'utilisation de Roblox — utilisez-les à vos propres risques.
- Quel exécuteur fonctionne avec Fov changer Universal ?
- Ce script fonctionne avec la plupart des exécuteurs Roblox populaires. Consultez notre page d'exécuteurs pour trouver un exécuteur gratuit ou payant fiable pour votre appareil.