diff --git a/51 Hurkle/csharp/src/hurkle/HurkleGame.cs b/51 Hurkle/csharp/src/hurkle/HurkleGame.cs index ed030587..eff53f25 100644 --- a/51 Hurkle/csharp/src/hurkle/HurkleGame.cs +++ b/51 Hurkle/csharp/src/hurkle/HurkleGame.cs @@ -36,14 +36,8 @@ namespace hurkle */ for(var K=1;K<=guesses;K++) { - Console.WriteLine($"GUESS #{K}"); - var inputLine = Console.ReadLine(); - var seperateStrings = inputLine.Split(',', 2, StringSplitOptions.TrimEntries); - var guessPoint = new GamePoint{ - X = int.Parse(seperateStrings[0]), - Y = int.Parse(seperateStrings[1]) - }; - + var guessPoint = GetGuess(new GuessViewModel{CurrentGuessNumber = K}); + if(guessPoint.GetDirectionTo(hurklePoint) == CardinalDirection.None) { /* @@ -70,6 +64,24 @@ namespace hurkle Console.WriteLine($"THE HURKLE IS AT {hurklePoint.X},{hurklePoint.Y}"); } + private class GuessViewModel + { + public int CurrentGuessNumber {get;init;} + } + + private static GamePoint GetGuess(GuessViewModel model) + { + Console.WriteLine($"GUESS #{model.CurrentGuessNumber}"); + var inputLine = Console.ReadLine(); + var seperateStrings = inputLine.Split(',', 2, StringSplitOptions.TrimEntries); + var guessPoint = new GamePoint{ + X = int.Parse(seperateStrings[0]), + Y = int.Parse(seperateStrings[1]) + }; + + return guessPoint; + } + private static void PrintInfo(GamePoint guess, GamePoint target) { Console.Write("GO ");