Tipe Data Engine
Collection
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Contoh Kode
Siklus Koleksi dan Acara
local CollectionService = game:GetService("CollectionService")
-- Koleksi langsung dari bagian yang ditandai "MapleLeaf" yang merupakan anak langsung dari model yang ditandai "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 dipanggil sekali untuk setiap daun yang sudah cocok, kemudian untuk setiap kecocokan baru
function mapleLeaves.OnAdded(leaf: Part)
leaf.Material = Enum.Material.Neon
end
-- OnRemoved dipanggil ketika sebuah daun berhenti cocok (tidak ditandai, dipindahkan keluar dari pohon, atau dihancurkan)
function mapleLeaves.OnRemoved(leaf: Part)
leaf:Destroy()
end
-- Alias RunService: Dipanggil sekali per detak jantung untuk setiap daun dalam koleksi
function mapleLeaves.OnHeartbeat(leaf: Part, deltaTime: number)
sway(leaf, deltaTime)
end
-- Pembungkus acara-instance: OnTouched membungkus BasePart.Touched
-- Anggota koleksi tanpa acara Touched diam-diam mengabaikan penugasan ini
function mapleLeaves.OnTouched(leaf: Part, other: BasePart)
fall(leaf)
end
-- Pembungkus perubahan-properti: Bereaksi ketika sebuah daun berubah menjadi coklat
function mapleLeaves.OnPropertyChanged.Color(leaf: Part)
if leaf.Color == Color3.fromRGB(124, 92, 70) then
fall(leaf)
end
end
-- Secara imperatif mengatur setiap daun yang saat ini dalam koleksi menjadi hijau
mapleLeaves:ForEach(function(leaf: Part)
leaf.Color = Color3.fromRGB(0, 255, 0)
end)Referensi API
Properti
Metode
Destroy
Collection:Destroy()