Example #1
0
    void Minigame_Off(MinigameCtrl inControl)
    {
        m_NextMinigame.OnClose -= Minigame_Off;

        Camera.main.GetComponent <Animator>().SetTrigger("camIn");

        if (onCtrlOff != null)
        {
            onCtrlOff();
        }
    }
Example #2
0
    private void CalculateNextMinigame()
    {
        Level currentLevel = Session.instance.currentLevel;
        Level nextLevel    = Session.instance.PeekNextLevel();

        bool bOnMinigameInterval     = Session.instance.numLevelsCompleted > 0 && (Session.instance.numLevelsCompleted % ExpressionMinigameInterval) == 0;
        bool bOnNestMinigameInterval = bOnMinigameInterval && (Session.instance.numLevelsCompleted % (ExpressionMinigameInterval * NestMinigameInterval)) == 0;

        bool bShowNestMinigame = currentLevel.showNestMinigame != Level.MinigameTiming.Block && nextLevel.showNestMinigame != Level.MinigameTiming.Block;

        if (bShowNestMinigame)
        {
            if (currentLevel.showNestMinigame == Level.MinigameTiming.After || nextLevel.showNestMinigame == Level.MinigameTiming.Before)
            {
                bShowNestMinigame = true;
            }
            else if (nextLevel.isDoubleDigitProblem && !SaveData.instance.SeenTens)
            {
                bShowNestMinigame = true;
            }
            else if (SaveData.instance.SeenTens && bOnMinigameInterval && bOnNestMinigameInterval)
            {
                bShowNestMinigame = true;
            }
            else
            {
                bShowNestMinigame = false;
            }
        }

        bool bShowExpressionMinigame = currentLevel.showExpressionMinigame != Level.MinigameTiming.Block && nextLevel.showExpressionMinigame != Level.MinigameTiming.Block;

        if (bShowExpressionMinigame)
        {
            if (currentLevel.showExpressionMinigame == Level.MinigameTiming.After || nextLevel.showExpressionMinigame == Level.MinigameTiming.Before)
            {
                bShowExpressionMinigame = true;
            }
            else if (bOnMinigameInterval)
            {
                bShowExpressionMinigame = true;
            }
            else
            {
                bShowExpressionMinigame = false;
            }
        }

        if (bShowNestMinigame || ForceNestMinigame)
        {
            m_NextMinigame = nestMinigame;
        }
        else if (bShowExpressionMinigame)
        {
            m_NextMinigame = expressionMinigame;
        }
        else
        {
            m_NextMinigame = null;
        }
    }