Beispiel #1
0
        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);
        }
Beispiel #2
0
        /// <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);
        }