From 9253a73a299199bce7d4daa9f38162971c4b4a13 Mon Sep 17 00:00:00 2001 From: nightblade9 Date: Sat, 14 Dec 2024 21:33:30 -0500 Subject: [PATCH] Fix: typing an invalid number in battle would result in no input Game now correctly tells you, that was an invalid input. --- source/TextBlade.Core/Battle/CharacterTurnProcessor.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/source/TextBlade.Core/Battle/CharacterTurnProcessor.cs b/source/TextBlade.Core/Battle/CharacterTurnProcessor.cs index 162623a..9796e4a 100644 --- a/source/TextBlade.Core/Battle/CharacterTurnProcessor.cs +++ b/source/TextBlade.Core/Battle/CharacterTurnProcessor.cs @@ -115,13 +115,10 @@ private static T PickFromList(IEnumerable items) Console.WriteLine($" {i + 1}: {item}"); } - var target = 0; - while (target == 0 || target > items.Count()) + int target; + while (!int.TryParse(Console.ReadKey().KeyChar.ToString().Trim(), out target) || target == 0 || target > items.Count()) { - if (!int.TryParse(Console.ReadKey().KeyChar.ToString().Trim(), out target)) - { - Console.WriteLine($"That's not a valid number! Enter a number from 1 to {items.Count()}: "); - } + Console.WriteLine($"That's not a valid number! Enter a number from 1 to {items.Count()}: "); } return items.ElementAt(target - 1);