ServerStorage
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein Container, dessen Inhalte nur auf dem Server zugänglich sind. Objekte, die von ServerStorage abstammen, werden nicht auf den Client repliziert und sind nicht von LocalScripts zugänglich.
Da ServerStorage ein Dienst ist, kann er nur über die Methode DataModel.GetService aufgerufen werden.
Durch das Speichern großer Objekte wie Karten in ServerStorage, bis sie benötigt werden, wird der Netzwerkverkehr nicht verwendet, um diese Objekte an den Client weiterzuleiten, wenn sie dem Spiel beitreten.
Class.Script|Scripts wird nicht ausgeführt, wenn sie mit ServerStorage in Verbindung gebracht werden, obwohl ModuleScripts in ServerScriptService enthalten sein kann auf Zugriff und Ausführung zugreifen. Es wird empfohlen, dass Entwickler 0> Class.Script|Scripts0> verwenden, um 3> Class.ServerScriptService</
Beachten Sie, dass die Inhalte von ServerStorage nur durch den Server zugänglich sind, und seine Inhalte müssen anderswo übergeordnet sein (z. B. Workspace ) antes que los clientes puedan auf sie zugreifen. Entwickler, die ein Container benötigen, der sowohl durch den Server als auch durch den Client zugänglich ist, sollten ReplicatedStorage verwenden.
Code-Beispiele
local ServerStorage = game:GetService("ServerStorage")
local ROUND_TIME = 5
local map1 = Instance.new("Model")
map1.Name = "Map1"
map1.Parent = ServerStorage
local map2 = Instance.new("Model")
map2.Name = "Map2"
map2.Parent = ServerStorage
local map3 = Instance.new("Model")
map3.Name = "Map3"
map3.Parent = ServerStorage
local maps = { map1, map2, map3 }
local RNG = Random.new()
local currentMap = nil
local lastPick = nil
while true do
print("New map!")
-- remove current map
if currentMap then
currentMap:Destroy()
end
-- pick a map
local randomPick = nil
if #maps > 1 then
repeat
randomPick = RNG:NextInteger(1, #maps)
until randomPick ~= lastPick
lastPick = randomPick
end
-- fetch new map
local map = maps[randomPick]
currentMap = map:Clone()
currentMap.Parent = workspace
task.wait(ROUND_TIME)
end