コード例 #1
0
    IEnumerator MoveArea1ToEx()
    {
        //ポーズや、プレイヤーの操作などを不可能にする
        //

        OnCanShiftOperation(false);
        mPause.canPause = false;
        CanInputPlayer(false);
        CanMovePlayer(false);
        CanJumpPlayer(false);



        //行き先のエリアのドアを、開かせる
        mExToArea1Door.mOpenForce = true;
        mEnterUI.StopAnimation();

        //
        //フェード
        //

        mFade.FadeInStart(1.0f);

        while (true)
        {
            if (mFade.IsFadeIn() == false)
            {
                break;
            }
            yield return(null);
        }

        //行き先のエリアのプレートを点灯
        SetEnterColor(21);

        //プレイヤーの位置を変更
        Goal    g = mExToArea1Door;
        Vector3 lNewPlayerPosition = g.transform.position;

        lNewPlayerPosition        += g.transform.rotation * Vector3.up * 1.0f;
        lNewPlayerPosition.z       = 0.0f;
        mPlayer.transform.position = lNewPlayerPosition;

        //カメラの位置を変更
        mCameraMove.transform.position = mStageSelectScroll.mAreaCameraPosition[3].transform.position;


        mFade.FadeOutStart(1.0f);

        while (true)
        {
            if (mFade.IsFadeOut() == false)
            {
                break;
            }
            yield return(null);
        }


        //ポーズや、プレイヤーの操作などを可能にする
        //

        OnCanShiftOperation(true);
        mPause.canPause = true;
        CanInputPlayer(true);
        CanMovePlayer(true);
        CanJumpPlayer(true);
    }