示例#1
0
        public void Execute(SubmitTurnCommandParam parameter)
        {
            this.Result = new SubmitTurnResult();

            if (!CanExecute(parameter))
            {
                return;
            }

            IWebCommunitcation cmd = m_Resolver.GetInstance <IWebCommunitcation>();

            GetGamesPlayersCommandResult gameresult;
            Game     foundGame;
            FileInfo file;

            GetObjects(parameter, out foundGame, out gameresult, out file);

            AuthenticateCommandResult auth = m_Resolver.GetInstance <AuthenticateCommandResult>();


            this.Result = cmd.UploadGame(file, auth.AuthID, foundGame.CurrentTurn.TurnId).Result;

            IOSSetting setting = this.m_Resolver.GetInstance <IOSSetting>();

            Archive archive = new Archive(setting);

            archive.MoveToArchive(file, foundGame.GameId);
            archive.KeepArchivedFiles(parameter.ArchivedFiles, foundGame.GameId);
        }
示例#2
0
        private void GetObjects(SubmitTurnCommandParam parameter, out Game foundGame, out GetGamesPlayersCommandResult gameresult, out FileInfo fileToUpload)
        {
            gameresult   = null;
            foundGame    = null;
            fileToUpload = null;

            int gameid = parameter.GameID;

            gameresult = m_Resolver.GetInstance <GetGamesPlayersCommandResult>();

            foundGame = (from id in gameresult.Result.Games where id.GameId == gameid select id).FirstOrDefault();
            if (null == foundGame)
            {
                Trace.Fail("game null");
                return;
            }

            IOSSetting setting = m_Resolver.GetInstance <IOSSetting>();

            fileToUpload = parameter.UseThisFileToUpload ?? Helper.File(foundGame.GameId, setting);

            if (!fileToUpload.Exists)
            {
                Trace.Fail("File to upload: " + fileToUpload.FullName + " does not exitst.");
                return;
            }
        }
示例#3
0
        public static FileInfo File(int gameID, IOSSetting ossetting)
        {
            string path = ossetting.CIVSaveGamePath.FullName;

            Directory.CreateDirectory(path);

            string file = Helper.Filename(gameID);

            return(new FileInfo(Path.Combine(path, file)));
        }
示例#4
0
        /// <summary>
        /// <see>
        ///     <cref>ScriptableObject.CreateInstance</cref>
        /// </see>
        ///     Wrapper
        /// <para>ScriptableObject 생성시 생성자에 PlayerSettings에서 Get할경우 Unity Exception이 남</para>
        /// </summary>
        public static BuildConfig CreateConfig()
        {
            BuildConfig pConfig = ScriptableObject.CreateInstance <BuildConfig>();

            pConfig.strProductName     = PlayerSettings.productName;
            pConfig.arrBuildSceneNames = Builder.GetEnabled_EditorScenes();

            pConfig.strAbsolute_BuildOutputFolderPath = Application.dataPath.Replace("/Assets", "") + "/Build";
            pConfig.bUse_DateTime_Suffix = true;

            pConfig.pAndroidSetting = AndroidSetting.CreateSetting();
            pConfig.pIOSSetting     = IOSSetting.CreateSetting();

            return(pConfig);
        }
            /// <summary>
            /// <para>ScriptableObject 생성시 생성자에 PlayerSettings에서 Get할경우 Unity Exception이 남</para>
            /// </summary>
            /// <returns></returns>
            public static IOSSetting CreateSetting()
            {
                IOSSetting pNewSetting = new IOSSetting();

                return(pNewSetting);
            }
示例#6
0
 public CreateGameViewModel(IOSSetting settings)
 {
     m_Settings = settings;
 }
示例#7
0
 public Archive(IOSSetting setting)
 {
     m_Setting = setting;
 }