public void Init(ResLoad resLoad) { base.Init(); this.resLoad = resLoad; }
public static void LoadSerializeHashtable(this Tilemap self, Hashtable hashtable, ResLoad resLoad) { self.animationFrameRate = hashtable.Get <float>(StringConst.String_animationFrameRate); self.color = hashtable.Get <string>(StringConst.String_color).ToColorOrDefault(); self.tileAnchor = hashtable.Get <string>(StringConst.String_tileAnchor).ToVector3OrDefault(null, new Vector3(0.5f, 0.5f, 0)); self.orientation = hashtable.Get <int>(StringConst.String_orientation).ToEnum <Tilemap.Orientation>(); Vector3Int size = hashtable.Get <string>(StringConst.String_size).ToVector3IntOrDefault(); Vector3Int origin = hashtable.Get <string>(StringConst.String_origin).ToVector3IntOrDefault(); self.size = size; self.origin = origin; Hashtable tileHashtable = hashtable.Get <Hashtable>(StringConst.String_tile_hashtable); foreach (string cellPositionString in tileHashtable.Keys) { Vector3Int cellPos = cellPositionString.ToVector3().ToVector3Int(); Hashtable tileDetailHashtable = tileHashtable.Get <Hashtable>(cellPositionString); long tileBaseRefId = tileDetailHashtable.Get <long>(StringConst.String_tileBase_ref_id); string assetPath = tileBaseRefId.GetAssetPathByRefId(); resLoad.GetOrLoadAsset(assetPath, assetCat => { TileBase tileBase = assetCat.Get <TileBase>(); SetTile(self, cellPos, tileBase, tileDetailHashtable); }, null, null, self); } }
public ResLoadPlugin(ResLoad resLoad) { this.resLoad = resLoad; }