Exemple #1
0
    private IEnumerator DrawCardUntilNotAttack()
    {
        CardInstance drawCardInst = null;

        while (true)
        {
            if (!BattleTool.IsDeckHasCard()) //如果没卡了
            {
                if (!BattleTool.IsUsedHasCard())
                {
                    yield break;
                }

                float shuffleTime = BattleTool.ShuffleDeckFromUsed();
                yield return(new WaitForSeconds(shuffleTime));
            }

            if (BattleTool.IsHandCardFull())// 如果手牌满了
            {
                yield break;
            }

            drawCardInst = _battleModel.DrawOneCard(false);
            if (null == drawCardInst || drawCardInst.cardType != CardType.ATTACK)
            {
                yield break;
            }
            yield return(new WaitForSeconds(0.2f));
        }
    }
Exemple #2
0
    //抽多张牌
    private IEnumerator DrawCard(int drawNum, bool bRoundStartDraw)
    {
        for (int i = 0; i < drawNum; i++)
        {
            if (!BattleTool.IsDeckHasCard()) //如果没卡了
            {
                if (!BattleTool.IsUsedHasCard())
                {
                    yield break;
                }

                float shuffleTime = BattleTool.ShuffleDeckFromUsed();
                yield return(new WaitForSeconds(shuffleTime));
            }
            _battleModel.DrawOneCard(bRoundStartDraw);
            yield return(new WaitForSeconds(0.2f));
        }
    }