So I made a loading screen that works without CharacterAutoLoads and I’d like feedback on the loading screen and the script.
Local Script:
local RF = game:GetService('ReplicatedFirst')
local CP = game:GetService('ContentProvider')
local TS = game:GetService('TweenService')
local Players = game:GetService('Players')
local Player = Players.LocalPlayer
local PlayerGui = Player:WaitForChild('PlayerGui')
local LoadScreen = RF:WaitForChild('LoadScreen')
LoadScreen.Parent = PlayerGui
local Bar = LoadScreen:WaitForChild('Container'):WaitForChild('LoadingBar'):WaitForChild('Bar')
local Amount = LoadScreen.Container:WaitForChild('Amount')
local Logo = LoadScreen.Container:WaitForChild('LoadingLogo')
local Tween = TS:Create(Logo, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.In, -1), {Rotation = 360})
Tween:Play()
local Assets = {}
task.wait(10)
for i,v in pairs(workspace:GetDescendants()) do
table.insert(Assets, v)
end
RF:RemoveDefaultLoadingScreen()
for i = 1, #Assets do
local Asset = Assets[i]
CP:PreloadAsync({Asset})
local Progress = i / #Assets
Bar.Size = UDim2.new(Progress, 0, 1, 0)
Amount.Text = i..' / '..#Assets
end
task.delay(2.25, function()
for i,v in pairs(LoadScreen:GetDescendants()) do
if v:IsA('Frame') then
local Tween = TS:Create(v, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.In), {BackgroundTransparency = 1})
Tween:Play()
elseif v:IsA('TextLabel') then
local Tween = TS:Create(v, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.In), {TextTransparency = 1})
Tween:Play()
elseif v:IsA('ImageLabel') then
local Tween = TS:Create(v, TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.In), {ImageTransparency = 1})
Tween:Play()
end
end
end)
I use do use preload and the task.wait(10) is just for the instances in workspace to actually exist in workspace. But I didn’t know about Tweeninfo.DelayTime. Thank you for this amazing feedback!
I really like the UI. It’s really fast and doesn’t have any bugs from what I can see. Maybe you could add like a picture somewhere if you would like, but this is still really good!