public override void InitPointsUI() { if (GameController.Instance != null && MinigameController.Instance != null) { PointSystem gameControllerPointsystem = new PointSystem(); if (IsPointsBased) { gameControllerPointsystem.InitializePlayers(GameController.Instance.Players); } else { gameControllerPointsystem = GameController.Instance.PointSystem; } var minigameControllerPointSystem = MinigameController.Instance.MinigamePointSystem; foreach (var item in GameController.Instance.Players) { PlayerScore ps = Instantiate(playerScorePrefab, transform); playerScores.Add(ps); ps.Player = item; ps.PlayerImage.sprite = playerSprites[item.ID]; ps.UpdatePoints(gameControllerPointsystem.GetCurrentScore()[item], minigameControllerPointSystem.GetCurrentScore()[item]); } UpdatePlacements(); if (!IsPointsBased) { GameController.Instance.PointSystem.UpdateScore(minigameControllerPointSystem.GetCurrentScore()); } StartCoroutine("UpdatePlacement"); } }
private void StartGame(BaseEventInfo e) { var sortedList = SortByAscending(GameController.Instance.PointSystem.GetCurrentScore()); PointSystem pointSystem = new PointSystem(); pointSystem.InitializePlayers(GameController.Instance.Players); KeyValuePair <Player, int> previousScore = new KeyValuePair <Player, int>(new Player(), int.MinValue); int leadMultiplier = 1; foreach (var item in sortedList) { if (item.Value == previousScore.Value) { pointSystem.GetCurrentScore()[item.Key] = pointSystem.GetCurrentScore()[previousScore.Key]; } else { pointSystem.GetCurrentScore()[item.Key] = leadMultiplier; } leadMultiplier++; previousScore = item; } pinataSpawner.GetComponent <FinalePinataSection>().InitPinataSection(pointSystem); }
public void InitPointSystem() { PointSystem.InitializePlayers(Players); }