Exemplo n.º 1
0
    public override void StartGame()
    {
        base.StartGame();
        //发射器开始旋转
        MiniGameAccountEjectorCpt       ejectorCpt        = miniGameBuilder.GetEjector();
        MiniGameCharacterForAccountBean userCharacterData = (MiniGameCharacterForAccountBean)miniGameData.GetUserGameData();

        userCharacterData.characterData.GetAttributes(out CharacterAttributesBean characterAttributes);
        ejectorCpt.SetData(5 + characterAttributes.account / 20f, 1.8f + characterAttributes.account / 20f);
        ejectorCpt.SetCallBack(this);
        ejectorCpt.StartRotate();
        //打开游戏UI
        UIMiniGameAccount uiMiniGameAccount = UIHandler.Instance.manager.OpenUIAndCloseOther <UIMiniGameAccount>(UIEnum.MiniGameAccount);

        uiMiniGameAccount.SetData(miniGameData.winSurvivalTime, miniGameData.winMoneyL, miniGameData.winMoneyM, miniGameData.winMoneyS);
        //开始倒计时
        StartCoroutine(StartCountDown());
    }
Exemplo n.º 2
0
    /// <summary>
    /// 开始倒计时
    /// </summary>
    /// <param name="totalTime"></param>
    /// <returns></returns>
    public IEnumerator StartCountDown()
    {
        UIMiniGameAccount uiMiniGameAccount = (UIMiniGameAccount)UIHandler.Instance.manager.GetOpenUI();

        while (true)
        {
            //设置游戏UI时间
            uiMiniGameAccount.SetTime(miniGameData.currentTime);
            yield return(new WaitForSeconds(1));

            miniGameData.currentTime--;
            if (miniGameData.currentTime <= 0)
            {
                break;
            }
        }
        EndGame(CheckGameResults());
    }
Exemplo n.º 3
0
    public void AccountEjectorSettlement(MiniGameAccountEjectorCpt ejector, int moneyL, int moneyM, int moneyS)
    {
        miniGameData.currentMoneyL += moneyL;
        miniGameData.currentMoneyM += moneyM;
        miniGameData.currentMoneyS += moneyS;

        //展示特效
        MiniGameAccountEjectorCpt ejectorCpt        = miniGameBuilder.GetEjector();
        UIMiniGameAccount         uiMiniGameAccount = (UIMiniGameAccount)UIHandler.Instance.manager.GetOpenUI();

        uiMiniGameAccount.ShowMoneyGet(ejectorCpt.transform.position, moneyL, moneyM, moneyS);


        //如果分满了直接结束游戏
        MiniGameResultEnum gameResultEnum = CheckGameResults();

        if (gameResultEnum == MiniGameResultEnum.Win)
        {
            StopAllCoroutines();
            EndGame(MiniGameResultEnum.Win);
        }
    }