From 1256128b363f9b8faa02ba0d2c3d76686ae367d1 Mon Sep 17 00:00:00 2001 From: actislav Date: Tue, 2 Aug 2016 23:56:55 +0400 Subject: [PATCH] pls, dont break the logic of evolve behavior, analyze and test your changes before commit to master, Evolve*KEPT*PokemonsAtStorageUsagePercentage have only one certain meaning. If you want change logic then pls rename parameter to EvolvePokemonsAtStorageUsagePercentage without KEPT. Without this check people who wants to evolve pokemon with above IV or just with enough candy, but with options KeepPokemonsThatCanEvolve = false (case with default config for new users) will never have it, and even their pokemon mightl be transfered instead of evolving... --- .../Tasks/EvolvePokemonTask.cs | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/PoGo.NecroBot.Logic/Tasks/EvolvePokemonTask.cs b/PoGo.NecroBot.Logic/Tasks/EvolvePokemonTask.cs index e05b779e1..6c3c74f0c 100644 --- a/PoGo.NecroBot.Logic/Tasks/EvolvePokemonTask.cs +++ b/PoGo.NecroBot.Logic/Tasks/EvolvePokemonTask.cs @@ -34,23 +34,26 @@ public static async Task Execute(ISession session, CancellationToken cancellatio if (pokemonToEvolve.Any()) { - var totalPokemon = await session.Inventory.GetPokemons(); + if (session.LogicSettings.KeepPokemonsThatCanEvolve) + { + var totalPokemon = await session.Inventory.GetPokemons(); - var pokemonNeededInInventory = session.Profile.PlayerData.MaxPokemonStorage * session.LogicSettings.EvolveKeptPokemonsAtStorageUsagePercentage / 100.0f; - var needPokemonToStartEvolve = Math.Round( - Math.Max(0, - Math.Min(pokemonNeededInInventory, session.Profile.PlayerData.MaxPokemonStorage))); + var pokemonNeededInInventory = session.Profile.PlayerData.MaxPokemonStorage * session.LogicSettings.EvolveKeptPokemonsAtStorageUsagePercentage / 100.0f; + var needPokemonToStartEvolve = Math.Round( + Math.Max(0, + Math.Min(pokemonNeededInInventory, session.Profile.PlayerData.MaxPokemonStorage))); - var deltaCount = needPokemonToStartEvolve - totalPokemon.Count(); + var deltaCount = needPokemonToStartEvolve - totalPokemon.Count(); - if (deltaCount > 0) - { - session.EventDispatcher.Send(new NoticeEvent() + if (deltaCount > 0) { - Message = session.Translation.GetTranslation(TranslationString.WaitingForMorePokemonToEvolve, - pokemonToEvolve.Count, deltaCount, totalPokemon.Count(), needPokemonToStartEvolve, session.LogicSettings.EvolveKeptPokemonsAtStorageUsagePercentage) - }); - return; + session.EventDispatcher.Send(new NoticeEvent() + { + Message = session.Translation.GetTranslation(TranslationString.WaitingForMorePokemonToEvolve, + pokemonToEvolve.Count, deltaCount, totalPokemon.Count(), needPokemonToStartEvolve, session.LogicSettings.EvolveKeptPokemonsAtStorageUsagePercentage) + }); + return; + } } if (await shouldUseLuckyEgg(session, pokemonToEvolve))