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); } } }
public void returnCard(ProgressCardKind k) { if ((int)k < 10) { sciencePool.Add(k); } else if ((int)k < 19) { politicsPool.Add(k); } else { tradePool.Add(k); } }
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); }
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); }
public Card(ProgressCardKind k) { this.k = k; }