From 2eaa2125a7a0e6b8d8919c163b50d6d58dd9b1ff Mon Sep 17 00:00:00 2001 From: cldupland Date: Tue, 12 Nov 2019 11:52:06 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20l'=C3=A9bauche=20du=20rapport?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentations/Rapport.docx | Bin 0 -> 24470 bytes TheGameExtreme/model/deck/Deck.cs | 5 -- .../model/gameActions/classic/GameMode.cs | 49 +++++++++++------- .../gameActions/classic/TerminerSonTour.cs | 2 +- TheGameExtreme/model/manager/GameManager.cs | 20 ++++++- TheGameExtreme/viewmodel/Main.cs | 2 +- 6 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 Documentations/Rapport.docx diff --git a/Documentations/Rapport.docx b/Documentations/Rapport.docx new file mode 100644 index 0000000000000000000000000000000000000000..d84b4e3ec947be6b042385a0015ed179cfab8016 GIT binary patch literal 24470 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 KOP1+>|Mfo~@8WI% literal 0 HcmV?d00001 diff --git a/TheGameExtreme/model/deck/Deck.cs b/TheGameExtreme/model/deck/Deck.cs index 2028ce2..60a2369 100644 --- a/TheGameExtreme/model/deck/Deck.cs +++ b/TheGameExtreme/model/deck/Deck.cs @@ -9,11 +9,6 @@ namespace TheGameExtreme.model protected List deck = new List(); - public Deck() - { - - } - public int size() { return deck.Count; diff --git a/TheGameExtreme/model/gameActions/classic/GameMode.cs b/TheGameExtreme/model/gameActions/classic/GameMode.cs index 2845da0..17159ea 100644 --- a/TheGameExtreme/model/gameActions/classic/GameMode.cs +++ b/TheGameExtreme/model/gameActions/classic/GameMode.cs @@ -12,11 +12,27 @@ namespace TheGameExtreme.model.gameActions.classic protected List gameActions; protected Piles piles; - public event EventHandler TopRangeChanged; protected int nbCardAtBeginOfTurn = 7; protected Deck deck; private int nbMaxCard; + + #region + + public event EventHandler TopRangeChanged; + public event EventHandler PlayerChanged; + protected internal void OnTopRangeChanged(TopRangeChangedEventArgs args) + { + TopRangeChanged?.Invoke(this, args); + } + protected internal void OnPlayerChanged(PlayerChangedEventArgs args) + { + PlayerChanged?.Invoke(this, args); + } + + #endregion + + public GameMode() { gameActions = new List(); @@ -91,24 +107,22 @@ namespace TheGameExtreme.model.gameActions.classic } } - protected internal void OnTopRangeChanged(TopRangeChangedEventArgs args) - { - TopRangeChanged?.Invoke(this, args); - } - public bool endTurn(List currentHand, List CurrentCardPlayed, Player player) { - ((TerminerSonTour)gameActions[2]).end(currentHand, nbCardAtBeginOfTurn, CurrentCardPlayed); - pioche(currentHand, player); - //currentIndexPlayer += 1; - //if (currentIndexPlayer == playerList.Count) - //{ - // currentIndexPlayer = 0; - //} - //CurrentHand = playerList[currentIndexPlayer].getCardList(); - //OnPlayerChanged(new PlayerChangedEventArgs(CurrentHand, playerList[currentIndexPlayer].Pseudo)); - nbCardAtBeginOfTurn = currentHand.Count; - CurrentCardPlayed.Clear(); + if (((TerminerSonTour)gameActions[2]).end(currentHand, nbCardAtBeginOfTurn, CurrentCardPlayed)) + { + pioche(currentHand, player); + nbCardAtBeginOfTurn = currentHand.Count; + CurrentCardPlayed.Clear(); + + OnPlayerChanged(new PlayerChangedEventArgs(currentHand, player.Pseudo)); + return false; + } + else + { + return true; + } + //if (isEndGame()) // Ajouter le score en calculant les cartes restantes dans la pile et dans les mains des joueurs //{ // displayWinner(); @@ -118,7 +132,6 @@ namespace TheGameExtreme.model.gameActions.classic //{ // return true; //} - return false; // Changer } //protected void displayWinner() diff --git a/TheGameExtreme/model/gameActions/classic/TerminerSonTour.cs b/TheGameExtreme/model/gameActions/classic/TerminerSonTour.cs index a0bcb6c..36d7140 100644 --- a/TheGameExtreme/model/gameActions/classic/TerminerSonTour.cs +++ b/TheGameExtreme/model/gameActions/classic/TerminerSonTour.cs @@ -15,7 +15,7 @@ namespace TheGameExtreme.model.gameActions.classic { // Si carte qui fait piocher que d'un, vérifier la bonne pioche (penser si elle vient d'être recouverte) // Sinon - if (nbCardAtBeginOfTurn == CurrentCardPlayed.Count || CurrentHand.Count == 0 || (nbCardAtBeginOfTurn - CurrentHand.Count) >= 2) + if (nbCardAtBeginOfTurn == CurrentCardPlayed.Count || CurrentHand.Count == 0 || CurrentCardPlayed.Count >= 2) { // Ne pas oublié de gérer les ThreeCard return Test(CurrentHand); } diff --git a/TheGameExtreme/model/manager/GameManager.cs b/TheGameExtreme/model/manager/GameManager.cs index 28c3b66..4798676 100644 --- a/TheGameExtreme/model/manager/GameManager.cs +++ b/TheGameExtreme/model/manager/GameManager.cs @@ -25,6 +25,7 @@ namespace TheGameExtreme.model.manager protected int nbMaxCard; protected List CurrentCardPlayed = new List(); public String EndMessage { get; set; } + protected int currentIndexPlayer; protected List currentHand; @@ -41,7 +42,7 @@ namespace TheGameExtreme.model.manager #region event public event EventHandler TopRangeChanged; - //public event EventHandler PlayerChanged; + public event EventHandler PlayerChanged; public event PropertyChangedEventHandler PropertyChanged; public virtual void OnPropertyChanged(string info) { @@ -51,11 +52,26 @@ namespace TheGameExtreme.model.manager { TopRangeChanged?.Invoke(this, args); } + protected internal void OnPlayerChanged(PlayerChangedEventArgs args) + { + currentIndexPlayer += 1; + if (currentIndexPlayer == players.Count) + { + currentIndexPlayer = 0; + } + CurrentHand = players[currentIndexPlayer].getCardList(); + PlayerChanged?.Invoke(this, args); + } #endregion + //protected bool win = true; + //public String EndMessage { get; set; } + + + protected GameManager(List playersNames, GameMode gameMode) { nbPlayer = players.Count; @@ -78,7 +94,7 @@ namespace TheGameExtreme.model.manager public bool endTurn() { - return gameMode.endTurn(currentHand, CurrentCardPlayed, players[0]); // Mettre le joueur actif + return gameMode.endTurn(currentHand, CurrentCardPlayed, players[0]); } diff --git a/TheGameExtreme/viewmodel/Main.cs b/TheGameExtreme/viewmodel/Main.cs index 5212f9b..34b9085 100644 --- a/TheGameExtreme/viewmodel/Main.cs +++ b/TheGameExtreme/viewmodel/Main.cs @@ -50,7 +50,7 @@ namespace TheGameExtreme.viewmodel gameManager.TopRangeChanged += OnTopRangeChanged; - //gameManager.PlayerChanged += OnPlayerChanged; + gameManager.PlayerChanged += OnPlayerChanged; CurrentHand = gameManager.CurrentHand;