Dienste

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

In Reusing Code , haben Sie vielleicht bemerkt, dass die game:GetService() Methode häufig verwendet wird. Roblox-Dienste ermöglichen Ihnen den Zugriff auf die integrierten Funktionen des Engines, wie den Verkauf von In-Experience-Artikeln, das Aktivieren von Chat, dem Spielen von Sounds, das Animieren von Objekten und das Verwalten von Instanzen.

Tatsächlich sind Dienste der erste Schritt in dem grundlegendsten, gemeinsamen Muster der Roblox-Entwicklung :

  1. Erhalte Dienste.
  2. Benötigen Sie Modul-Skripte.
  3. Lokale Funktionen hinzufügen.
  4. Fügen Sie die Events, die diese Funktionen auslösen.

Zum Beispiel möchten Sie vielleicht die Positionen der Spieler in der Welt speichern, wenn sie Ihr Erlebnis verlassen:


local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SaveManager = require(ReplicatedStorage:WaitForChild("SaveManager"))
-- Lokale Funktion, die eine wiederverwendbare Funktion im Skript, das. PL: die Skriptsaufruft.
local function saveProgress(character)
-- Besorgen Sie sich die Position des Charakters des Spieler:in.
local position = character:FindFirstChild("HumanoidRootPart").Position
-- Verwenden Sie die saveData-Funktion in dem Skript, das. PL: die Skripts, die auf die
-- Datenspeicher-Service.
SaveManager.saveData(character, position)
end
-- Eine andere lokale Funktion, die saveProgress() aufruft, wenn ein Charakter entfernt wird
-- aus der erfahrung (in diesem fall, wenn der spieler geht).
local function onPlayerAdded(player)
player.CharacterRemoving:Connect(saveProgress)
end
-- Ruft onPlayerAdded auf, wenn ein Spieler das erste Mal auf das Erlebnis zugänglich macht.
Players.PlayerAdded:Connect(onPlayerAdded)

Einige Schlüssel Details beinhalten:

  • Da Sie nur einmal pro Skript, das. PL: die Skriptseinen Dienst abrufen sollten, ist die Konvention, der Variable den gleichen Namen wie der Dienst zu geben. Dies gilt auch für Modul-Skripte.
  • Du ruft Dienste mit der globalen Variable game ab, eine Verweisung auf die Wurzel des Modell.
  • Roblox gibt keine Garantien für die Ladeordnung (und Instanz- Streaming weiter kompliziert, was zu jedem Zeitpunkt geladen wird), so dass die Verwendung von Instance:WaitForChild() ist eine wichtige Sicherheitsmaßnahme.

Statt standardmäßige Bibliotheken zu vergleichen globalen Funktionen und Variablen oder Drittbibliotheken, einen großen Teil der Roblox-Entwicklung ist es, zu identifizieren, welche der vielen, vielen Dienste Ihnen helfen können, die gewünschte Funktionalität Ihren Erlebnissen hinzuzufügen. Im obigen Beispiel verwenden Sie nicht standardmäßige I/O-Bibliotheken, um auf den Speicher zu schreiben, sondern Cloud-D

Dienste

Container-Services können andere Objekte enthalten und beeinflussen. Diese Container-Services befinden sich in der Wurzel des Datenmodells und sind im Studio-Explorer-Fenster sichtbar. Zusammen bilden diese Container-Services eine strukturierte Hierarchie für das Modell, sodass die Roblox-Engine Ortrichtig interpretieren und rendern kann. Die folgende Tabelle enthält einige häufige Container-Services.

Service | Beschreibung :--- | :--- Workspace | Contains alle Objekte, die in der 3D-Welt gerendert werden, wie Teile und Gelände. Lighting | Contains Objekte für die Festlegung universeller Bele

Um das Modellweiter zu untersuchen, können Sie diese Methoden verwenden:

  • game:FindService() sucht nach der Instanz des angegebenen Dienstes.
  • game:GetChildren() gibt eine Matrix aller Wurzelkinder des Modellzurück, die die obersten Ebene-Container-Services sind.
  • game:GetDescendants() gibt eine Matrix aller Nachkommen des Modellzurück, einschließlich aller Container-Services und deren Kinder.

For more information on container services, see the Datenmodell dokumentation.

Skript-Dienste

Scripting-Dienste bieten standardmäßige Funktionen in der Roblox-Engine, die Sie in Skripten aufrufen. Die folgende Tabelle enthält einige häufige Skripting-Dienste.

Service | Beschreibung :--- | :--- Class.T

Cloud-Dienste

Roblox hat auch spezielle Cloud-Services für die Verarbeitung von Aufgaben und Prozessen, die in der Roblox-Cloud vorkommen. Die folgende Tabelle enthält einige häufige Cloud-Services.

Service | Beschreibung :--- | :--- DataStoreService | Für das Speichern von dauerhaften Daten über Sitzungen. MemoryStoreService | Für das Speichern von häufigen und ephemeralen Daten, die sich schnell ändern. MessagingService | Kommunizieren zwischen mehreren Servern während Live-Sitzungen.

Cloud-Dienste haben auch entsprechende Web-APIs; sie werden von externen Skripten oder Tools aus zugänglich gemacht. Weitere Informationen finden Sie unter Open Cloud.