Exemplo n.º 1
0
 public static string GetGameSaveTypeFormattedText(GameSaveType type)
 {
     return(type switch
     {
         GameSaveType.Park => App.Current.Resources["SaveType_Park_FormattedText"].ToString(),
         GameSaveType.Scenario => App.Current.Resources["SaveType_Scenario_FormattedText"].ToString(),
         GameSaveType.Start_New_Scenario => App.Current.Resources["SaveType_Start_New_Scenario_FormattedText"].ToString(),
         _ => throw new NotImplementedException(),
     });
Exemplo n.º 2
0
        public static string GetGameSaveTypeSafeFullPath(GameSaveType type)
        {
            DirectoryInfo dirInfo = new DirectoryInfo(saveTypeFullPath[type]);

            if (!dirInfo.Exists)
            {
                dirInfo.Create();
            }
            return(saveTypeFullPath[type]);
        }
        private unsafe GameSaveResult ErrorCheckGameSaveData <T>(ref GameSaveData gameSaveData, GameSaveType gameSaveType, ulong stableTypeHash) where T : unmanaged
        {
            if (gameSaveData.gameSaveType != gameSaveType)
            {
                return(GameSaveResult.ErrorType);
            }

            if (gameSaveData.stableTypeHash != stableTypeHash)
            {
                return(GameSaveResult.ErrorType);
            }

            int elementSize = gameSaveData.bufferSize / gameSaveData.numElements;

            if (elementSize != UnsafeUtility.SizeOf <T>())
            {
                return(GameSaveResult.ErrorDataSize);
            }

            return(GameSaveResult.Success);
        }
Exemplo n.º 4
0
 public static string GetGameSaveTypeFullPath(GameSaveType type)
 {
     return(saveTypeFullPath[type]);
 }
Exemplo n.º 5
0
        public static bool ListSaveHeaderFilePatch_changeSaveCount(ref SteamPlatform __instance, ref GameSaveType Type, ref List <PathOfWuxiaSaveHeader> __result)
        {
            Heluo.Logger.LogError("ListSaveHeaderFilePatch_changeSaveCount start");
            List <PathOfWuxiaSaveHeader> list = new List <PathOfWuxiaSaveHeader>();
            string format = (Type == GameSaveType.Auto) ? "PathOfWuxia_{0:00}.autosave" : "PathOfWuxia_{0:00}.save";

            int startIndex = 0;
            int endIndex   = saveCount.Value;

            if (pagination.Value)
            {
                startIndex = (currentPage - 1) * countPerPage.Value;
                endIndex   = Math.Min(currentPage * countPerPage.Value, saveCount.Value);
            }

            Heluo.Logger.LogError("startIndex:" + startIndex);
            Heluo.Logger.LogError("endIndex:" + endIndex);
            for (int i = startIndex; i < endIndex; i++)
            {
                PathOfWuxiaSaveHeader pathOfWuxiaSaveHeader = null;
                string text = string.Format(format, i);
                if (SteamRemoteStorage.FileExists(text))
                {
                    __instance.GetSaveFileHeader(text, ref pathOfWuxiaSaveHeader);
                }
                else
                {
                    pathOfWuxiaSaveHeader = new PathOfWuxiaSaveHeader();
                }
                if (pathOfWuxiaSaveHeader == null)
                {
                    pathOfWuxiaSaveHeader = new PathOfWuxiaSaveHeader();
                }
                list.Add(pathOfWuxiaSaveHeader);
            }

            __result = list;
            Heluo.Logger.LogError("list.count:" + list.Count);
            Heluo.Logger.LogError("ListSaveHeaderFilePatch_changeSaveCount end");
            return(false);
        }