Engine-Klasse
CollectionService
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Zusammenfassung
Methoden
GetCollection(class: string):Instances |
Events
ItemAdded(instance: Instance):RBXScriptSignal |
ItemRemoved(instance: Instance):RBXScriptSignal |
TagAdded(tag: string):RBXScriptSignal |
TagRemoved(tag: string):RBXScriptSignal |
API-Referenz
Methoden
AddTag
GetCollection
GetInstanceAddedSignal
Parameter
Rückgaben
Code-Beispiele
Tödliche Blöcke mit CollectionService
local CollectionService = game:GetService("CollectionService")
local tag = "Deadly"
local function onDeadlyPartTouched(otherPart)
if not otherPart.Parent then
return
end
local humanoid = otherPart.Parent:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
-- Speicher die Verbindungen, damit sie getrennt werden können, wenn der Tag entfernt wird
local connections = {}
local function onInstanceAdded(object)
-- Bestätige, dass das Objekt mit diesem Tag ein BasePart ist
if object:IsA("BasePart") then
connections[object] = object.Touched:Connect(onDeadlyPartTouched)
end
end
local function onInstanceRemoved(object)
-- Wenn es eine gespeicherte Verbindung für dieses Objekt gibt, trenne/entferne sie
if connections[object] then
connections[object]:Disconnect()
connections[object] = nil
end
end
-- Höre auf, wenn dieser Tag auf Objekte angewendet wird
CollectionService:GetInstanceAddedSignal(tag):Connect(onInstanceAdded)
CollectionService:GetInstanceRemovedSignal(tag):Connect(onInstanceRemoved)
-- Erkenne auch alle Objekte, die bereits den Tag haben
for _, object in pairs(CollectionService:GetTagged(tag)) do
onInstanceAdded(object)
endGetInstanceRemovedSignal
Parameter
Rückgaben
Code-Beispiele
Tödliche Blöcke mit CollectionService
local CollectionService = game:GetService("CollectionService")
local tag = "Deadly"
local function onDeadlyPartTouched(otherPart)
if not otherPart.Parent then
return
end
local humanoid = otherPart.Parent:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
-- Speicher die Verbindungen, damit sie getrennt werden können, wenn der Tag entfernt wird
local connections = {}
local function onInstanceAdded(object)
-- Bestätige, dass das Objekt mit diesem Tag ein BasePart ist
if object:IsA("BasePart") then
connections[object] = object.Touched:Connect(onDeadlyPartTouched)
end
end
local function onInstanceRemoved(object)
-- Wenn es eine gespeicherte Verbindung für dieses Objekt gibt, trenne/entferne sie
if connections[object] then
connections[object]:Disconnect()
connections[object] = nil
end
end
-- Höre auf, wenn dieser Tag auf Objekte angewendet wird
CollectionService:GetInstanceAddedSignal(tag):Connect(onInstanceAdded)
CollectionService:GetInstanceRemovedSignal(tag):Connect(onInstanceRemoved)
-- Erkenne auch alle Objekte, die bereits den Tag haben
for _, object in pairs(CollectionService:GetTagged(tag)) do
onInstanceAdded(object)
endGetTagged
Parameter
Rückgaben
Instances
Code-Beispiele
Tödliche Blöcke mit CollectionService
local CollectionService = game:GetService("CollectionService")
local tag = "Deadly"
local function onDeadlyPartTouched(otherPart)
if not otherPart.Parent then
return
end
local humanoid = otherPart.Parent:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
-- Speicher die Verbindungen, damit sie getrennt werden können, wenn der Tag entfernt wird
local connections = {}
local function onInstanceAdded(object)
-- Bestätige, dass das Objekt mit diesem Tag ein BasePart ist
if object:IsA("BasePart") then
connections[object] = object.Touched:Connect(onDeadlyPartTouched)
end
end
local function onInstanceRemoved(object)
-- Wenn es eine gespeicherte Verbindung für dieses Objekt gibt, trenne/entferne sie
if connections[object] then
connections[object]:Disconnect()
connections[object] = nil
end
end
-- Höre auf, wenn dieser Tag auf Objekte angewendet wird
CollectionService:GetInstanceAddedSignal(tag):Connect(onInstanceAdded)
CollectionService:GetInstanceRemovedSignal(tag):Connect(onInstanceRemoved)
-- Erkenne auch alle Objekte, die bereits den Tag haben
for _, object in pairs(CollectionService:GetTagged(tag)) do
onInstanceAdded(object)
endGetTags
Parameter
Rückgaben
Code-Beispiele
Verwendung von Tags und CollectionService
local CollectionService = game:GetService("CollectionService")
local Workspace = game:GetService("Workspace")
local object = Workspace.Part
-- Tag hinzufügen
CollectionService:AddTag(object, "Deadly")
-- Nach einem Tag abfragen
if CollectionService:HasTag(object, "Deadly") then
print(object:GetFullName() .. " ist tödlich")
end
-- Tags eines Objekts auflisten
local tags = CollectionService:GetTags(object)
print("Das Objekt " .. object:GetFullName() .. " hat Tags: " .. table.concat(tags, ", "))
-- Tag entfernen
CollectionService:RemoveTag(object, "Deadly")HasTag
Rückgaben
Code-Beispiele
Verwendung von Tags und CollectionService
local CollectionService = game:GetService("CollectionService")
local Workspace = game:GetService("Workspace")
local object = Workspace.Part
-- Tag hinzufügen
CollectionService:AddTag(object, "Deadly")
-- Nach einem Tag abfragen
if CollectionService:HasTag(object, "Deadly") then
print(object:GetFullName() .. " ist tödlich")
end
-- Tags eines Objekts auflisten
local tags = CollectionService:GetTags(object)
print("Das Objekt " .. object:GetFullName() .. " hat Tags: " .. table.concat(tags, ", "))
-- Tag entfernen
CollectionService:RemoveTag(object, "Deadly")RemoveTag
Rückgaben
()
Code-Beispiele
Verwendung von Tags und CollectionService
local CollectionService = game:GetService("CollectionService")
local Workspace = game:GetService("Workspace")
local object = Workspace.Part
-- Tag hinzufügen
CollectionService:AddTag(object, "Deadly")
-- Nach einem Tag abfragen
if CollectionService:HasTag(object, "Deadly") then
print(object:GetFullName() .. " ist tödlich")
end
-- Tags eines Objekts auflisten
local tags = CollectionService:GetTags(object)
print("Das Objekt " .. object:GetFullName() .. " hat Tags: " .. table.concat(tags, ", "))
-- Tag entfernen
CollectionService:RemoveTag(object, "Deadly")Events
ItemAdded
ItemRemoved