⚗️ Add features to prototype, test DB further
continuous-integration/drone/push Build is passing Details

pull/110/head
Alexis Drai 2 years ago
parent 901a1128e9
commit 621d6c3bc2

@ -44,9 +44,14 @@ namespace App
Debug.WriteLine("Loading players"); Debug.WriteLine("Loading players");
foreach (PlayerEntity entity in entities) foreach (PlayerEntity entity in entities)
{
try
{ {
// persist them as models ! // persist them as models !
gameRunner.GlobalPlayerManager.Add(entity.ToModel()); gameRunner.GlobalPlayerManager.Add(entity.ToModel());
Debug.WriteLine($"{entity.ID} -- {entity.Name}");
}
catch (Exception ex) { Debug.WriteLine($"{ex.Message}\n... Never mind"); }
} }
} }
} }
@ -60,7 +65,10 @@ namespace App
"l... load a game\n" + "l... load a game\n" +
"n... start new game\n" + "n... start new game\n" +
"d... delete a game\n" + "d... delete a game\n" +
"i... see all dice\n" +
"c... create a group of dice\n" + "c... create a group of dice\n" +
"p... see all players\n" +
"y... create players\n" +
"q... QUIT\n" + "q... QUIT\n" +
">" ">"
); );
@ -87,11 +95,14 @@ namespace App
Console.WriteLine("make at least one dice group first, then try again"); Console.WriteLine("make at least one dice group first, then try again");
break; break;
} }
Console.WriteLine("add dice to the game");
IEnumerable<Die> newGameDice = PrepareDice(gameRunner); IEnumerable<Die> newGameDice = PrepareDice(gameRunner);
string newGameName; string newGameName;
Console.WriteLine("give this new game a name\n>"); Console.WriteLine("give this new game a name\n>");
newGameName = Console.ReadLine(); newGameName = Console.ReadLine();
Console.WriteLine("add players to the game");
PlayerManager playerManager = PreparePlayers(gameRunner); PlayerManager playerManager = PreparePlayers(gameRunner);
gameRunner.StartNewGame(newGameName, playerManager, newGameDice); gameRunner.StartNewGame(newGameName, playerManager, newGameDice);
@ -143,6 +154,18 @@ namespace App
gameRunner.GlobalDieManager.Add(new KeyValuePair<string, IEnumerable<Die>>(newGroupName, newGroupDice)); gameRunner.GlobalDieManager.Add(new KeyValuePair<string, IEnumerable<Die>>(newGroupName, newGroupDice));
break; break;
case "p":
ShowPlayers(gameRunner);
break;
case "i":
ShowDice(gameRunner);
break;
case "y":
PreparePlayers(gameRunner);
break;
default: default:
Console.WriteLine("u wot m8?"); Console.WriteLine("u wot m8?");
break; break;
@ -166,7 +189,9 @@ namespace App
{ {
try // to persist them try // to persist them
{ // as entities ! { // as entities !
playerDbManager.Add(model.ToEntity()); PlayerEntity entity = model.ToEntity();
playerDbManager.Add(entity);
Debug.WriteLine($"{entity.ID} -- {entity.Name}");
} }
// what if there's already a player with that name? Exception (see PlayerEntity's annotations) // what if there's already a player with that name? Exception (see PlayerEntity's annotations)
catch (ArgumentException ex) { Debug.WriteLine($"{ex.Message}\n... Never mind"); } catch (ArgumentException ex) { Debug.WriteLine($"{ex.Message}\n... Never mind"); }
@ -220,6 +245,23 @@ namespace App
return name; return name;
} }
private static void ShowPlayers(GameRunner gameRunner)
{
Console.WriteLine("Look at all them players!");
foreach (Player player in gameRunner.GlobalPlayerManager.GetAll())
{
Console.WriteLine(player);
}
}
private static void ShowDice(GameRunner gameRunner)
{
foreach ((string name, IEnumerable<Die> dice) in gameRunner.GlobalDieManager.GetAll())
{
Console.WriteLine($"{name} -- {dice}");
}
}
private static NumberDie MakeNumberDie() private static NumberDie MakeNumberDie()
{ {
NumberDie die; NumberDie die;
@ -293,12 +335,8 @@ namespace App
private static IEnumerable<Die> PrepareDice(GameRunner gameRunner) private static IEnumerable<Die> PrepareDice(GameRunner gameRunner)
{ {
List<Die> result = new(); List<Die> result = new();
Console.WriteLine("add dice to the game");
Console.WriteLine("all known dice or groups of dice:"); Console.WriteLine("all known dice or groups of dice:");
foreach ((string name, IEnumerable<Die> dice) in gameRunner.GlobalDieManager.GetAll()) ShowDice(gameRunner);
{
Console.WriteLine($"{name} -- {dice}");
}
string menuChoiceDice = ""; string menuChoiceDice = "";
while (!(menuChoiceDice.Equals("ok") && result.Any())) while (!(menuChoiceDice.Equals("ok") && result.Any()))
{ {
@ -318,12 +356,8 @@ namespace App
private static PlayerManager PreparePlayers(GameRunner gameRunner) private static PlayerManager PreparePlayers(GameRunner gameRunner)
{ {
PlayerManager result = new(); PlayerManager result = new();
Console.WriteLine("add players to the game");
Console.WriteLine("all known players:"); Console.WriteLine("all known players:");
foreach (Player player in gameRunner.GlobalPlayerManager.GetAll()) ShowPlayers(gameRunner);
{
Console.WriteLine(player);
}
string menuChoicePlayers = ""; string menuChoicePlayers = "";
while (!(menuChoicePlayers.Equals("ok") && result.GetAll().Any())) while (!(menuChoicePlayers.Equals("ok") && result.GetAll().Any()))
{ {

Loading…
Cancel
Save