예제 #1
0
        /// <summary>
        /// This command will get you the last save you saved
        /// </summary>
        /// <param name="saveGameData">Your Save Object<see cref="DelegateCore.OnSaveGame{T}"/></param>
        /// <param name="error">Error</param>
        public void GetSaveGame <T>(DelegateCore.OnSaveGame <T> saveGameData, DelegateCore.OnError error)
        {
            if (_gameServiceObj == null)
            {
                if (_isAvailable)
                {
                    if (FiroozehGameService.Configuration.EnableLog)
                    {
                        LogUtil.LogError(Tag, "GameService Is NotAvailable yet");
                    }
                }
                else
                {
                    if (FiroozehGameService.Configuration.EnableLog)
                    {
                        LogUtil.LogError(Tag, "You Logout Before ,You Must Config it Again...");
                    }
                }
                return;
            }

            _gameServiceObj.Call("GetLastSave", new IGameServiceCallback(save =>
            {
                saveGameData.Invoke(JsonConvert.DeserializeObject <T>(save));
            }, error.Invoke));
        }
예제 #2
0
        /// <summary>
        /// With this command you can save your Current Status in Game
        /// </summary>
        /// <param name="saveGameName">saveGameName</param>
        /// <param name="saveGameDescription">saveGameDescription</param>
        /// <param name="saveGameObj">the Object that you Want To Save it</param>
        /// <param name="callback">Your Save Object <see cref="DelegateCore.OnSaveGame{T}"/>></param>
        /// <param name="error">Error</param>
        public void SaveGame(
            string saveGameName
            , string saveGameDescription
            , object saveGameObj
            , DelegateCore.OnSaveGame <SaveDetails> callback
            , DelegateCore.OnError error)
        {
            if (_gameServiceObj == null)
            {
                if (_isAvailable)
                {
                    if (FiroozehGameService.Configuration.EnableLog)
                    {
                        LogUtil.LogError(Tag, "GameService Is NotAvailable yet");
                    }
                }
                else
                {
                    if (FiroozehGameService.Configuration.EnableLog)
                    {
                        LogUtil.LogError(Tag, "You Logout Before ,You Must Config it Again...");
                    }
                }
                return;
            }


            _gameServiceObj.Call("SaveGame"
                                 , saveGameName
                                 , saveGameDescription
                                 , JsonConvert.SerializeObject(saveGameObj)
                                 , new IGameServiceCallback(onCallback =>
            {
                callback.Invoke(JsonConvert.DeserializeObject <SaveDetails>(onCallback));
            }, error.Invoke));
        }