From 5360b997454bde2fee419eaf8c9be73c4a78a575 Mon Sep 17 00:00:00 2001 From: Damien LAGUERRE Date: Fri, 22 Dec 2023 17:16:18 +0100 Subject: [PATCH] Add number of jocker as game parameter. + Missing input handler for player switch action. --- .../PartyModeTicTacToe/CPartyModeTicTacToe.cs | 12 ++++++------ .../CPartyScreenTicTacToeConfig.cs | 13 ++++++++++++- .../PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs | 4 ++++ 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs index 2ec3499c..6a911fcd 100644 --- a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs +++ b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs @@ -104,6 +104,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe public int NumPlayerTeam1; public int NumPlayerTeam2; public int NumFields; + public int NumJockers; public int Team; public List ProfileIDsTeam1; public List ProfileIDsTeam2; @@ -148,6 +149,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe NumPlayerTeam1 = 2, NumPlayerTeam2 = 2, NumFields = 9, + NumJockers = 1, ProfileIDsTeam1 = new List(), ProfileIDsTeam2 = new List(), CurrentRoundNr = 0, @@ -395,25 +397,23 @@ namespace VocaluxeLib.PartyModes.TicTacToe private void _SetNumJokers() { + + GameData.NumJokerRandom[0] = GameData.NumJockers; + GameData.NumJokerRandom[1] = GameData.NumJockers; + switch (GameData.NumFields) { case 9: - GameData.NumJokerRandom[0] = 1; - GameData.NumJokerRandom[1] = 1; GameData.NumJokerRetry[0] = 0; GameData.NumJokerRetry[1] = 0; break; case 16: - GameData.NumJokerRandom[0] = 2; - GameData.NumJokerRandom[1] = 2; GameData.NumJokerRetry[0] = 1; GameData.NumJokerRetry[1] = 1; break; case 25: - GameData.NumJokerRandom[0] = 3; - GameData.NumJokerRandom[1] = 3; GameData.NumJokerRetry[0] = 2; GameData.NumJokerRetry[1] = 2; break; diff --git a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs index 16fd7836..8e0fdc8a 100644 --- a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs +++ b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs @@ -35,7 +35,9 @@ namespace VocaluxeLib.PartyModes.TicTacToe } private const string _SelectSlideNumFields = "SelectSlideNumFields"; + private const string _SelectSlideNumJockers = "SelectSlideNumJockers"; private const string _SelectSlideRefillJokers = "SelectSlideRefillJokers"; + private const string _SelectSlideNumJokers = "SelectSlideNumJokers"; private const string _SelectSlideSwitchPlayer = "SelectSlideSwitchPlayer"; private const string _ButtonNext = "ButtonNext"; @@ -47,7 +49,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe { base.Init(); - _ThemeSelectSlides = new string[] { _SelectSlideNumFields }; + _ThemeSelectSlides = new string[] { _SelectSlideNumFields, _SelectSlideNumJokers, _SelectSlideRefillJokers, _SelectSlideSwitchPlayer }; _ThemeButtons = new string[] {_ButtonNext, _ButtonBack}; } @@ -132,6 +134,14 @@ namespace VocaluxeLib.PartyModes.TicTacToe _SelectSlides[_SelectSlideNumFields].SelectedTag = _PartyMode.GameData.NumFields; + _SelectSlides[_SelectSlideNumJockers].Clear(); + _SelectSlides[_SelectSlideNumJockers].AddValue(0); + _SelectSlides[_SelectSlideNumJockers].AddValue(1); + _SelectSlides[_SelectSlideNumJockers].AddValue(2); + _SelectSlides[_SelectSlideNumJockers].AddValue(3); + + _SelectSlides[_SelectSlideNumJockers].SelectedTag = _PartyMode.GameData.NumJockers; + _SelectSlides[_SelectSlideRefillJokers].AddValues(Enum.GetNames(typeof(EOffOn))); _SelectSlides[_SelectSlideRefillJokers].Selection = (int)_PartyMode.GameData.RefillJokers; @@ -142,6 +152,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe private void _UpdateSlides() { _PartyMode.GameData.NumFields = _SelectSlides[_SelectSlideNumFields].SelectedTag; + _PartyMode.GameData.NumJockers = _SelectSlides[_SelectSlideNumJockers].Selection; _PartyMode.GameData.RefillJokers = (EOffOn)_SelectSlides[_SelectSlideRefillJokers].Selection; _PartyMode.GameData.SwitchPlayer = (EOffOn)_SelectSlides[_SelectSlideSwitchPlayer].Selection; } diff --git a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs index 72f46d68..b52671e1 100644 --- a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs +++ b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs @@ -187,6 +187,10 @@ namespace VocaluxeLib.PartyModes.TicTacToe _UseJoker(0, 1); if (_Buttons[_ButtonJokerRetryT2].Selected) _UseJoker(1, 1); + if (_Buttons[_ButtonSwitchPlayerT1].Selected) + _ChangePlayer(0, true); + if (_Buttons[_ButtonSwitchPlayerT2].Selected) + _ChangePlayer(1, true); } } else