Esempio n. 1
0
 void OnMouseDown()
 {
     GameState.WonGame = GameState.LostGame = false;
     if (mScenes == null)
     {
         Application.LoadLevel("LevelLoader");
     }
     Application.LoadLevel(mScenes.GetNextLevelAndCutScenes(Application.loadedLevelName));
 }
Esempio n. 2
0
    // Update is called once per frame
    void Update()
    {
        switch (mMyAction)
        {
        case Action.FadeIn:
            alpha  = setAlpha();
            alpha += kFadeRate;
            setImageColor(alpha);
            if (alpha >= 1.0f)
            {
                mMyAction = Action.Printing;
            }
            break;

        case Action.FadeOut:
            alpha  = setAlpha();
            alpha -= kFadeRate;
            setImageColor(alpha);
            if (alpha <= 0.0f)
            {
                mMyAction = Action.ChangingSet;
            }
            break;

        case Action.Printing:
            if (!mDialogueExists)
            {
                mMyAction = Action.Waiting;
                break;
            }

            if (mDialogueLetterIndex < mCurrentDialogueString.Length)
            {
                if (Time.time - mPreviousLetterDisplayTime > kLetterDisplayDelay)
                {
                    mDialogueText.text += mCurrentDialogueString[mDialogueLetterIndex].ToString();
                    mDialogueLetterIndex++;
                }
            }
            else
            {
                mMyAction            = Action.Waiting;
                mDialogueLetterIndex = 0;
            }
            break;

        case Action.ChangingSet:
            if (mCurrentImageIndex < mImageArray.Count && mCurrentImageIndex >= 0)
            {
                setAlphaToZero(mImageArray[mCurrentImageIndex]);
            }

            mCurrentImageIndex++;

            if (mCurrentImageIndex < mImageArray.Count)
            {
                mCurrentDialogueString = mDialogueArray[mCurrentImageIndex].ToString();
                mCurrentImage          = mImageArray[mCurrentImageIndex];
                mMyAction = Action.FadeIn;
            }
            else
            {
                mMyAction = Action.Finished;
            }
            break;

        case Action.Finished:
            if (mScenes == null)
            {
                Application.LoadLevel("LevelLoader");
            }
            Application.LoadLevel(mScenes.GetNextLevelAndCutScenes(Application.loadedLevelName));
            break;

        case Action.Waiting:
            if (!mWaitedCalled)
            {
                Invoke("FrameWaited", kSceneTransitionWaitTime);
                mWaitedCalled = true;
            }
            break;
        }
    }