Exemple #1
0
 public void Init(ResLoad resLoad)
 {
     base.Init();
     this.resLoad = resLoad;
 }
Exemple #2
0
        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);
            }
        }
Exemple #3
0
 public ResLoadPlugin(ResLoad resLoad)
 {
     this.resLoad = resLoad;
 }