コード例 #1
0
        /// <summary>
        /// ゲームのデータをセーブ
        /// </summary>
        /// <param name="engine">ADVエンジン</param>
        /// <param name="tex">セーブアイコン</param>
        public void UpdateAutoSaveData(AdvEngine engine, Texture2D tex, List <IBinaryIO> customSaveIoList, List <IBinaryIO> saveIoList)
        {
            Clear();
            //セーブ対象となる情報を設定
            List <IBinaryIO> ioList = new List <IBinaryIO>()
            {
                engine.ScenarioPlayer,
                engine.Param.DefaultData,
                engine.GraphicManager,
                engine.CameraManager,
                engine.SoundManager,
            };

            ioList.AddRange(customSaveIoList);
            ioList.AddRange(saveIoList);

            //バイナリデータを作成
            Profiler.BeginSample("MakeSaveDataBuffer");
            Buffer.MakeBuffer(ioList);
            Profiler.EndSample();

            Date    = WrapperUnityVersion.DateTimeNow();
            Texture = tex;
            Title   = engine.Page.SaveDataTitle;
        }
コード例 #2
0
 /// <summary>
 /// オートセーブデータからセーブデータを作成
 /// </summary>
 /// <param name="autoSave">オートセーブデータ</param>
 /// <param name="tex">セーブアイコン</param>
 public void SaveGameData(AdvSaveData autoSave, AdvEngine engine, Texture2D tex)
 {
     Clear();
     Buffer      = autoSave.Buffer.Clone <BinaryBuffer>();
     Date        = WrapperUnityVersion.DateTimeNow();
     Texture     = tex;
     FileVersion = autoSave.FileVersion;
     Title       = autoSave.Title;
 }
コード例 #3
0
 /// <summary>
 /// バイナリ書き込み
 /// </summary>
 /// <param name="writer">バイナリライター</param>
 public void Write(BinaryWriter writer)
 {
     Date = WrapperUnityVersion.DateTimeNow();
     writer.Write(MagicID);
     writer.Write(Version);
     writer.Write(Date.Ticks);
     if (Texture != null)
     {
         byte[] captureMem = Texture.EncodeToPNG();
         writer.WriteBuffer(captureMem);
     }
     else
     {
         writer.Write(0);
     }
     writer.Write(Title);
     Buffer.Write(writer);
 }
コード例 #4
0
        //キャッシュクリアのため、タイムスタンプを設定したURLにする
        public static string ToCacheClearUrl(string url)
        {
            if (url.Contains(Application.streamingAssetsPath))
            {
                if (Application.platform != RuntimePlatform.WebGLPlayer)
                {
                    //StreamigAssets以下はタイムスタンプがあるとバグる
                    return(url);
                }
            }

            string tempurl = string.Format(
                "{0}?datetime={1}",
                url,
                WrapperUnityVersion.DateTimeNow().ToFileTime()
                );

            return(tempurl);
        }