diff --git a/Output/PartyModes/TicTacToe/Languages/English.xml b/Output/PartyModes/TicTacToe/Languages/English.xml
index 0066f864..49e44511 100644
--- a/Output/PartyModes/TicTacToe/Languages/English.xml
+++ b/Output/PartyModes/TicTacToe/Languages/English.xml
@@ -17,7 +17,9 @@
Number of players in team 1
Number of players in team 2
Number of fields
- Refill jokers every round
+ Refill jokers every round
+ Number of jokers
+ Switch player
Tic-Tac-Toe: Choose Player
Selected players for this team:
Team 1
diff --git a/Output/PartyModes/TicTacToe/Languages/French.xml b/Output/PartyModes/TicTacToe/Languages/French.xml
index 67f9cd54..73413bae 100644
--- a/Output/PartyModes/TicTacToe/Languages/French.xml
+++ b/Output/PartyModes/TicTacToe/Languages/French.xml
@@ -18,6 +18,8 @@
Nombre de joueurs dans l'Equipe 2
Nombre de champs
Recharger les jokers a chaque tour
+ Nombre de jokers
+ Changement de joueur
Tic-Tac-Toe: Choix des joueurs
Equipe 1
Equipe 2
diff --git a/Output/PartyModes/TicTacToe/Themes/Default/Screens/PartyScreenTicTacToeConfig.xml b/Output/PartyModes/TicTacToe/Themes/Default/Screens/PartyScreenTicTacToeConfig.xml
index a5ad9fa9..c879b56a 100644
--- a/Output/PartyModes/TicTacToe/Themes/Default/Screens/PartyScreenTicTacToeConfig.xml
+++ b/Output/PartyModes/TicTacToe/Themes/Default/Screens/PartyScreenTicTacToeConfig.xml
@@ -2,7 +2,7 @@
PartyScreenTicTacToeConfig
- 2
+ 3
@@ -55,7 +55,7 @@
Outline
TR_SCREENCONFIG_NUMFIELDS
-
+
75
165
0
@@ -67,8 +67,36 @@
Center
Outline
+ TR_SCREENCONFIG_NUMJOKERS
+
+
+ 75
+ 225
+ 0
+ 27
+ 0
+
+
+ Left
+ Center
+
+ Outline
TR_SCREENCONFIG_REFILLJOKERS
+
+ 75
+ 285
+ 0
+ 27
+ 0
+
+
+ Left
+ Center
+
+ Outline
+ TR_SCREENCONFIG_SWITCH_PLAYER
+
+
+
diff --git a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs
index 321586c9..6a911fcd 100644
--- a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs
+++ b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs
@@ -104,11 +104,10 @@ 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;
- public List PlayerTeam1;
- public List PlayerTeam2;
public ESongSource SongSource;
public ESongSorting Sorting;
@@ -127,6 +126,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
public int[] NumJokerRandom;
public int[] NumJokerRetry;
public EOffOn RefillJokers;
+ public EOffOn SwitchPlayer;
}
public SData GameData;
@@ -149,10 +149,9 @@ namespace VocaluxeLib.PartyModes.TicTacToe
NumPlayerTeam1 = 2,
NumPlayerTeam2 = 2,
NumFields = 9,
+ NumJockers = 1,
ProfileIDsTeam1 = new List(),
ProfileIDsTeam2 = new List(),
- PlayerTeam1 = new List(),
- PlayerTeam2 = new List(),
CurrentRoundNr = 0,
FieldNr = 0,
Sorting = CBase.Config.GetSongSorting(),
@@ -183,8 +182,6 @@ namespace VocaluxeLib.PartyModes.TicTacToe
GameData.Songs.Clear();
GameData.Rounds.Clear();
- GameData.PlayerTeam1.Clear();
- GameData.PlayerTeam2.Clear();
}
public override bool Init()
@@ -247,7 +244,6 @@ namespace VocaluxeLib.PartyModes.TicTacToe
GameData.CurrentRoundNr = 1;
_CreateRounds();
_SetNumJokers();
- _PreparePlayerList(0);
break;
case EStage.Main:
_Stage = EStage.Singing;
@@ -256,7 +252,6 @@ namespace VocaluxeLib.PartyModes.TicTacToe
case EStage.Singing:
_Stage = EStage.Main;
GameData.Team = GameData.Team == 1 ? 0 : 1;
- _UpdatePlayerList();
if (GameData.RefillJokers == EOffOn.TR_CONFIG_ON)
_SetNumJokers();
break;
@@ -337,101 +332,6 @@ namespace VocaluxeLib.PartyModes.TicTacToe
}
}
- private void _PreparePlayerList(int team)
- {
- switch (team)
- {
- case 0:
- {
- GameData.PlayerTeam1 = new List();
- GameData.PlayerTeam2 = new List();
-
- //Prepare Player-IDs
- var ids1 = new List();
- var ids2 = new List();
- //Add IDs to team-list
- while (GameData.PlayerTeam1.Count < GameData.NumFields + GameData.NumJokerRetry[0] &&
- GameData.PlayerTeam2.Count < GameData.NumFields + GameData.NumJokerRetry[1])
- {
- if (ids1.Count == 0)
- {
- for (int i = 0; i < GameData.NumPlayerTeam1; i++)
- ids1.Add(i);
- }
- if (ids2.Count == 0)
- {
- for (int i = 0; i < GameData.NumPlayerTeam2; i++)
- ids2.Add(i);
- }
- int num;
- if (GameData.PlayerTeam1.Count < GameData.NumFields + GameData.NumJokerRetry[0])
- {
- num = CBase.Game.GetRandom(ids1.Count);
- if (num >= ids1.Count)
- num = ids1.Count - 1;
- GameData.PlayerTeam1.Add(ids1[num]);
- ids1.RemoveAt(num);
- }
- if (GameData.PlayerTeam2.Count < GameData.NumFields + GameData.NumJokerRetry[1])
- {
- num = CBase.Game.GetRandom(ids2.Count);
- if (num >= ids2.Count)
- num = ids2.Count - 1;
- GameData.PlayerTeam2.Add(ids2[num]);
- ids2.RemoveAt(num);
- }
- }
- }
- break;
- case 1:
- {
- //Prepare Player-IDs
- var ids = new List();
- //Add IDs to team-list
- while (GameData.PlayerTeam1.Count < GameData.NumFields + GameData.NumJokerRetry[0] && ids.Count == 0)
- {
- if (ids.Count == 0)
- {
- for (int i = 0; i < GameData.NumPlayerTeam1; i++)
- ids.Add(i);
- }
- if (GameData.PlayerTeam1.Count < GameData.NumFields + GameData.NumJokerRetry[0])
- {
- int num = CBase.Game.GetRandom(ids.Count);
- if (num >= ids.Count)
- num = ids.Count - 1;
- GameData.PlayerTeam1.Add(ids[num]);
- ids.RemoveAt(num);
- }
- }
- }
- break;
- case 2:
- {
- //Prepare Player-IDs
- var ids = new List();
- //Add IDs to team-list
- while (GameData.PlayerTeam2.Count < GameData.NumFields + GameData.NumJokerRetry[1] && ids.Count == 0)
- {
- if (ids.Count == 0)
- {
- for (int i = 0; i < GameData.NumPlayerTeam2; i++)
- ids.Add(i);
- }
- if (GameData.PlayerTeam2.Count < GameData.NumFields + GameData.NumJokerRetry[1])
- {
- int num = CBase.Game.GetRandom(ids.Count);
- if (num >= ids.Count)
- num = ids.Count - 1;
- GameData.PlayerTeam2.Add(ids[num]);
- ids.RemoveAt(num);
- }
- }
- }
- break;
- }
- }
-
public void UpdateSongList()
{
if (GameData.Songs.Count > 0)
@@ -465,14 +365,6 @@ namespace VocaluxeLib.PartyModes.TicTacToe
GameData.Songs.Shuffle();
}
- private void _UpdatePlayerList()
- {
- if (GameData.PlayerTeam1.Count == 0)
- _PreparePlayerList(1);
- if (GameData.PlayerTeam2.Count == 0)
- _PreparePlayerList(2);
- }
-
private void _StartRound(int roundNr)
{
CBase.Game.Reset();
@@ -505,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 640fffbf..0d68bb52 100644
--- a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs
+++ b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeConfig.cs
@@ -26,16 +26,19 @@ namespace VocaluxeLib.PartyModes.TicTacToe
{
// ReSharper disable UnusedMember.Global
public class CPartyScreenTicTacToeConfig : CPartyScreenTicTacToe
- // ReSharper restore UnusedMember.Global
+ // ReSharper restore UnusedMember.Global
{
// Version number for theme files. Increment it, if you've changed something on the theme files!
protected override int _ScreenVersion
{
- get { return 2; }
+ get { return 3; }
}
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";
private const string _ButtonBack = "ButtonBack";
@@ -46,15 +49,15 @@ namespace VocaluxeLib.PartyModes.TicTacToe
{
base.Init();
- _ThemeSelectSlides = new string[] { _SelectSlideNumFields };
- _ThemeButtons = new string[] {_ButtonNext, _ButtonBack};
+ _ThemeSelectSlides = new string[] { _SelectSlideNumFields, _SelectSlideNumJokers, _SelectSlideRefillJokers, _SelectSlideSwitchPlayer };
+ _ThemeButtons = new string[] { _ButtonNext, _ButtonBack };
}
public override bool HandleInput(SKeyEvent keyEvent)
{
base.HandleInput(keyEvent);
- if (keyEvent.KeyPressed) {}
+ if (keyEvent.KeyPressed) { }
else
{
switch (keyEvent.Key)
@@ -131,14 +134,25 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_SelectSlides[_SelectSlideNumFields].SelectedTag = _PartyMode.GameData.NumFields;
+ _SelectSlides[_SelectSlideNumJockers].Clear();
+ for (int i = 0; i <= 3; i++)
+ _SelectSlides[_SelectSlideNumJockers].AddValue(i);
+
+ _SelectSlides[_SelectSlideNumJockers].SelectedTag = _PartyMode.GameData.NumJockers;
+
_SelectSlides[_SelectSlideRefillJokers].AddValues(Enum.GetNames(typeof(EOffOn)));
_SelectSlides[_SelectSlideRefillJokers].Selection = (int)_PartyMode.GameData.RefillJokers;
+
+ _SelectSlides[_SelectSlideSwitchPlayer].AddValues(Enum.GetNames(typeof(EOffOn)));
+ _SelectSlides[_SelectSlideSwitchPlayer].Selection = (int)_PartyMode.GameData.SwitchPlayer;
}
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;
}
}
}
\ No newline at end of file
diff --git a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs
index a2722ed4..9f04452d 100644
--- a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs
+++ b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeMain.cs
@@ -17,6 +17,7 @@
using System;
using System.Collections.Generic;
+using System.Linq;
using System.Windows.Forms;
using VocaluxeLib.Menu;
using VocaluxeLib.Songs;
@@ -33,7 +34,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
// ReSharper disable UnusedMember.Global
public class CPartyScreenTicTacToeMain : CPartyScreenTicTacToe
- // ReSharper restore UnusedMember.Global
+ // ReSharper restore UnusedMember.Global
{
// Version number for theme files. Increment it, if you've changed something on the theme files!
protected override int _ScreenVersion
@@ -60,6 +61,8 @@ namespace VocaluxeLib.PartyModes.TicTacToe
private const string _ButtonJokerRandomT2 = "ButtonJokerRandomT2";
private const string _ButtonJokerRetryT1 = "ButtonJokerRetryT1";
private const string _ButtonJokerRetryT2 = "ButtonJokerRetryT2";
+ private const string _ButtonSwitchPlayerT1 = "ButtonSwitchPlayerT1";
+ private const string _ButtonSwitchPlayerT2 = "ButtonSwitchPlayerT2";
private const string _StaticPopupBG = "StaticPopupBG";
private const string _StaticAvatarT1 = "StaticAvatarT1";
@@ -78,6 +81,12 @@ namespace VocaluxeLib.PartyModes.TicTacToe
private const int _FieldSpace = 10;
private float _FieldSize = 100;
+ private int idPlayer1 = 0;
+ private int idPlayer2 = 0;
+
+ private static readonly Random random = new Random();
+ private static readonly object syncLock = new object();
+
private int _OldSelectedField = -1;
private int[,] _Possibilities;
@@ -92,9 +101,9 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_ThemeButtons = new string[]
{
_ButtonNextRound, _ButtonBack, _ButtonExit, _ButtonPopupYes, _ButtonPopupNo, _ButtonField, _ButtonJokerRandomT1, _ButtonJokerRandomT2, _ButtonJokerRetryT1,
- _ButtonJokerRetryT2
+ _ButtonJokerRetryT2, _ButtonSwitchPlayerT1, _ButtonSwitchPlayerT2
};
- _ThemeStatics = new string[] {_StaticPopupBG, _StaticAvatarT1, _StaticAvatarT2, _StaticTeam1, _StaticTeam2};
+ _ThemeStatics = new string[] { _StaticPopupBG, _StaticAvatarT1, _StaticAvatarT2, _StaticTeam1, _StaticTeam2 };
var texts = new List();
texts.AddRange(_EqualizerTeam);
@@ -116,7 +125,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
{
base.HandleInput(keyEvent);
- if (keyEvent.KeyPressed) {}
+ if (keyEvent.KeyPressed) { }
else
{
switch (keyEvent.Key)
@@ -178,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
@@ -243,6 +256,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
@@ -269,7 +286,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_ShowPopup(false);
}
- if (mouseEvent.Wheel != 0) {}
+ if (mouseEvent.Wheel != 0) { }
return true;
}
@@ -323,6 +340,8 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_Buttons[_ButtonJokerRandomT2].Visible = false;
_Buttons[_ButtonJokerRetryT1].Visible = false;
_Buttons[_ButtonJokerRetryT2].Visible = false;
+ _Buttons[_ButtonSwitchPlayerT1].Visible = false;
+ _Buttons[_ButtonSwitchPlayerT2].Visible = false;
_Buttons[_ButtonNextRound].Visible = false;
_Texts[_TextFinishMessage].Visible = false;
}
@@ -357,9 +376,9 @@ namespace VocaluxeLib.PartyModes.TicTacToe
for (int i = 0; i < 2; i++)
{
CBase.Record.AnalyzeBuffer(i);
- _Equalizers["EqualizerTeam" + (i+1)].Update(CBase.Record.ToneWeigth(i), CBase.Record.GetMaxVolume(i));
+ _Equalizers["EqualizerTeam" + (i + 1)].Update(CBase.Record.ToneWeigth(i), CBase.Record.GetMaxVolume(i));
}
-
+
return true;
}
@@ -453,38 +472,22 @@ namespace VocaluxeLib.PartyModes.TicTacToe
{
if (!jokerUsed)
{
- int singerTeam1 = 0;
- int singerTeam2 = 0;
-
- if (_PartyMode.GameData.PlayerTeam1.Count > 0)
- {
- singerTeam1 = _PartyMode.GameData.PlayerTeam1[0];
- _PartyMode.GameData.PlayerTeam1.RemoveAt(0);
- }
-
- if (_PartyMode.GameData.PlayerTeam2.Count > 0)
- {
- singerTeam2 = _PartyMode.GameData.PlayerTeam2[0];
- _PartyMode.GameData.PlayerTeam2.RemoveAt(0);
- }
- _PartyMode.GameData.Rounds[_PartyMode.GameData.FieldNr].SingerTeam1 = singerTeam1;
- _PartyMode.GameData.Rounds[_PartyMode.GameData.FieldNr].SingerTeam2 = singerTeam2;
-
- _UpdatePlayerInformation();
+ _ChangePlayer();
}
_PartyMode.UpdateSongList();
int[] songIDs = new int[_PartyMode.GameData.GameMode == EGameMode.TR_GAMEMODE_MEDLEY ? _PartyMode.GameData.NumMedleySongs : 1];
- for(int i = 0; i < songIDs.Length; i++)
+ for (int i = 0; i < songIDs.Length; i++)
{
songIDs[i] = _PartyMode.GameData.Songs[0];
_PartyMode.GameData.Songs.RemoveAt(0);
- }
+ }
_StartPreview(songIDs[0]);
_Status = EStatus.FieldSelected;
_PartyMode.GameData.Rounds[_PartyMode.GameData.FieldNr].SongIDs = songIDs;
_UpdateFieldContents();
_UpdateJokerButtons();
+ _UpdateSwitchPlayerButtons();
_Buttons[_ButtonNextRound].Visible = true;
_Buttons[_ButtonExit].Visible = true;
@@ -519,6 +522,49 @@ namespace VocaluxeLib.PartyModes.TicTacToe
CBase.BackgroundMusic.LoadPreview(song);
}
+ private int _GetRamdom(int max)
+ {
+ lock (syncLock)
+ {
+ return random.Next(max+1);
+ }
+ }
+
+ private void _ChangePlayer(int teamNr = -1, bool next = false)
+ {
+
+ if (_PartyMode.GameData.ProfileIDsTeam1.Count > 0 && (teamNr == 0 || teamNr == -1))
+ {
+ idPlayer1 = _GetTeamPlayer(idPlayer1, _PartyMode.GameData.ProfileIDsTeam1.Count, next);
+ _PartyMode.GameData.Rounds[_PartyMode.GameData.FieldNr].SingerTeam1 = idPlayer1;
+ }
+
+ if (_PartyMode.GameData.ProfileIDsTeam2.Count > 0 && (teamNr == 1 || teamNr == -1))
+ {
+ idPlayer2 = _GetTeamPlayer(idPlayer2, _PartyMode.GameData.ProfileIDsTeam2.Count, next);
+ _PartyMode.GameData.Rounds[_PartyMode.GameData.FieldNr].SingerTeam2 = idPlayer2;
+ }
+
+ _UpdatePlayerInformation();
+ }
+
+ private int _GetTeamPlayer(int idPlayer, int teamCount, bool next)
+ {
+ if (next)
+ {
+ idPlayer++;
+ if (idPlayer >= _PartyMode.GameData.ProfileIDsTeam1.Count)
+ {
+ idPlayer = 0;
+ }
+ }
+ else
+ {
+ idPlayer = _GetRamdom(_PartyMode.GameData.ProfileIDsTeam1.Count - 1);
+ }
+ return idPlayer;
+ }
+
private void _UpdatePlayerInformation()
{
_Texts[_TextNextPlayerT1].Visible = true;
@@ -543,7 +589,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
{
switch (jokerNum)
{
- //Random-Joker
+ //Random-Joker
case 0:
if (_PartyMode.GameData.NumJokerRandom[teamNr] > 0)
{
@@ -552,7 +598,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
}
break;
- //Retry-Joker
+ //Retry-Joker
case 1:
if (_PartyMode.GameData.NumJokerRetry[teamNr] > 0 && _PartyMode.GameData.CurrentRoundNr > 1)
{
@@ -596,6 +642,16 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_Buttons[_ButtonJokerRetryT2].Selectable = _PartyMode.GameData.NumJokerRetry[1] > 0 && _PartyMode.GameData.CurrentRoundNr > 1;
}
+ private void _UpdateSwitchPlayerButtons()
+ {
+ if (_PartyMode.GameData.SwitchPlayer == EOffOn.TR_CONFIG_ON)
+ {
+ _Buttons[_ButtonSwitchPlayerT1].Visible = true;
+ _Buttons[_ButtonSwitchPlayerT2].Visible = true;
+ }
+
+ }
+
private void _NextRound()
{
_PartyMode.Next();
@@ -627,7 +683,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe
private void _BuildWinnerPossibilities()
{
var numOneRow = (int)Math.Sqrt(_PartyMode.GameData.NumFields);
- _Possibilities = new int[(numOneRow * 2) + 2,numOneRow];
+ _Possibilities = new int[(numOneRow * 2) + 2, numOneRow];
for (int i = 0; i < _Possibilities.GetLength(0); i++)
{
if (i < numOneRow)
diff --git a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeNames.cs b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeNames.cs
index 49241507..875000e7 100644
--- a/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeNames.cs
+++ b/PartyModes/PartyModeTicTacToe/CPartyScreenTicTacToeNames.cs
@@ -17,6 +17,7 @@
using System;
using System.Collections.Generic;
+using System.Linq;
using VocaluxeLib.Menu;
namespace VocaluxeLib.PartyModes.TicTacToe
@@ -76,11 +77,9 @@ namespace VocaluxeLib.PartyModes.TicTacToe
_PartyMode.GameData.ProfileIDsTeam1 = _TeamList[0];
_PartyMode.GameData.ProfileIDsTeam2 = _TeamList[1];
}
- if (_NumPlayerTeams.Length == 2)
- {
- _PartyMode.GameData.NumPlayerTeam1 = _NumPlayerTeams[0];
- _PartyMode.GameData.NumPlayerTeam2 = _NumPlayerTeams[1];
- }
+ _PartyMode.GameData.NumPlayerTeam1 = _PartyMode.GameData.ProfileIDsTeam1.Count;
+ _PartyMode.GameData.NumPlayerTeam2 = _PartyMode.GameData.ProfileIDsTeam2.Count;
+
_PartyMode.Next();
}
}
diff --git a/Vocaluxe/Website/img/addPlaylist.png b/Vocaluxe/Website/img/addPlaylist.png
index acdfe91c..e7fc93ab 100644
Binary files a/Vocaluxe/Website/img/addPlaylist.png and b/Vocaluxe/Website/img/addPlaylist.png differ
diff --git a/Vocaluxe/Website/img/admin.png b/Vocaluxe/Website/img/admin.png
index d13ecdd6..9919e6d6 100644
Binary files a/Vocaluxe/Website/img/admin.png and b/Vocaluxe/Website/img/admin.png differ
diff --git a/Vocaluxe/Website/img/keyboard.png b/Vocaluxe/Website/img/keyboard.png
index 4c1fc687..7d13c796 100644
Binary files a/Vocaluxe/Website/img/keyboard.png and b/Vocaluxe/Website/img/keyboard.png differ
diff --git a/Vocaluxe/Website/img/license.txt b/Vocaluxe/Website/img/license.txt
new file mode 100644
index 00000000..b2321349
--- /dev/null
+++ b/Vocaluxe/Website/img/license.txt
@@ -0,0 +1,5 @@
+100% royalty-free icons from flaticons.net
+
+https://flaticons.net
+
+For: personal, commercial use, without attribution
\ No newline at end of file
diff --git a/Vocaluxe/Website/img/logout.png b/Vocaluxe/Website/img/logout.png
index 28480926..68c7876c 100644
Binary files a/Vocaluxe/Website/img/logout.png and b/Vocaluxe/Website/img/logout.png differ
diff --git a/Vocaluxe/Website/img/music.png b/Vocaluxe/Website/img/music.png
index 3c4d28fd..2d068da7 100644
Binary files a/Vocaluxe/Website/img/music.png and b/Vocaluxe/Website/img/music.png differ
diff --git a/Vocaluxe/Website/img/noCover.png b/Vocaluxe/Website/img/noCover.png
index d57d9e73..4df4d9b8 100644
Binary files a/Vocaluxe/Website/img/noCover.png and b/Vocaluxe/Website/img/noCover.png differ
diff --git a/Vocaluxe/Website/img/original icons/addPlaylist.png b/Vocaluxe/Website/img/original icons/addPlaylist.png
new file mode 100644
index 00000000..acdfe91c
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/addPlaylist.png differ
diff --git a/Vocaluxe/Website/img/original icons/admin.png b/Vocaluxe/Website/img/original icons/admin.png
new file mode 100644
index 00000000..d13ecdd6
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/admin.png differ
diff --git a/Vocaluxe/Website/img/original icons/keyboard.png b/Vocaluxe/Website/img/original icons/keyboard.png
new file mode 100644
index 00000000..4c1fc687
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/keyboard.png differ
diff --git a/Vocaluxe/Website/img/original icons/logout.png b/Vocaluxe/Website/img/original icons/logout.png
new file mode 100644
index 00000000..28480926
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/logout.png differ
diff --git a/Vocaluxe/Website/img/original icons/music.png b/Vocaluxe/Website/img/original icons/music.png
new file mode 100644
index 00000000..3c4d28fd
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/music.png differ
diff --git a/Vocaluxe/Website/img/original icons/noCover.png b/Vocaluxe/Website/img/original icons/noCover.png
new file mode 100644
index 00000000..d57d9e73
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/noCover.png differ
diff --git a/Vocaluxe/Website/img/original icons/photo.png b/Vocaluxe/Website/img/original icons/photo.png
new file mode 100644
index 00000000..d0550339
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/photo.png differ
diff --git a/Vocaluxe/Website/img/original icons/playlist.png b/Vocaluxe/Website/img/original icons/playlist.png
new file mode 100644
index 00000000..370a115e
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/playlist.png differ
diff --git a/Vocaluxe/Website/img/original icons/playlists.png b/Vocaluxe/Website/img/original icons/playlists.png
new file mode 100644
index 00000000..d259e728
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/playlists.png differ
diff --git a/Vocaluxe/Website/img/original icons/profile.png b/Vocaluxe/Website/img/original icons/profile.png
new file mode 100644
index 00000000..ba12a407
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/profile.png differ
diff --git a/Vocaluxe/Website/img/original icons/profiles.png b/Vocaluxe/Website/img/original icons/profiles.png
new file mode 100644
index 00000000..dc385bda
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/profiles.png differ
diff --git a/Vocaluxe/Website/img/original icons/spotify.png b/Vocaluxe/Website/img/original icons/spotify.png
new file mode 100644
index 00000000..0be1cd79
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/spotify.png differ
diff --git a/Vocaluxe/Website/img/original icons/wikipedia.png b/Vocaluxe/Website/img/original icons/wikipedia.png
new file mode 100644
index 00000000..52f87393
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/wikipedia.png differ
diff --git a/Vocaluxe/Website/img/original icons/youtube.png b/Vocaluxe/Website/img/original icons/youtube.png
new file mode 100644
index 00000000..0241b05f
Binary files /dev/null and b/Vocaluxe/Website/img/original icons/youtube.png differ
diff --git a/Vocaluxe/Website/img/photo.png b/Vocaluxe/Website/img/photo.png
index d0550339..37cfec10 100644
Binary files a/Vocaluxe/Website/img/photo.png and b/Vocaluxe/Website/img/photo.png differ
diff --git a/Vocaluxe/Website/img/playlist.png b/Vocaluxe/Website/img/playlist.png
index 370a115e..fa1c0910 100644
Binary files a/Vocaluxe/Website/img/playlist.png and b/Vocaluxe/Website/img/playlist.png differ
diff --git a/Vocaluxe/Website/img/playlists.png b/Vocaluxe/Website/img/playlists.png
index d259e728..914f2bf4 100644
Binary files a/Vocaluxe/Website/img/playlists.png and b/Vocaluxe/Website/img/playlists.png differ
diff --git a/Vocaluxe/Website/img/profile.png b/Vocaluxe/Website/img/profile.png
index ba12a407..06ab7e03 100644
Binary files a/Vocaluxe/Website/img/profile.png and b/Vocaluxe/Website/img/profile.png differ
diff --git a/Vocaluxe/Website/img/profiles.png b/Vocaluxe/Website/img/profiles.png
index dc385bda..f1960f5d 100644
Binary files a/Vocaluxe/Website/img/profiles.png and b/Vocaluxe/Website/img/profiles.png differ
diff --git a/Vocaluxe/Website/img/spotify.png b/Vocaluxe/Website/img/spotify.png
index 0be1cd79..d259a3a8 100644
Binary files a/Vocaluxe/Website/img/spotify.png and b/Vocaluxe/Website/img/spotify.png differ
diff --git a/Vocaluxe/Website/img/youtube.png b/Vocaluxe/Website/img/youtube.png
index 0241b05f..d720a717 100644
Binary files a/Vocaluxe/Website/img/youtube.png and b/Vocaluxe/Website/img/youtube.png differ
diff --git a/appveyor.yml b/appveyor.yml
index 09628aa4..0a3fe02e 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -77,6 +77,7 @@ before_build:
SonarScanner.MSBuild.exe begin `
/k:"Vocaluxe" `
/o:"vocaluxe" `
+ /d:sonar.exclusions="Vocaluxe/Website/**/*" `
/d:sonar.host.url="https://sonarcloud.io" `
/v:"$Env:GIT_VERSION_TAG" `
/d:sonar.token="$Env:SonarQubeToken" `