public LevelData()
    {
        KindleRun run = new KindleRun(999, 0);

        kindleHistory = new List <KindleRun> {
            run
        };
        bestKindle = run;
    }
 public void AddRun(KindleRun run)
 {
     kindleHistory.Add(run);
     if (run.time < bestKindle.time)
     {
         bestKindle.time = run.time;
     }
     if (run.kindleLevel > bestKindle.kindleLevel)
     {
         bestKindle.kindleLevel = run.kindleLevel;
     }
 }
Beispiel #3
0
 public void AddRunData(int id, KindleRun run)
 {
     saveData.levelData[id].AddRun(run);
 }
    public void LevelComplete()
    {
        levelCompleted = true;   //set the control bool to true

        //currently finished time
        finishedTime = currentTime;
        levelCompleteTextController.UpdateLevelName(level.title);
        levelCompleteTextController.UpdateFinishedTimer(finishedTime.ToString(""));
        levelCompleteTextController.UpdateFinishedTimer(finishedTime.ToString("F2")); //make/update the timer with our formatted variable

        //currently finished kindle level
        if (finishedTime <= level.developerKindledTime)
        {
            finishedKindleLevel = 5;
        }
        else if (finishedTime <= level.eternalKindledTime)
        {
            finishedKindleLevel = 4;
        }
        else if (finishedTime <= level.strongKindledTime)
        {
            finishedKindleLevel = 3;
        }
        else if (finishedTime <= level.normalKindledTime)
        {
            finishedKindleLevel = 2;
        }
        else if (finishedTime <= level.weakKindledTime)
        {
            finishedKindleLevel = 1;
        }
        else
        {
            finishedKindleLevel = 0;
        }
        CompleteSoulflameController.KindleLevel(finishedKindleLevel);
        CompleteSoulflameTextController.KindleLevel(finishedKindleLevel);

        KindleRun finishedRun = new KindleRun(finishedTime, finishedKindleLevel);

        SaveDataManager.current.saveData.levelData[level.levelNumber].AddRun(finishedRun);

        //best kindle
        if (finishedTime < bestTime)
        {
            bestTime = finishedTime;
            CompleteSoulflameTextController.NewBest();
        }
        if (finishedKindleLevel > bestKindleLevel)
        {
            soulFlameTotal += finishedKindleLevel - bestKindleLevel;
            bestKindleLevel = finishedKindleLevel;
            //kindle upgrade animation / sound
        }
        BestKindleController.KindleLevel(bestKindleLevel);
        levelCompleteTextController.UpdateBestKindleTime(bestTime.ToString("F2"));


        //next kindle goal
        NextKindleController.KindleLevel(bestKindleLevel);
        levelCompleteTextController.UpdateNextKindleTime(NextKindleTime(bestKindleLevel));

        //total kindles
        levelCompleteTextController.UpdateTotalSoulflames(soulFlameTotal.ToString("0"));
        SaveDataManager.current.saveData.playerData.playerSoulFlameTotal = soulFlameTotal;
        SaveDataManager.current.SaveData();

        levelCompleteTextController.UpdateLevelNumber((level.levelNumber + 1).ToString()
                                                      + " / " + (SceneManager.sceneCountInBuildSettings - 1).ToString());

        highscoreTableControl.Activate();

        ingameUI.SetActive(false);
        completeUI.SetActive(true);
    }