public bool SetSpy(GameAction pDestSpyPosition) { if (pDestSpyPosition == GameAction.None) { Console.WriteLine("In Spy state only set spy"); return(false); } // Has spy in source if(GetSpyCount()<5) // Has money to dest for (int i = 0; i < Spies.Count(); i++) { if (Spies[i] == GameAction.None) { switch (pDestSpyPosition) { case GameAction.Spy: break; case GameAction.Invent: if (Coins >= 2) { DropCoins(2); } else { Console.WriteLine("Not enought coins to spy"); return(false); } break; case GameAction.Research: break; case GameAction.Work: if (Coins >= 1) { DropCoins(1); } else { Console.WriteLine("Not enought coins to spy"); return(false); } break; } Spies[i] = pDestSpyPosition; CurrentSetSpy = pDestSpyPosition; return(true); } } Console.WriteLine("No spy in source location"); return(false); }
public bool DropSpy(GameAction pSourceSpyPosition) { for (int i = 0; i < Spies.Count(); i++) { if (Spies[i] == pSourceSpyPosition) { Spies[i] = GameAction.None; CurrentDropSpy = pSourceSpyPosition; break; } } return(true); }