// Draw and return a progress card from the requested pile public void withdrawProgressCard(Enums.DevChartType progressType) { Enums.ProgressCardName prog; if (progressType == Enums.DevChartType.TRADE) { int rand = Random.Range(0, tradeCards.Count); prog = tradeCards[rand]; tradeCards.RemoveAt(rand); } else if (progressType == Enums.DevChartType.POLITICS) { int rand = Random.Range(0, politicsCards.Count); prog = politicsCards[rand]; politicsCards.RemoveAt(rand); } else { int rand = Random.Range(0, scienceCards.Count); prog = scienceCards[rand]; scienceCards.RemoveAt(rand); } Player current = GameManager.instance.getCurrentPlayer(); current.addProgressCard(prog); }
// Put the given progress card on the bottom of a progress card pile public void depositProgressCard(Enums.DevChartType progressType, Enums.ProgressCardName progressCard, bool server) { assignAuthority(server); RpcAddProgressCard(progressType, progressCard); removeAuthority(server); }
void RpcAddProgressCard(Enums.DevChartType progressType, Enums.ProgressCardName progressCard) { if (progressType == Enums.DevChartType.TRADE) { tradeCards.Add(progressCard); } else if (progressType == Enums.DevChartType.POLITICS) { politicsCards.Add(progressCard); } else if (progressType == Enums.DevChartType.SCIENCE) { scienceCards.Add(progressCard); } }