ReplicatedFirst
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Un container il cui contenuto viene replicato a tutti i client (ma non al Server) prima di qualsiasi altra cosa.
A cosa serve ReplicatedFirst?
ReplicatedFirst è più comunemente utilizzato per archiviare LocalScripts e altri oggetti che sono essenziali per l'Iniziare, cominciaredel Gioco.Poiché i contenuti di ReplicatedFirst si replicano al client prima di qualsiasi altra cosa nel Gioco, è ideale per creare interfacce di caricamento o tutorial.
Per gli oggetti che non hanno bisogno di essere replicati prima, gli sviluppatori dovrebbero utilizzare il container ReplicatedStorage invece.
Come posso usare ReplicatedFirst?
LocalScripts posizionato all'interno di ReplicatedFirst verrà Eseguire.Questo significa che il codice per schermi di caricamento personalizzati o altri utilizzi ReplicatedFirst può essere eseguito al punto più presto possibile.
Ci sono una serie di considerazioni chiave che gli sviluppatori devono ricordare quando eseguono LocalScripts in ReplicatedFirst.
- I suoi contenuti si replicano prima di qualsiasi altra cosa nel Gioco, il che significa che LocalScripts eseguire in ReplicatedFirst dovrà aspettare qualsiasi oggetto che debba replicarsi utilizzando Instance:WaitForChild()
- Qualsiasi oggetto che deve essere utilizzato da un LocalScript in ReplicatedFirst dovrebbe anche essere genitori di ReplicatedFirst.Altrimenti, possono replicarsi al client in ritardo, ottenendo lo script e negando il vantaggio di ReplicatedFirst.
ReplicatedFirst include anche la funzione ReplicatedFirst:RemoveDefaultLoadingScreen(), che può essere utilizzata per rimuovere immediatamente lo schermo di caricamento predefinito di Roblox.Nota se qualsiasi oggetto è stato posizionato in ReplicatedFirst, la schermata di caricamento predefinita verrà rimossa dopo 5 secondi indipendentemente dal fatto che questa funzione sia stata chiamata o meno.
Campioni di codice
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()
Sommario
Proprietà
Metodi
Rimuove immediatamente lo schermo di caricamento predefinito di Roblox.Nota se qualsiasi oggetto è stato posizionato in ReplicatedFirst, la schermata di caricamento predefinita verrà rimossa dopo 5 secondi indipendentemente dal fatto che questa funzione sia stata chiamata o meno.
Proprietà
Metodi
RemoveDefaultLoadingScreen
Rimuove immediatamente lo schermo di caricamento predefinito di Roblox.Nota se qualsiasi oggetto è stato posizionato in ReplicatedFirst, la schermata di caricamento predefinita verrà rimossa dopo 5 secondi indipendentemente dal fatto che questa funzione sia stata chiamata o meno.
Gli sviluppatori dovrebbero eseguire questa funzione da un LocalScript in ReplicatedFirst , poiché gli script in ReplicatedFirst eseguiranno prima di qualsiasi altra cosa.
Si consiglia di non rimuovere lo schermo di caricamento predefinito a meno che lo sviluppatore non desideri visualizzare il proprio schermo di caricamento come alternativa.Se lo schermo predefinito viene rimosso senza sostituire gli utenti, saranno in grado di vedere il caricamento della geometria in background.
Restituzioni
Campioni di codice
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()