From 15f0c4e1ef25cdf775362eb9fbbae907f640f4d8 Mon Sep 17 00:00:00 2001 From: "jeremy.mouyon" Date: Mon, 3 Jun 2024 17:11:41 +0200 Subject: [PATCH] IS THE END OF THE GAMEBOARD MATE --- Qwirkle/QwirkleClassLibrary/Games/Game.cs | 10 ++- Qwirkle/QwirkleViews/Pages/GameBoard.xaml.cs | 58 ++++++++++++++++-- Qwirkle/QwirkleViews/Pages/Gameboard.xaml | 18 +++++- Qwirkle/QwirkleViews/Resources/Images/bag.png | Bin 0 -> 45504 bytes 4 files changed, 75 insertions(+), 11 deletions(-) create mode 100644 Qwirkle/QwirkleViews/Resources/Images/bag.png diff --git a/Qwirkle/QwirkleClassLibrary/Games/Game.cs b/Qwirkle/QwirkleClassLibrary/Games/Game.cs index 5ba5c3d..ad12627 100644 --- a/Qwirkle/QwirkleClassLibrary/Games/Game.cs +++ b/Qwirkle/QwirkleClassLibrary/Games/Game.cs @@ -28,7 +28,8 @@ namespace QwirkleClassLibrary.Games [DataMember] private Board board = new Board(15, 12); - + + public bool PlayerSwapping { get; set; } public Board Board => board; public ReadOnlyCollection PlayerList => players.AsReadOnly(); @@ -325,9 +326,14 @@ namespace QwirkleClassLibrary.Games /// bool public bool PlaceTile(Player player, Tile tile, int x, int y) { + if (PlayerSwapping) + { + OnPlaceTile(new PlaceTileNotifiedEventArgs(tile, "you are swapping, you can't place tile !")); + return false; + } if(!TileInbag(player, tile)) { - OnPlaceTile(new PlaceTileNotifiedEventArgs(tile, "you cant play")); + OnPlaceTile(new PlaceTileNotifiedEventArgs(tile, "you can't play")); return false; } if (!IsMoveCorrect(tile, x, y, board!)) return false; diff --git a/Qwirkle/QwirkleViews/Pages/GameBoard.xaml.cs b/Qwirkle/QwirkleViews/Pages/GameBoard.xaml.cs index b92f2ae..9e9260d 100644 --- a/Qwirkle/QwirkleViews/Pages/GameBoard.xaml.cs +++ b/Qwirkle/QwirkleViews/Pages/GameBoard.xaml.cs @@ -15,11 +15,14 @@ namespace Qwirkle.Pages; public partial class Gameboard : ContentPage { public ICommand OnDrop => new Command(OnDropTile); + public ICommand OnDropB => new Command(OnDropBag); private Game game = ((App)Application.Current!).Game; private Tile? tiledrag; + private List tilesSwap = []; + public Color ColorBC1 { get; set; } = Colors.White; public Color ColorBC2 { get; set; } = Colors.Transparent; public Color ColorBC3 { get; set; } = Colors.Transparent; @@ -44,6 +47,11 @@ public partial class Gameboard : ContentPage e.AcceptedOperation = DataPackageOperation.Copy; } + private void OnDragOverBag(object sender, DragEventArgs e) + { + e.AcceptedOperation = DataPackageOperation.Copy; + } + private void OnDropTile(Cell cell) { @@ -71,14 +79,21 @@ public partial class Gameboard : ContentPage { game.NextPlayerNotified += Game_NextPlayerNotified; + if (game.PlayerSwapping) + { + game.SwapTiles(game.GetPlayingPlayer(), tilesSwap); + tilesSwap.Clear(); + game.PlayerSwapping = false; + } + else + { + game.GetPlayerScore(game.GetPlayingPlayer(), game.CellsUsed, game.GetBoard()!); + game.EmptyCellUsed(); + game.DrawTiles(game.GetPlayingPlayer()); + } - game.GetPlayerScore(game.GetPlayingPlayer(), game.CellsUsed, game.GetBoard()!); - game.EmptyCellUsed(); - game.DrawTiles(game.GetPlayingPlayer()); game.CheckGameOver(game.GetPlayingPlayer()); - game.SetNextPlayer(); - game.NextPlayerNotified -= Game_NextPlayerNotified; ChangeColorBC(); @@ -89,6 +104,8 @@ public partial class Gameboard : ContentPage if (game.GetPlayingPlayerPosition() == 0) { ColorBC1 = Colors.White; + ColorBC2 = Colors.Transparent; + ColorBC3 = Colors.Transparent; ColorBC4 = Colors.Transparent; OnPropertyChanged(nameof(ColorBC1)); OnPropertyChanged(nameof(ColorBC4)); @@ -97,20 +114,26 @@ public partial class Gameboard : ContentPage { ColorBC2 = Colors.White; ColorBC1 = Colors.Transparent; + ColorBC3 = Colors.Transparent; + ColorBC4 = Colors.Transparent; OnPropertyChanged(nameof(ColorBC1)); OnPropertyChanged(nameof(ColorBC2)); } if (game.GetPlayingPlayerPosition() == 2) { ColorBC3 = Colors.White; + ColorBC1 = Colors.Transparent; ColorBC2 = Colors.Transparent; + ColorBC4 = Colors.Transparent; OnPropertyChanged(nameof(ColorBC3)); OnPropertyChanged(nameof(ColorBC2)); } if (game.GetPlayingPlayerPosition() == 3) { ColorBC4 = Colors.White; + ColorBC1 = Colors.Transparent; ColorBC3 = Colors.Transparent; + ColorBC2 = Colors.Transparent; OnPropertyChanged(nameof(ColorBC4)); OnPropertyChanged(nameof(ColorBC3)); } @@ -121,8 +144,31 @@ public partial class Gameboard : ContentPage DisplayAlert("Player switch !", "It's your turn : " + args.Player.NameTag, "<3"); } - private void OnTileClickedP1(object? sender, EventArgs args) + private void OnButtonSwapClicked(object sender, EventArgs e) + { + game.PlaceTileNotified += Game_PlaceTileNotified; + game.SwapTilesNotified += Game_SwapTilesNotified; + + if(game.CellsUsed.Count == 0 && game.PlayerSwapping==false) + { + DisplayAlert("Swap system", "\r\nWelcome to the swap system! To use the system, take the tiles you wish to swap and place them in the bag (you will not see the tiles disappear). Then, click on the skip button. /!\\ Attention, during the swap phase, you cannot play /!\\", "Copy !"); + game.PlayerSwapping = true; + } + + game.SwapTilesNotified -= Game_SwapTilesNotified; + game.PlaceTileNotified -= Game_PlaceTileNotified; + } + + private void Game_SwapTilesNotified(object? sender, SwapTilesNotifiedEventArgs args) { + DisplayAlert("Swap system", args.Reason, "<3"); + } + private void OnDropBag() + { + if (game.PlayerSwapping) + { + tilesSwap.Add(tiledrag!); + } } } \ No newline at end of file diff --git a/Qwirkle/QwirkleViews/Pages/Gameboard.xaml b/Qwirkle/QwirkleViews/Pages/Gameboard.xaml index 10670e3..44e1155 100644 --- a/Qwirkle/QwirkleViews/Pages/Gameboard.xaml +++ b/Qwirkle/QwirkleViews/Pages/Gameboard.xaml @@ -17,7 +17,19 @@ - + + + + + + + + + @@ -38,7 +50,7 @@ - + @@ -122,7 +134,7 @@ DropCommand="{Binding OnDrop, Source={x:Reference root}}" DropCommandParameter="{Binding .}"/> - + diff --git a/Qwirkle/QwirkleViews/Resources/Images/bag.png b/Qwirkle/QwirkleViews/Resources/Images/bag.png new file mode 100644 index 0000000000000000000000000000000000000000..1034fb6b92ee0aa5c1f7a9106bb75e650313ffc3 GIT binary patch literal 45504 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 v0fhm^H6Y;wF8&1n->v`mn*M)KiSZ*Yqv%~od|