コード例 #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);
        }
コード例 #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);
        }
コード例 #4
0
 public TechnologyUpgradeResolver(ITechnologyBreakthroughResolver technologyBreakthroughResolver,
                                  IFocusBarTechnologyUpgradeResolver focusBarTechnologyUpgradeResolver)
 {
     _focusBarTechnologyUpgradeResolver = focusBarTechnologyUpgradeResolver;
     _technologyBreakthroughResolver    = technologyBreakthroughResolver;
 }