Exemplo n.º 1
0
    public Queue <Card> CardPileLevel(Card.CardLevel level)
    {
        Queue <Card> cards = new Queue <Card>();

        foreach (Card card in CreatePileOfCards())
        {
            if (card.Level == level)
            {
                cards.Enqueue(card);
            }
        }

        return(ShuffleCard(cards));
    }
    public static object DeserializeCard(StreamBuffer inStream, short length)
    {
        int cardValue, cardTypeID, cardLevelID;

        Card.CardLevel cardLevel = Card.CardLevel.None;
        Card.CardType  cardType  = Card.CardType.None;

        lock (memCard) {
            inStream.Read(memCard, 0, 3 * 4);
            int off = 0;
            Protocol.Deserialize(out cardValue, memCard, ref off);
            Protocol.Deserialize(out cardTypeID, memCard, ref off);
            Protocol.Deserialize(out cardLevelID, memCard, ref off);
        }

        if (cardTypeID == 1)
        {
            cardType = Card.CardType.Snake;
        }
        else if (cardTypeID == 2)
        {
            cardType = Card.CardType.Snake2Head;
        }
        else if (cardTypeID == 3)
        {
            cardType = Card.CardType.Ladder;
        }
        else if (cardTypeID == 4)
        {
            cardType = Card.CardType.Ladder2Tail;
        }

        if (cardLevelID == 1)
        {
            cardLevel = Card.CardLevel.One;
        }
        else if (cardLevelID == 2)
        {
            cardLevel = Card.CardLevel.Two;
        }
        else if (cardLevelID == 3)
        {
            cardLevel = Card.CardLevel.Three;
        }

        Card boughtCard = new Card(cardValue, cardLevel, cardType);

        return(boughtCard);
    }
Exemplo n.º 3
0
    public void SellCardButton()
    {
        //SoundManager.PlaySoundEffect("ButtonClick");
        Card.CardLevel cardLevel = CardOnHand.Level;
        switch (cardLevel)
        {
        case Card.CardLevel.One:
            SellCard(4, CardPile[0]);
            break;

        case Card.CardLevel.Two:
            SellCard(6, CardPile[1]);
            break;

        case Card.CardLevel.Three:
            SellCard(8, CardPile[2]);
            break;
        }
        gameplayManager.EndTurnButton.interactable = true;
    }