public static async Task UpdateGUIStats(Hero _hero) { MainWindow.main.dataGrid_clear(); GeneratedCode.GetInventoryResponse inventory = await _hero.Client.GetInventory(); GeneratedCode.PokemonData[] pokemons = inventory.InventoryDelta.InventoryItems .Select(i => i.InventoryItemData?.Pokemon) .Where(p => p != null && p?.PokemonId > 0) .ToArray(); GeneratedCode.Item[] items = inventory.InventoryDelta.InventoryItems .Select(i => i.InventoryItemData?.Item) .Where(p => p != null && p?.Item_ > 0) .ToArray(); foreach (GeneratedCode.PokemonData pokemon in pokemons) { MainWindow.main.dataGrid_pokemon_add( new dataGrid_pokemon_class() { Name = pokemon.PokemonId.ToString(), CP = pokemon.Cp, Perfection = Math.Round(bLogic.Pokemon.Perfect(pokemon), 2) }); } foreach (GeneratedCode.Item item in items) { MainWindow.main.dataGrid_backpack_add( new dataGrid_backpack_class() { Item = item.Item_.ToString(), Amount = item.Count }); } Task.Delay(60000); UpdateGUIStats(_hero); }
/// <summary> /// Change the console title /// for much info. wow /// </summary> /// <param name="username"></param> /// <param name="client"></param> /// <returns></returns> public static async Task RefreshConsoleTitle(GeneratedCode.GetInventoryResponse inventory, GeneratedCode.GetPlayerResponse profile) { var stats = inventory.InventoryDelta.InventoryItems.Select(i => i.InventoryItemData?.PlayerStats).ToArray(); foreach (var playerStatistic in stats) { if (playerStatistic != null) { int XpDiff = bhelper.Game.GetXpDiff(playerStatistic.Level); System.Console.Title = string.Format(profile.Profile.Username + " | LEVEL: {0:0} - ({1:0}) | SD: {2:0} | XP/H: {3:0} | POKE/H: {4:0}", playerStatistic.Level, string.Format("{0:#,##0}", (playerStatistic.Experience - playerStatistic.PrevLevelXp - XpDiff)) + "/" + string.Format("{0:#,##0}", (playerStatistic.NextLevelXp - playerStatistic.PrevLevelXp - XpDiff)), string.Format("{0:#,##0}", profile.Profile.Currency.ToArray()[1].Amount), string.Format("{0:#,##0}", Math.Round(bLogic.Pokemon.TotalExperience / bhelper.Main.GetRuntime(_hero.TimeStarted))), Math.Round(bLogic.Pokemon.TotalPokemon / bhelper.Main.GetRuntime(_hero.TimeStarted)) + " | " + (DateTime.Now - _hero.TimeStarted).ToString(@"dd\.hh\:mm\:ss")); if (_hero.ClientSettings.LevelUpCheck && _hero.Currentlevel != playerStatistic.Level) { _hero.Currentlevel = playerStatistic.Level; bhelper.Main.ColoredConsoleWrite(ConsoleColor.Magenta, $"[{DateTime.Now.ToString("HH:mm:ss")}] Current Level: " + playerStatistic.Level + ". XP needed for next Level: " + (playerStatistic.NextLevelXp - playerStatistic.Experience)); } } } await bhelper.Random.Delay(2000, 5000); GeneratedCode.GetInventoryResponse NewInventory = await _hero.Client.GetInventory(); RefreshConsoleTitle(NewInventory, profile); }