slot0 = class("WSMapItem", import("...BaseEntity")) slot0.Fields = { cell = "table", theme = "table", rtArtifacts = "userdata", transform = "userdata" } function slot0.GetName(slot0, slot1) return "item_" .. slot0 .. "_" .. slot1 end function slot0.Setup(slot0, slot1, slot2) slot0.cell = slot1 slot0.theme = slot2 end function slot0.Dispose(slot0) slot0:Unload() slot0:Clear() end function slot0.Load(slot0) PoolMgr.GetInstance():GetPrefab("world/object/world_cell_item", "world_cell_item", false, function (slot0) uv0.transform = slot0.transform uv0:Init() end) end function slot0.Unload(slot0) if slot0.transform then PoolMgr.GetInstance():ReturnPrefab("world/object/world_cell_item", "world_cell_item", slot0.transform.gameObject) end slot0.transform = nil end function slot0.Init(slot0) slot1 = slot0.cell slot2 = slot0.transform slot2.name = uv0.GetName(slot1.row, slot1.column) slot2.anchoredPosition = slot0.theme:GetLinePosition(slot1.row, slot1.column) slot2.sizeDelta = slot0.theme.cellSize slot0.rtArtifacts = slot2:Find("artifacts") slot0.rtArtifacts.localEulerAngles = Vector3(-slot0.theme.angle, 0, 0) end return slot0