Example #1
0
        public WonderCardDecksModel RegenerateDeckForPurchasedWonder(IList <WonderCardModel> availableWonders,
                                                                     IDictionary <FocusType, WonderCardModel> unlockedWonders,
                                                                     WonderCardModel purchasedWonder)
        {
            var newActiveUnlockedWonder    = GetActiveWonderForFocusType(availableWonders, purchasedWonder.Type);
            var regeneratedUnlockedWonders = new Dictionary <FocusType, WonderCardModel>(unlockedWonders);

            regeneratedUnlockedWonders.Remove(purchasedWonder.Type);
            regeneratedUnlockedWonders.Add(purchasedWonder.Type, newActiveUnlockedWonder);

            var regeneratedWonderDecks = RegenerateDecks(availableWonders);

            return(new WonderCardDecksModel(new ReadOnlyDictionary <FocusType, ReadOnlyCollection <WonderCardModel> >(regeneratedWonderDecks),
                                            new ReadOnlyDictionary <FocusType, WonderCardModel>(regeneratedUnlockedWonders)));
        }
 public override MoveStepActionData ExecuteAction(BotMoveState moveState)
 {
     _wonderToPurchase = GetWonderToPurchase(moveState);
     return(new MoveStepActionData($"As I have purchased the {_wonderToPurchase.Name} {_wonderToPurchase.Era} Wonder, please could you place the appropriate wonders token under my strongest city that currently has no built wonder.",
                                   new List <string>()));
 }