public static void SpawnPlayer(int inputMappingIndex) { if (Instance.usedMappings.Contains(inputMappingIndex)) { Debug.Log("This user has already joined the game"); return; } int paletteIndex = -1; for (int i = 0; i < Instance.colorPalettes.Count; i++) { if (!Instance.usedPalettes.Contains(i)) { paletteIndex = i; Instance.usedPalettes.Add(i); break; } } if (paletteIndex < 0) { Debug.Log("No color palettes left"); return; } Instance.usedMappings.Add(inputMappingIndex); Kroken player = GameObject.Instantiate(Instance.krokenPrefab, Vector2.zero, Quaternion.identity); player.Init(Instance.inputMappings[inputMappingIndex], Instance.colorPalettes[paletteIndex]); }
public static void ActivateWinMenu(Kroken player) { canvasManager_ref.DisablePanels(); canvasManager_ref.winText.text = player.GetName().ToUpper() + " WINS!"; canvasManager_ref.winText.color = player.GetColor(); canvasManager_ref.winMenu.SetActive(true); }
public static void AddPlayer(Kroken player) { if (Instance.players.Contains(player)) { Debug.Log("Player already exists"); return; } Instance.players.Add(player); }
public static void RemovePlayer(Kroken player) { if (!Instance.players.Contains(player)) { Debug.Log("This player is not a part of the game"); return; } Instance.usedMappings.Remove(Instance.inputMappings.FindIndex(i => player.inputMapping)); Instance.usedPalettes.Remove(Instance.colorPalettes.FindIndex(i => player.colorPalette)); Instance.players.Remove(player); }
public ResultState(GameManager gameManagerRef, Kroken player) { this.gameManagerRef = gameManagerRef; // gameManagerRef.canvasManagerRef.ToggleVictoryPanel(true, player.GetName(), player.GetColor()); CanvasManager.ActivateWinMenu(player); gameManagerRef.audioManagerRef.StopMusicTrack(); PlayerManager.ClearPlayers(); EnemyManager.StopSpawning(); EnemyManager.ResetSpawner(); }