Esempio n. 1
0
    public void Init(ScoreReport.ScoreReportData scoreReportData, List <Pawn> acquiredPawns, string stageName)
    {
        this.scoreReportData = scoreReportData;
        this.acquiredPawns   = acquiredPawns;

        stageNameText.text = stageName;
        InitScoreReportView();
    }
Esempio n. 2
0
    private IEnumerator GameOverUIRoutine(ScoreReport.ScoreReportData data)
    {
        yield return(new WaitForSeconds(1f));

        gameUI.SetActive(false);
        gameOverUI.SetActive(true);
        scorePanel.moneyText.text.text   = data.money.ToString();
        scorePanel.moneyEarned.text.text = data.moneyEarned.ToString();
        scorePanel.soulsText.text.text   = data.souls.ToString();
        scorePanel.soulsEarned.text.text = data.soulsEarned.ToString();

        yield return(new WaitForSeconds(0.5f));

        scorePanel.ReportScore(data);
    }
    private void UpdateData()
    {
        ScoreReport.ScoreReportData data = new ScoreReport.ScoreReportData(
            enemiesDefeated:        enemyManager.enemiesKilled,
            wavesSurvived:          Mathf.Max(enemyManager.waveNumber - 1, 0),
            maxCombo:                       player.hero.maxCombo,
            money:                          gm.wallet.money,
            moneyEarned:            moneyEarned,
            souls:                          gm.wallet.souls,
            soulsEarned:            soulsEarned
            );

        gui.gameOverUI.SetActive(true);
        losePanel.Init(data, acquiredPawns, gm.GetStage(gm.selectedSeriesIndex, gm.selectedStageIndex).stageName);

        if (enemyManager.isStageComplete)
        {
            if (OnStageCompleted != null)
            {
                OnStageCompleted();
            }
            if (IsPlayerOnLatestStage())
            {
                gm.UnlockNextStage();
            }
        }

        gm.saveGame.pawnWallet.RemovePawn(gm.selectedPawn.id);
        foreach (Pawn pawn in acquiredPawns)
        {
            gm.saveGame.pawnWallet.AddPawn(pawn);
        }

        int enemiesDefeated = enemyManager.enemiesKilled;
        int wavesSurvived   = enemyManager.waveNumber;
        int maxCombo        = player.hero.maxCombo;

        gm.wallet.AddMoney(moneyEarned);
        gm.wallet.AddSouls(soulsEarned);
        gm.UpdateScores(enemiesDefeated, wavesSurvived, maxCombo);
    }
Esempio n. 4
0
 public void GameOverUI(ScoreReport.ScoreReportData data)
 {
     StartCoroutine(GameOverUIRoutine(data));
 }