ReplicatedFirst:RemoveDefaultLoadingScreen()未在Studio中触发

我又来遇到了另一个问题。我正在尝试为我的游戏制作自定义加载屏幕,但是RemoveDefaultLoadingScreen似乎未触发。有人能帮我吗?以下是我的代码:

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
ReplicatedFirst:RemoveDefaultLoadingScreen()
local TweenService = game:GetService("TweenService")
local Player = Players.LocalPlayer
local PlayerGui = Player:WaitForChild("PlayerGui")
PlayerGui:SetTopbarTransparency(1)
local Loading = ReplicatedFirst.Load
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.IgnoreGuiInset=true
local Bar = Loading.Frame.TextLabel
ScreenGui.Name = "LoadScreen"
Loading.Parent = ScreenGui
ScreenGui.Parent = PlayerGui
local Info = TweenInfo.new(0.7,Enum.EasingStyle.Cubic,Enum.EasingDirection.InOut,0,true,0)
local Tween = TweenService:Create(Bar,Info,{Position=UDim2.new(0.8,0,0.6,0)})
spawn(function()
    while true do
        Tween:Play()
        Tween.Completed:Wait()
    end
end)
if not game:IsLoaded() then
    game.Loaded:Wait()
end
for i=0,1,0.1 do
    Loading.BackgroundTransparency=i
    Bar.TextTransparency=i
    Loading.Frame.Load.TextTransparency=i
    wait()
end
ScreenGui:Destroy()

除了第三行在Studio中不起作用之外,一切都正常运作。这是应该这样吗?非常感谢任何帮助。

点赞
用户1296374
用户1296374

我测试过了,它在 Roblox Studio 中完美运行。不过需要注意:

在 Studio 中,加载屏幕几乎瞬间就会消失,因此你看不到太大的差别。

if not game:IsLoaded() then 行之前放置一个 wait(5),这将模拟 5 秒钟的加载。然后,你可以试着加入和不加入 ReplicatedFirst:RemoveDefaultLoadingScreen() 命令,并比较它们之间的差别。

2020-05-06 20:24:09