예제 #1
0
        public async Task RefreshAllFiles()
        {
            await PokemonGoGameMasterFileManager.FetchAndSaveFileAsync();

            await PvPokeGameMasterFileManager.FetchAndSaveFileAsync();

            await GenerateLegacyMovesJson();
            await GenerateDefaultIVsJson();
            await GeneratePvPokeGameMasterJson();

            foreach (string filePath in Directory.EnumerateFiles(PokemonGoGameMasterFileManager.DataPath).Where(f => f.EndsWith(".json")))
            {
                var json = await FileManager.ReadFileAsync(filePath);

                var jsonObject    = JsonConvert.DeserializeObject <dynamic>(json);
                var formattedJson = JsonConvert.SerializeObject(jsonObject, GlobalJsonSerializerSettings.Shared);
                await FileManager.SaveFileAsync(formattedJson, filePath);
            }
        }
        public static async Task Main(string[] args)
        {
            PokemonGoGameMasterFileManager.GameMasterFile gameMasterFile;

            if (!PokemonGoGameMasterFileManager.FileExists())
            {
                gameMasterFile = await PokemonGoGameMasterFileManager.FetchAndSaveFileAsync();
            }
            else
            {
                long latestGameMasterVersion = await PokemonGoGameMasterFileManager.FetchLatestVersionAsync();

                gameMasterFile = await PokemonGoGameMasterFileManager.LoadFileAsync(PokemonGoGameMasterFileManager.GameMasterJsonPath);

                if (gameMasterFile.TimeStampMs != latestGameMasterVersion)
                {
                    gameMasterFile = await PokemonGoGameMasterFileManager.FetchAndSaveFileAsync();
                }
            }

            Console.WriteLine(gameMasterFile.TimeStampMs);
        }