From d5d659d30b239845143ad7ade4411d15f5094ead Mon Sep 17 00:00:00 2001 From: Alexis DRAI Date: Thu, 29 Sep 2022 18:46:39 +0200 Subject: [PATCH] :recycle: Improve stub by using GameRunner's methods where possible --- Sources/Data/Stub.cs | 61 +++++++++++++++++--------------------------- 1 file changed, 24 insertions(+), 37 deletions(-) diff --git a/Sources/Data/Stub.cs b/Sources/Data/Stub.cs index 988a303..e61ee46 100644 --- a/Sources/Data/Stub.cs +++ b/Sources/Data/Stub.cs @@ -9,20 +9,21 @@ namespace Data { public class Stub : ILoader { - - // when the other classes are ready - // the Stub should just make and return a GameRunner, and the GameRunner should have - // a PlayerManager, a collection of Games, a FavGroupManager, etc. (see diagram) - public GameRunner LoadApp() { - IManager>>> globalDieManager = new DieManager(); + GameRunner gr = new(new PlayerManager(), new DieManager()); + + Player player1 = new("Alice"), player2 = new("Bob"), player3 = new("Clyde"); + + gr.GlobalPlayerManager.Add(player1); + gr.GlobalPlayerManager.Add(player2); + gr.GlobalPlayerManager.Add(player3); + List> monopolyDice = new(); List> dndDice = new(); - string monopolyName = "Monopoly"; - string dndName = "DnD"; + string monopolyName = "Monopoly", dndName = "DnD"; NumberDieFace[] d6Faces = new NumberDieFace[] { new(1), new(2), new(3), new(4), new(5), new(6) }; @@ -39,40 +40,26 @@ namespace Data dndDice.Add(new NumberDie(d20Faces)); - globalDieManager.Add(new KeyValuePair>>(monopolyName, monopolyDice.AsEnumerable())); - globalDieManager.Add(new KeyValuePair>>(dndName, dndDice.AsEnumerable())); - - IEnumerable> dice1 = globalDieManager.GetOneByName(monopolyName).Value; - IEnumerable> dice2 = globalDieManager.GetOneByName(dndName).Value; - - string g1 = "game1", g2 = "game2", g3 = "game3"; - - Game game1 = new(name: g1, playerManager: new PlayerManager(), dice: dice1); - Game game2 = new(name: g2, playerManager: new PlayerManager(), dice: dice2); - Game game3 = new(name: g3, playerManager: new PlayerManager(), dice: dice1); - - List games = new() { game1, game2, game3 }; - - Player player1 = new("Alice"), player2 = new("Bob"), player3 = new("Clyde"); + gr.GlobalDieManager.Add(new KeyValuePair>>(dndName, dndDice.AsEnumerable())); + gr.GlobalDieManager.Add(new KeyValuePair>>(monopolyName, monopolyDice.AsEnumerable())); - PlayerManager globalPlayerManager = new(); - globalPlayerManager.Add(player1); - globalPlayerManager.Add(player2); - globalPlayerManager.Add(player3); + string game1 = "Forgotten Realms", game2 = "4e", game3 = "The Coopers"; - GameRunner gameRunner = new(globalPlayerManager, globalDieManager, games); + gr.Add(new(game1, new PlayerManager(), dndDice.AsEnumerable())); + gr.Add(new(game2, new PlayerManager(), dndDice.AsEnumerable())); + gr.Add(new(game3, new PlayerManager(), monopolyDice.AsEnumerable())); - game1.PlayerManager.Add(player1); - game1.PlayerManager.Add(player2); + gr.GetOneByName(game1).PlayerManager.Add(player1); + gr.GetOneByName(game1).PlayerManager.Add(player2); - game2.PlayerManager.Add(player1); - game2.PlayerManager.Add(player2); - game2.PlayerManager.Add(player3); + gr.GetOneByName(game2).PlayerManager.Add(player1); + gr.GetOneByName(game2).PlayerManager.Add(player2); + gr.GetOneByName(game2).PlayerManager.Add(player3); - game3.PlayerManager.Add(player1); - game3.PlayerManager.Add(player3); + gr.GetOneByName(game3).PlayerManager.Add(player1); + gr.GetOneByName(game3).PlayerManager.Add(player3); - foreach (Game game in games) + foreach (Game game in gr.GetAll()) { for (int i = 0; i < 10; i++) { @@ -82,7 +69,7 @@ namespace Data } } - return gameRunner; + return gr; } } } \ No newline at end of file