Exemplo n.º 1
0
        public IEnumerator IDraw(List <CardContent> outlist, int count)
        {
            var leftCount = count;

            while (leftCount > 0)
            {
                if (deckPile.Count == 0)
                {
                    if (discardPile.Count > 0)
                    {
                        yield return(IRefreshUI());

                        yield return(IShuffle());

                        continue;
                    }
                    else
                    {
                        break;
                    }
                }
                else
                {
                    CardContent card = deckPile[0];
                    yield return(IGoTo(card, CardPosition.Hand));

                    leftCount--;
                    card.OnDraw();
                    if (outlist != null)
                    {
                        outlist.Add(card);
                    }
                    if (leftCount == 0)
                    {
                        break;
                    }
                }
            }
            yield return(IRefreshUI());

            yield break;
        }