ReplicatedFirst
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Um contêiner cujo conteúdo é replicado para todos os clientes (mas não de volta para o servidor) primeiro antes de qualquer outra coisa.
Para que serve o ReplicatedFirst?
ReplicatedFirst é mais comumente usado para armazenar LocalScripts e outros objetos que são essenciais para o iniciardo jogo.Como o conteúdo do ReplicatedFirst se replica para o cliente antes de qualquer outra coisa no jogo, é ideal para criar GUIs de carregamento ou tutoriais.
Para objetos que não precisam ser replicados primeiro, os desenvolvedores devem usar o contêiner ReplicatedStorage em vez disso.
Como posso usar ReplicatedFirst?
LocalScripts colocado dentro de ReplicatedFirst será executar.Isso significa que o código para telas de carregamento personalizado ou outros usos ReplicatedFirst replicados pode ser executado no ponto mais cedo possível.
Há uma série de considerações importantes que os desenvolvedores precisam lembrar ao executar LocalScripts em ReplicatedFirst.
- Seus conteúdos se replicam antes de qualquer outra coisa no jogo, significando que LocalScripts correndo em ReplicatedFirst precisará esperar por quaisquer objetos que eles precisem se replicar usando Instance:WaitForChild()
- Quaisquer objetos que devem ser usados por um LocalScript em ReplicatedFirst também devem ser parentados para ReplicatedFirst.Caso contrário, eles podem se replicar ao cliente tarde, gerando o script e negando o benefício do ReplicatedFirst.
ReplicatedFirst também inclui a função ReplicatedFirst:RemoveDefaultLoadingScreen(), que pode ser usada para remover imediatamente a tela de carregamento padrão do Roblox.Observe se algum objeto foi colocado em ReplicatedFirst, a tela de carregamento padrão será removida após 5 segundos, independentemente se essa função foi chamada ou não.
Amostras de código
This sample demonstrates a custom loading screen with a basic TextLabel. The code should be placed in a LocalScript within ReplicatedFirst. To expand on this sample with loading screen animations, see the Custom Loading Screens article.
local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- Create a basic loading screen
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.GothamMedium
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Loading"
textLabel.TextSize = 28
textLabel.Parent = screenGui
-- Parent entire screen GUI to player GUI
screenGui.Parent = playerGui
-- Remove the default loading screen
ReplicatedFirst:RemoveDefaultLoadingScreen()
--wait(3) -- Optionally force screen to appear for a minimum number of seconds
if not game:IsLoaded() then
game.Loaded:Wait()
end
screenGui:Destroy()
Resumo
Métodos
Remove imediatamente a tela de carregamento padrão do Roblox.Observe se algum objeto foi colocado em ReplicatedFirst, a tela de carregamento padrão será removida após 5 segundos, independentemente se essa função foi chamada ou não.
Propriedades
Métodos
RemoveDefaultLoadingScreen
Remove imediatamente a tela de carregamento padrão do Roblox.Observe se algum objeto foi colocado em ReplicatedFirst, a tela de carregamento padrão será removida após 5 segundos, independentemente se essa função foi chamada ou não.
Os desenvolvedores devem executar essa função a partir de um LocalScript em ReplicatedFirst , como scripts em ReplicatedFirst executarão antes de qualquer outra coisa.
É aconselhável não remover a tela de carregamento padrão, a menos que o desenvolvedor queira exibir sua própria tela de carregamento como alternativa.Se a tela padrão for removida sem usuários de substituição, os usuários finais poderão ver o carregamento de geometria em segundo plano.
Devolução
Amostras de código
This sample demonstrates a custom loading screen with a basic TextLabel. The code should be placed in a LocalScript within ReplicatedFirst. To expand on this sample with loading screen animations, see the Custom Loading Screens article.
local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- Create a basic loading screen
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.GothamMedium
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Loading"
textLabel.TextSize = 28
textLabel.Parent = screenGui
-- Parent entire screen GUI to player GUI
screenGui.Parent = playerGui
-- Remove the default loading screen
ReplicatedFirst:RemoveDefaultLoadingScreen()
--wait(3) -- Optionally force screen to appear for a minimum number of seconds
if not game:IsLoaded() then
game.Loaded:Wait()
end
screenGui:Destroy()