ReplicatedFirst
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein Container, dessen Inhalt zuerst auf alle Clients repliziert wird (aber nicht zurück zum Server), vor allem anderen.
Wozu ist ReplicatedFirst?
ReplicatedFirst wird am häufigsten verwendet, um LocalScripts und andere Objekte zu speichern, die für den startendes Spiels unerlässlich sind.Da die Inhalte von ReplicatedFirst auf den Client repliziert werden, bevor irgendetwas anderes im Spiel passiert, ist es ideal für die Erstellung von Lade-GUIs oder Tutorials.
Für Objekte, die nicht zuerst repliziert werden müssen, sollten Entwickler stattdessen den ReplicatedStorage Container verwenden.
Wie kann ich ReplicatedFirst verwenden?
LocalScripts innerhalb von ReplicatedFirst wird ausführen.Das bedeutet, dass Code für benutzerdefinierte Ladebildschirme oder andere ReplicatedFirst-Verwendungen so früh wie möglich ausgeführt werden kann.
Es gibt eine Reihe von wichtigen Überlegungen, an die Entwickler sich erinnern müssen, wenn sie LocalScripts.
- Sein Inhalt wird vor allem anderen im Spiel repliziert, was bedeutet, dass LocalScripts ausgeführt werden muss, um auf alle Objekte zu warten, die repliziert werden müssen, indem sie Instance:WaitForChild() verwendet werden
- Alle Objekte, die von einem LocalScript in ReplicatedFirst verwendet werden sollen, sollten auch zu ReplicatedFirst übergeordnet werden.Ansonsten können sie sich möglicherweise zu spät an den Client übertragen, wodurch das Skript negiert wird und der Nutzen von ReplicatedFirst verringert wird.
ReplicatedFirst enthält auch die Funktion ReplicatedFirst:RemoveDefaultLoadingScreen(), die verwendet werden kann, um die Standard-Roblox-Ladebildschirm sofort zu entfernen.Beachten Sie, ob ein Objekt in ReplicatedFirst platziert wurde, das Standardladebild wird nach 5 Sekunden entfernt, unabhängig davon, ob diese Funktion aufgerufen wurde oder nicht.
Code-Beispiele
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()
Zusammenfassung
Methoden
Entfernt sofort den Standard-Roblox-Ladebildschirm.Beachten Sie, ob ein Objekt in ReplicatedFirst platziert wurde, wird der Standard-Ladebildschirm nach 5 Sekunden unabhängig davon entfernt, ob diese Funktion aufgerufen wurde oder nicht.
Eigenschaften
Methoden
RemoveDefaultLoadingScreen
Entfernt sofort den Standard-Roblox-Ladebildschirm.Beachten Sie, ob ein Objekt in ReplicatedFirst platziert wurde, wird der Standard-Ladebildschirm nach 5 Sekunden unabhängig davon entfernt, ob diese Funktion aufgerufen wurde oder nicht.
Entwickler sollten diese Funktion von einem LocalScript in ReplicatedFirst ausführen, da Skripte in ReplicatedFirst vor allem anderen ausgeführt werden.
Es wird empfohlen, den Standard-Ladebildschirm nicht zu entfernen, es sei denn der Entwickler möchte seinen eigenen Ladebildschirm als Alternative anzeigen.Wenn der Standard-Bildschirm ohne Ersatzbenutzer entfernt wird, können Benutzer die Geometrie-Ladung im Hintergrund sehen.
Rückgaben
Code-Beispiele
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()