Beispiel #1
0
 /// <summary>
 /// Active player changes cards
 /// </summary>
 /// <param name="place"></param>
 private void ChangeCards(ICardChangePlace place)
 {
     if (game.ActivePlayer is IAIPlayer)
     {
         MessageBox.Show("It's not your turn!");
         return;
     }
     //ExecuteAction(new ChangeCardsAction(place));
     ExecuteActionAsync(new ChangeCardsAction(place));
 }
Beispiel #2
0
        /// <summary>
        /// Moves player to the desired card changing place and changes the cards
        /// </summary>
        /// <param name="cardChangePlace">Place where to change cards</param>
        public void MoveAndChangeDisplayCards(ICardChangePlace cardChangePlace)
        {
            int travelTime = GameSettings.GetDistance(CurrentPlace, cardChangePlace);

            if (useZeppelin)
            {
                travelTime = 0;
            }
            if (Time.RemainingWeeks() < travelTime + CardDisplay.timeToChangeCards)
            {
                errorDialog("You don't have enough time to change the display cards");
                return;
            }

            MoveTo(cardChangePlace);
            Time.SpendWeeks(CardChangeCost);
            LastRoundChange = true;
            CardChangeCost++;

            changeDisplayCards();
        }
Beispiel #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="cardChangePlace">The place where the cards can be changed</param>
 public ChangeCardsAction(ICardChangePlace cardChangePlace)
 {
     this.cardChangePlace = cardChangePlace;
 }