From b460526533ef22418e151259e21085817626cc9f Mon Sep 17 00:00:00 2001 From: cvax Date: Sat, 23 Jul 2016 07:21:36 -0700 Subject: [PATCH] Improve CATCH logging. Add attempt counter. --- PokemonGo.RocketAPI.Logic/Logic.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/PokemonGo.RocketAPI.Logic/Logic.cs b/PokemonGo.RocketAPI.Logic/Logic.cs index 75aa14921..9a39f61a1 100644 --- a/PokemonGo.RocketAPI.Logic/Logic.cs +++ b/PokemonGo.RocketAPI.Logic/Logic.cs @@ -38,6 +38,7 @@ public Logic(ISettings clientSettings) private async Task CatchEncounter(EncounterResponse encounter, MapPokemon pokemon) { CatchPokemonResponse caughtPokemonResponse; + int attemptCounter = 1; do { var probability = encounter?.CaptureProbability?.CaptureProbability_?.FirstOrDefault(); @@ -73,11 +74,11 @@ private async Task CatchEncounter(EncounterResponse encounter, MapPokemon pokemo _stats.UpdateConsoleTitle(_inventory); if (encounter?.CaptureProbability?.CaptureProbability_ != null) - Logger.Write( - caughtPokemonResponse.Status == CatchPokemonResponse.Types.CatchStatus.CatchSuccess - ? $"{pokemon.PokemonId} Lvl {PokemonInfo.GetLevel(encounter?.WildPokemon?.PokemonData)} ({encounter?.WildPokemon?.PokemonData?.Cp}/{PokemonInfo.CalculateMaxCP(encounter?.WildPokemon?.PokemonData)} CP) ({Math.Round(PokemonInfo.CalculatePokemonPerfection(encounter?.WildPokemon?.PokemonData)).ToString("0.00")}% perfect) | Chance: {encounter?.CaptureProbability?.CaptureProbability_.First()} | {Math.Round(distance)}m dist | with {pokeball} " - : $"{pokemon.PokemonId} ({encounter?.WildPokemon?.PokemonData?.Cp} CP) Chance: {Math.Round(Convert.ToDouble(encounter?.CaptureProbability?.CaptureProbability_.First()))} | {Math.Round(distance)}m distance {caughtPokemonResponse.Status} | with {pokeball}", - LogLevel.Caught); + { + string catchStatus = attemptCounter > 1 ? $"{caughtPokemonResponse.Status} Attempt #{attemptCounter}" : $"{caughtPokemonResponse.Status}"; + Logger.Write($"({catchStatus}) | {pokemon.PokemonId} Lvl {PokemonInfo.GetLevel(encounter?.WildPokemon?.PokemonData)} ({encounter?.WildPokemon?.PokemonData?.Cp}/{PokemonInfo.CalculateMaxCP(encounter?.WildPokemon?.PokemonData)} CP) ({Math.Round(PokemonInfo.CalculatePokemonPerfection(encounter?.WildPokemon?.PokemonData)).ToString("0.00")}% perfect) | Chance: {Math.Round(Convert.ToDouble(encounter?.CaptureProbability?.CaptureProbability_.First()) * 100, 2)}% | {Math.Round(distance)}m dist | with {pokeball}", LogLevel.Caught); + } + attemptCounter++; await Task.Delay(2000); } while (caughtPokemonResponse.Status == CatchPokemonResponse.Types.CatchStatus.CatchMissed || caughtPokemonResponse.Status == CatchPokemonResponse.Types.CatchStatus.CatchEscape);