Ejemplo n.º 1
0
        public void WriteSaveData(ESaveType type)
        {
            if (FriendFarmManager.Instance != null)
            {
                return;
            }

            switch (type)
            {
            case ESaveType.Land:
                var landDataArr = LandTileManager.Instance.GetLandSaveDatas();
                WriteTileSave(landDataArr, PrefsKey.LandSaveDataKey, type);
                break;

            case ESaveType.Road:
                var roadDataArr = ObjectTileManager.Instance.GetRoadSaveDatas();
                WriteTileSave(roadDataArr, PrefsKey.RoadSaveDataKey, type);
                break;

            case ESaveType.Product:
                var productDataArr = ObjectTileManager.Instance.GetProductSaveDatas();
                WriteTileSave(productDataArr, PrefsKey.ProductSaveDataKey, type);
                break;

            case ESaveType.Decoration:
                var decorationDataArr = ObjectTileManager.Instance.GetDecorationSaveDatas();
                WriteTileSave(decorationDataArr, PrefsKey.DecorationSaveDataKey, type);
                break;

            case ESaveType.Garbage:
                var garbageDataArr = ObjectTileManager.Instance.GetGarbageSaveDatas();
                WriteTileSave(garbageDataArr, PrefsKey.GarbageSaveDataKey, type);
                break;
            }
        }
Ejemplo n.º 2
0
        void WriteTileSave(object data, string key, ESaveType index)
        {
            string dataStr = JsonConvert.SerializeObject(data);

            PlayerPrefs.SetString(key, dataStr);
            string compressStr = StringCompressionHelper.Compress(dataStr);

            if (NetworkManager.Instance != null)
            {
                NetworkManager.Instance.SendFarmSaveData(index, compressStr);
            }
        }