Tipo di dati del motore
Collection
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Campioni di codice
Ciclo di vita e eventi della collezione
local CollectionService = game:GetService("CollectionService")
-- Una collezione attiva di parti contrassegnate "MapleLeaf" che sono figli diretti di un modello contrassegnato "MapleTree"
local mapleLeaves: Collection = CollectionService:CreateCollection("Model.MapleTree > Part.MapleLeaf")
local function sway(leaf: Part, deltaTime: number)
leaf.CFrame *= CFrame.fromEulerAnglesXYZ(0, math.rad(20) * deltaTime, 0)
end
local function fall(leaf: Part)
leaf.Anchored = false
end
-- OnAdded viene attivato una volta per ogni foglia già corrispondente, poi per ogni nuova corrispondenza
function mapleLeaves.OnAdded(leaf: Part)
leaf.Material = Enum.Material.Neon
end
-- OnRemoved viene attivato quando una foglia smette di corrispondere (non contrassegnata, riposizionata fuori dall'albero o distrutta)
function mapleLeaves.OnRemoved(leaf: Part)
leaf:Destroy()
end
-- Alias di RunService: Viene attivato una volta per battito cardiaco per ogni foglia nella collezione
function mapleLeaves.OnHeartbeat(leaf: Part, deltaTime: number)
sway(leaf, deltaTime)
end
-- Wrapper per evento di istanza: OnTouched avvolge BasePart.Touched
-- I membri della collezione senza un evento Touched ignorano silenziosamente questo assegnamento
function mapleLeaves.OnTouched(leaf: Part, other: BasePart)
fall(leaf)
end
-- Wrapper per cambiamento di proprietà: Reagisci quando una foglia diventa marrone
function mapleLeaves.OnPropertyChanged.Color(leaf: Part)
if leaf.Color == Color3.fromRGB(124, 92, 70) then
fall(leaf)
end
end
-- Imposta in modo imperativo ogni foglia attualmente nella collezione di colore verde
mapleLeaves:ForEach(function(leaf: Part)
leaf.Color = Color3.fromRGB(0, 255, 0)
end)Riferimento API
Proprietà
Metodi
Destroy
Collection:Destroy()