Any people can help me try fix it
Also if i click to play it stops at black screen, i think it happens bc of the “Timeout Error”
local LocalPlayer = game:GetService("Players").LocalPlayer
local MainMenu = script:WaitForChild("MainMenu")
local loadingScreenFinished = LocalPlayer:WaitForChild("LoadingScreenFinished", 10)
if not loadingScreenFinished then
warn("Timeout while waiting for 'LoadingScreenFinished'. The script may continue with an error.")
else
repeat
wait()
until LocalPlayer.LoadingScreenFinished.Value == true
end
if game:GetService("ReplicatedFirst"):WaitForChild("DevMode").Value == false then
MainMenu.Parent = LocalPlayer.PlayerGui
local TweenService = game:GetService("TweenService")
local MainMenuCameraPoints = workspace:FindFirstChild("MainMenuCameraPoints")
if not MainMenuCameraPoints then
MainMenuCameraPoints = workspace:WaitForChild("IgnoreFolder"):WaitForChild("MainMenuCameraPoints")
end
local isTransitioning = false
local CurrentCamera = workspace.CurrentCamera
local PlayFrame = MainMenu:WaitForChild("PlayFrame")
local SettingsFrame = MainMenu:WaitForChild("SettingsFrame")
local SettingsMenu = MainMenu:WaitForChild("SettingsMenu")
local UpdateLogFrame = MainMenu:WaitForChild("UpdateLogFrame")
local MenuMusic = script.MenuMusic
local Fade = MainMenu:WaitForChild("Fade")
CurrentCamera.CameraType = Enum.CameraType.Scriptable
MenuMusic:Play()
local cameraPoints = {}
local usedPoints = {}
local children = MainMenuCameraPoints:GetChildren()
local Spin1 = MainMenu:WaitForChild("Spin1")
local Spin2 = MainMenu:WaitForChild("Spin2")
task.spawn(function()
local timeout = 10
local startTime = tick()
while not isTransitioning do
cameraPoints = {}
usedPoints = {}
for i, v in pairs(children) do
cameraPoints[#cameraPoints + 1] = v.Name
end
repeat
local randomIndex
if #cameraPoints <= 1 then break end
if isTransitioning then break end
repeat
randomIndex = math.random(1, #cameraPoints)
until not table.find(usedPoints, cameraPoints[randomIndex])
usedPoints[#usedPoints + 1] = cameraPoints[randomIndex]
local cameraPoint = MainMenuCameraPoints[cameraPoints[randomIndex]]
local fov = cameraPoint:GetAttribute("SetFOV")
local xAngle = cameraPoint:GetAttribute("CameraXAngle")
local startAngle = cameraPoint:GetAttribute("StartAngle")
local position = Vector3.new(xAngle, startAngle, cameraPoint:GetAttribute("CameraZAngle"))
cameraPoint.Orientation = position
TweenService:Create(Fade, TweenInfo.new(0.3, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
ImageTransparency = 1;
}):Play()
TweenService:Create(Spin1, TweenInfo.new(0.3, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
ImageTransparency = 1;
}):Play()
TweenService:Create(Spin2, TweenInfo.new(0.3, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
ImageTransparency = 1;
}):Play()
local currentAngle = 0
while currentAngle <= cameraPoint:GetAttribute("EndAngle") and not isTransitioning do
CurrentCamera.CFrame = cameraPoint.CFrame * CFrame.new(0, 0, cameraPoint:GetAttribute("CameraDistance"))
CurrentCamera.FieldOfView = fov
cameraPoint.Orientation = Vector3.new(cameraPoint.Orientation.X, currentAngle, cameraPoint.Orientation.Z)
currentAngle = currentAngle + 0.1 * cameraPoint:GetAttribute("CameraSpeed")
wait(0.01)
if tick() - startTime > timeout then
warn("Timeout reached during camera point selection.") -- line 91 problem
break
end
end
until #usedPoints == #cameraPoints
end
end)
PlayFrame:WaitForChild("Button").MouseEnter:Connect(function()
PlayFrame.PlayTextNormal.Visible = false
PlayFrame.PlayTextBold.Visible = true
end)
PlayFrame:WaitForChild("Button").MouseLeave:Connect(function()
PlayFrame.PlayTextNormal.Visible = true
PlayFrame.PlayTextBold.Visible = false
end)
local canPlay = false
local SpawnPlayer = game.ReplicatedStorage:WaitForChild("Functions"):WaitForChild("SpawnPlayer")
PlayFrame:WaitForChild("Button").MouseButton1Click:Connect(function()
if not canPlay then
pcall(function()
canPlay = true
Fade:Destroy()
local clone = script.FinalFade:Clone()
clone.Parent = LocalPlayer.PlayerGui
TweenService:Create(clone.Fade, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
Transparency = 0;
}):Play()
TweenService:Create(MenuMusic, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
Volume = 0;
}):Play()
task.wait(1.1)
local FinalFade = script.FinalFade
FinalFade.Fade.Transparency = 0
FinalFade.Parent = LocalPlayer.PlayerGui
clone:Destroy()
SpawnPlayer:InvokeServer()
MenuMusic:Stop()
isTransitioning = true
MainMenu:Destroy()
CurrentCamera.CameraType = Enum.CameraType.Custom
CurrentCamera.FieldOfView = 70
game.Players.LocalPlayer.PlayerGui.Main.Gold.Visible = true
game.Players.LocalPlayer.PlayerGui.Main.MsgBar.Visible = true
game.Players.LocalPlayer.PlayerGui.Main.OldUIFrame.Visible = true
game.Players.LocalPlayer.PlayerGui.Main.SoundButton.Visible = true
game.Players.LocalPlayer.PlayerGui.Main.Minor.IgnoreMusic.Value = false
TweenService:Create(FinalFade.Fade, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
Transparency = 1;
}):Play()
wait(1.1)
clone:Destroy()
end)
end
end)
SettingsFrame.Button.MouseEnter:Connect(function()
SettingsFrame.SettingsTextNormal.Visible = false
SettingsFrame.SettingsTextBold.Visible = true
end)
SettingsFrame.Button.MouseLeave:Connect(function()
SettingsFrame.SettingsTextNormal.Visible = true
SettingsFrame.SettingsTextBold.Visible = false
end)
SettingsFrame.Button.MouseButton1Click:Connect(function()
if SettingsMenu.Visible == false then
SettingsMenu.Visible = true
else
SettingsMenu.Visible = false
end
end)
SettingsMenu.ChangeGraphicsHolder.LowGLabel.Check.MouseButton1Click:Connect(function()
if SettingsMenu.ChangeGraphicsHolder.LowGLabel.Value.Value == false then
SettingsMenu.ChangeGraphicsHolder.LowGLabel.Value.Value = true
SettingsMenu.ChangeGraphicsHolder.LowGLabel.Check.Image = "http://www.roblox.com/asset/?id=135397552837940"
else
SettingsMenu.ChangeGraphicsHolder.LowGLabel.Value.Value = false
SettingsMenu.ChangeGraphicsHolder.LowGLabel.Check.Image = "http://www.roblox.com/asset/?id=126458187759848"
end
end)
UpdateLogFrame.Button.MouseEnter:Connect(function()
UpdateLogFrame.UpdateLogTextNormal.Visible = false
UpdateLogFrame.UpdateLogTextBold.Visible = true
end)
UpdateLogFrame.Button.MouseLeave:Connect(function()
UpdateLogFrame.UpdateLogTextNormal.Visible = true
UpdateLogFrame.UpdateLogTextBold.Visible = false
end)
local UpdateLogMenu = MainMenu:WaitForChild("UpdateLogMenu")
local UpdateLogMenuBackground = MainMenu:WaitForChild("UpdateLogMenuBackground")
UpdateLogFrame.Button.MouseButton1Click:Connect(function()
if UpdateLogMenu.Visible == false then
UpdateLogMenuBackground.Visible = true
UpdateLogMenu.Visible = true
else
UpdateLogMenuBackground.Visible = false
UpdateLogMenu.Visible = false
end
end)
else
MainMenuCameraPoints = game.Players.LocalPlayer
TweenService = MainMenuCameraPoints.PlayerGui:WaitForChild("Main").Gold
TweenService.Visible = true
MainMenuCameraPoints = game.Players.LocalPlayer.PlayerGui
TweenService = MainMenuCameraPoints.Main.MsgBar
TweenService.Visible = true
MainMenuCameraPoints = game.Players.LocalPlayer.PlayerGui
TweenService = MainMenuCameraPoints.Main.OldUIFrame
TweenService.Visible = true
MainMenuCameraPoints = game.Players.LocalPlayer.PlayerGui
TweenService = MainMenuCameraPoints.Main.SoundButton
TweenService.Visible = true
MainMenuCameraPoints = game.Players
TweenService = MainMenuCameraPoints.LocalPlayer.PlayerGui
MainMenuCameraPoints = "Main"
TweenService = TweenService:WaitForChild(MainMenuCameraPoints)
MainMenuCameraPoints = "Minor"
TweenService = TweenService:WaitForChild(MainMenuCameraPoints)
MainMenuCameraPoints = "IgnoreMusic"
TweenService = TweenService:WaitForChild(MainMenuCameraPoints)
TweenService.Value = false
end