Example #1
0
        public AnimalHusbandryFocusCardMoveResolver(IWonderPlacementCityActionRequestStep wonderPlacementCityActionRequestStep,
                                                    ICityPlacementActionRequestStep cityPlacementActionRequestStep,
                                                    ICityPlacementInformationRequestStep cityPlacementInformationRequestStep,
                                                    IFocusBarTechnologyUpgradeResolver focusBarTechnologyUpgradeResolver,
                                                    IIndustryResolverUtility industryResolverUtility) : base()
        {
            _industryResolverUtiliity          = industryResolverUtility;
            _focusBarTechnologyUpgradeResolver = focusBarTechnologyUpgradeResolver;

            FocusType  = FocusType.Industry;
            FocusLevel = FocusLevel.Lvl2;

            _actionSteps.Add(0, wonderPlacementCityActionRequestStep);
            _actionSteps.Add(1, cityPlacementActionRequestStep);
            _actionSteps.Add(2, cityPlacementInformationRequestStep);
        }
        public IronWorkingFocusCardMoveResolver(IMilitaryResolverUtility militaryResolverUtility,
                                                IEnemyWithinAttackDistanceInformationRequestStep enemyWithinAttackDistanceInformationRequestStep,
                                                IEnemyTypeToAttackInformationRequestStep enemyTypeToAttackInformationRequestStep,
                                                IEnemyAttackPowerInformationRequestStep enemyAttackPowerInformationRequestStep,
                                                IAttackPrimaryResultActionRequestStep attackPrimaryResultActionRequestStep,
                                                IDefeatedBarbarianActionRequestStep defeatedBarbarianActionRequestStep,
                                                IConquerCityStateInformationRequestStep conquerCityStateActionRequestStep,
                                                IConquerdNaturalWonderInformationRequestStep conquerWorldNaturalInformationRequestStep,
                                                IDefeatedRivalControlTokenActionRequestStep defeatedRivalControlTokenActionRequestStep,
                                                IDefeatedCapitalCityActionRequestStep defeatedCapitalCityActionRequestStep,
                                                IConquerNonCapitalCityActionRequestStep conquerNonCapitalCityActionRequestStep,
                                                IConquerWorldWonderInformationRequestStep conquerWorldWonderInformationRequestStep,
                                                IFailedAttackActionRequestStep failedAttackActionRequestStep,
                                                ISupplementAttackPowerInformationRequestStep supplementAttackPowerInformationRequestStep,
                                                IReinforceFriendlyControlTokensActionRequest reinforceFriendlyControlTokensActionRequest,
                                                IReinforceFriendlyControlTokensInformationRequest reinforceFriendlyControlTokensInformationRequest,
                                                IFocusBarTechnologyUpgradeResolver focusBarTechnologyUpgradeResolver) : base()
        {
            _militaryResolverUtility           = militaryResolverUtility;
            _focusBarTechnologyUpgradeResolver = focusBarTechnologyUpgradeResolver;

            FocusType  = FocusType.Military;
            FocusLevel = FocusLevel.Lvl2;

            var loopSeed = 0;

            for (var attack = 0; attack < BaseAttackCount; attack++)
            {
                _actionSteps.Add(loopSeed, enemyWithinAttackDistanceInformationRequestStep);
                _actionSteps.Add(loopSeed + 1, enemyTypeToAttackInformationRequestStep);
                _actionSteps.Add(loopSeed + 2, enemyAttackPowerInformationRequestStep);
                _actionSteps.Add(loopSeed + 3, attackPrimaryResultActionRequestStep);
                _actionSteps.Add(loopSeed + 4, supplementAttackPowerInformationRequestStep);
                _actionSteps.Add(loopSeed + 5, conquerWorldNaturalInformationRequestStep);
                _actionSteps.Add(loopSeed + 6, conquerWorldWonderInformationRequestStep);
                _actionSteps.Add(loopSeed + 7, defeatedBarbarianActionRequestStep);
                _actionSteps.Add(loopSeed + 8, conquerCityStateActionRequestStep);
                _actionSteps.Add(loopSeed + 9, defeatedRivalControlTokenActionRequestStep);
                _actionSteps.Add(loopSeed + 10, defeatedCapitalCityActionRequestStep);
                _actionSteps.Add(loopSeed + 11, conquerNonCapitalCityActionRequestStep);
                _actionSteps.Add(loopSeed + 12, failedAttackActionRequestStep);
                loopSeed = _actionSteps.Count;
            }

            _actionSteps.Add(loopSeed, reinforceFriendlyControlTokensActionRequest);
            _actionSteps.Add(loopSeed + 1, reinforceFriendlyControlTokensInformationRequest);
        }
Example #3
0
        public UrbanizationFocusCardMoveResolver(IWonderPlacementCityActionRequestStep wonderPlacementCityActionRequestStep,
                                                 ICityPlacementActionRequestStep cityPlacementActionRequestStep,
                                                 ICityPlacementInformationRequestStep cityPlacementInformationRequestStep,
                                                 IFocusBarTechnologyUpgradeResolver focusBarTechnologyUpgradeResolver,
                                                 IIndustryResolverUtility industryResolverUtility,
                                                 IBotRoundStateCache botRoundStateCache) : base()
        {
            _industryResolverUtiliity          = industryResolverUtility;
            _focusBarTechnologyUpgradeResolver = focusBarTechnologyUpgradeResolver;
            _botRoundStateCache = botRoundStateCache;

            FocusType  = FocusType.Industry;
            FocusLevel = FocusLevel.Lvl4;

            _actionSteps.Add(0, wonderPlacementCityActionRequestStep);
            _actionSteps.Add(1, cityPlacementActionRequestStep);
            _actionSteps.Add(2, cityPlacementInformationRequestStep);
        }
Example #4
0
 public TechnologyUpgradeResolver(ITechnologyBreakthroughResolver technologyBreakthroughResolver,
                                  IFocusBarTechnologyUpgradeResolver focusBarTechnologyUpgradeResolver)
 {
     _focusBarTechnologyUpgradeResolver = focusBarTechnologyUpgradeResolver;
     _technologyBreakthroughResolver    = technologyBreakthroughResolver;
 }