Exemplo n.º 1
0
    //方法,执行游戏失败之后的相关操作
    public void GameDefeat()
    {
        //游戏状态改变
        MyClass.gameState = GameState.Defeat;

        //摄像机停止旋转
        cameraRotateEnable = false;

        //背景音乐停止播放
        MyClass.AudioStop(selfAudioSource);

        //播放死亡音效
        MyClass.AudioPlay(selfAudioSource, MyClass.AudioResources [2], MyClass.audioEnable);

        //截图
        SdkToU3d.ScreenShot();

        //在玩家当前位置实例化一枚粒子特效
        Instantiate(MyClass.ParticleResources[0],
                    playerCurrentPositon,
                    MyClass.ParticleResources[0].transform.rotation);

        //如果本次得分超过历史最佳得分
        if (score > MyClass.bestScore)
        {
            //将本次成绩记录为历史最佳成绩
            MyClass.bestScore = score;

            //上传最高分
            SdkToU3d.ReportScore(MyClass.bestScore);

            //新纪录的标志图片激活
            newScoreImage.SetActive(true);
        }

        //玩家玩的次数加1
        MyClass.playedCount++;

        //0.5秒钟之后显示失败界面
        Invoke("DefeatInterfaceDisplay", 0.5F);
    }