Beispiel #1
0
    public ProgressCardKind rollCard(EventKind k)
    {
        switch (k)
        {
        case EventKind.Science:
        {
            ProgressCardKind to_ret = (ProgressCardKind)sciencePool[roller.Next(0, sciencePool.Count)];
            sciencePool.Remove(to_ret);
            return(to_ret);
        }

        case EventKind.Trade:
        {
            ProgressCardKind to_ret = (ProgressCardKind)tradePool[roller.Next(0, tradePool.Count)];
            tradePool.Remove(to_ret);
            return(to_ret);
        }

        case EventKind.Politics:
        {
            ProgressCardKind to_ret = (ProgressCardKind)politicsPool[roller.Next(0, politicsPool.Count)];
            politicsPool.Remove(to_ret);
            return(to_ret);
        }

        default:
        {
            //will actually never return this its just to shut up compiler.
            return(ProgressCardKind.NoCard);
        }
        }
    }
Beispiel #2
0
 public void returnCard(ProgressCardKind k)
 {
     if ((int)k < 10)
     {
         sciencePool.Add(k);
     }
     else if ((int)k < 19)
     {
         politicsPool.Add(k);
     }
     else
     {
         tradePool.Add(k);
     }
 }
Beispiel #3
0
    public bool hasCardInDeck(ProgressCardKind k)
    {
        bool check = false;

        if ((int)k < 10 && sciencePool.Contains(k))
        {
            check = true;
        }
        else if ((int)k < 19 && politicsPool.Contains(k))
        {
            check = true;
        }
        else if (tradePool.Contains(k))
        {
            check = true;
        }
        return(check);
    }
Beispiel #4
0
    public ProgressCardKind getCard(ProgressCardKind k)
    {
        ProgressCardKind card = ProgressCardKind.NoCard;

        if ((int)k < 10)
        {
            card = k;
            sciencePool.Remove(k);
        }
        else if ((int)k < 19 && politicsPool.Contains(k))
        {
            card = k;
            politicsPool.Remove(k);
        }
        else if (tradePool.Contains(k))
        {
            card = k;
            tradePool.Remove(k);
        }
        return(card);
    }
Beispiel #5
0
 public Card(ProgressCardKind k)
 {
     this.k = k;
 }