コード例 #1
0
        public ResourceTransferCanonSynchronizer(
            IResourceTransferCanon resourceTransferCanon,
            IImprovementLocationCanon improvementLocationCanon,
            IPossessionRelationship <IHexCell, IResourceNode> resourceNodeLocationCanon,
            ICivilizationTerritoryLogic civTerritoryLogic,
            IPossessionRelationship <ICity, IHexCell> cityTerritoryCanon,
            IPossessionRelationship <ICivilization, ICity> cityPossessionCanon,
            ImprovementSignals improvementSignals,
            ResourceSignals resourceSignals,
            CitySignals citySignals,
            CivilizationSignals civSignals
            )
        {
            ResourceTransferCanon     = resourceTransferCanon;
            ImprovementLocationCanon  = improvementLocationCanon;
            ResourceNodeLocationCanon = resourceNodeLocationCanon;
            CivTerritoryLogic         = civTerritoryLogic;
            CityTerritoryCanon        = cityTerritoryCanon;
            CityPossessionCanon       = cityPossessionCanon;

            improvementSignals.RemovedFromLocation.Subscribe(OnImprovementRemovedFromLocation);
            improvementSignals.Pillaged.Subscribe(OnImprovementPillaged);
            resourceSignals.NodeRemovedFromLocation.Subscribe(OnResourceNodeRemovedFromLocation);
            citySignals.LostCellFromBoundaries.Subscribe(OnCityLostCellFromBoundaries);
            civSignals.CivLosingCity.Subscribe(OnCivLosingCity);
        }
コード例 #2
0
 public BakedElementsLogic(
     IRiverCanon riverCanon, IImprovementLocationCanon improvementLocationCanon,
     ICivilizationTerritoryLogic civTerritoryLogic
     )
 {
     RiverCanon = riverCanon;
     ImprovementLocationCanon = improvementLocationCanon;
     CivTerritoryLogic        = civTerritoryLogic;
 }
コード例 #3
0
 public HealingPromotionParser(
     IUnitPositionCanon unitPositionCanon,
     IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon,
     ICivilizationTerritoryLogic civTerritoryLogic
     )
 {
     UnitPositionCanon   = unitPositionCanon;
     UnitPossessionCanon = unitPossessionCanon;
     CivTerritoryLogic   = civTerritoryLogic;
 }
コード例 #4
0
 public PillageAbilityHandler(
     IUnitPositionCanon unitPositionCanon, IImprovementLocationCanon improvementLocationCanon,
     ICivilizationTerritoryLogic civTerritoryLogic, IWarCanon warCanon,
     IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon
     )
 {
     UnitPositionCanon        = unitPositionCanon;
     ImprovementLocationCanon = improvementLocationCanon;
     CivTerritoryLogic        = civTerritoryLogic;
     WarCanon            = warCanon;
     UnitPossessionCanon = unitPossessionCanon;
 }
コード例 #5
0
 public ImprovementInfluenceSource(
     IImprovementLocationCanon improvementLocationCanon, IHexGrid grid,
     ICivilizationTerritoryLogic civTerritoryLogic, IAIConfig aiConfig,
     IPossessionRelationship <IHexCell, IResourceNode> nodeLocationCanon
     )
 {
     ImprovementLocationCanon = improvementLocationCanon;
     Grid = grid;
     CivTerritoryLogic = civTerritoryLogic;
     AIConfig          = aiConfig;
     NodeLocationCanon = nodeLocationCanon;
 }
コード例 #6
0
 public ConnectionPathCostLogic(
     IPossessionRelationship <ICivilization, ICity> cityPossessionCanon,
     IPossessionRelationship <IHexCell, ICity> cityLocationCanon,
     IPossessionRelationship <ICity, IBuilding> buildingPossessionCanon,
     ICivilizationTerritoryLogic civTerritoryLogic
     )
 {
     CityPossessionCanon     = cityPossessionCanon;
     CityLocationCanon       = cityLocationCanon;
     BuildingPossessionCanon = buildingPossessionCanon;
     CivTerritoryLogic       = civTerritoryLogic;
 }
コード例 #7
0
 public CultureTriangulator(
     IHexGrid grid, ICivilizationTerritoryLogic civTerritoryLogic,
     ICellEdgeContourCanon cellEdgeContourCanon, IMapRenderConfig renderConfig,
     IGeometry2D geometry2D
     )
 {
     Grid = grid;
     CivTerritoryLogic    = civTerritoryLogic;
     CellEdgeContourCanon = cellEdgeContourCanon;
     RenderConfig         = renderConfig;
     Geometry2D           = geometry2D;
 }
コード例 #8
0
 public ImprovementDamageExecuter(
     IImprovementLocationCanon improvementLocationCanon, IHexGrid grid,
     IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon,
     ICivilizationTerritoryLogic civTerritoryLogic, IWarCanon warCanon,
     IUnitPositionCanon unitPositionCanon
     )
 {
     ImprovementLocationCanon = improvementLocationCanon;
     Grid = grid;
     UnitPossessionCanon = unitPossessionCanon;
     CivTerritoryLogic   = civTerritoryLogic;
     WarCanon            = warCanon;
     UnitPositionCanon   = unitPositionCanon;
 }
コード例 #9
0
 public UnitHealingLogic(
     IUnitConfig unitConfig, IPromotionParser promotionParser,
     IUnitPositionCanon unitPositionCanon,
     IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon,
     IPossessionRelationship <IHexCell, ICity> cityLocationCanon,
     ICivilizationTerritoryLogic civTerritoryLogic, IHexGrid grid
     )
 {
     UnitConfig          = unitConfig;
     PromotionParser     = promotionParser;
     UnitPositionCanon   = unitPositionCanon;
     UnitPossessionCanon = unitPossessionCanon;
     CityLocationCanon   = cityLocationCanon;
     CivTerritoryLogic   = civTerritoryLogic;
     Grid = grid;
 }
コード例 #10
0
 public AnnexAdjacentTerritoryAbilityHandler(
     IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon,
     IPossessionRelationship <ICivilization, ICity> cityPossessionCanon,
     IPossessionRelationship <ICity, IHexCell> cellPossessionCanon,
     IPossessionRelationship <IHexCell, ICity> cityLocationCanon,
     ICivilizationTerritoryLogic civTerritoryLogic, IHexGrid grid,
     IUnitPositionCanon unitPositionCanon
     )
 {
     UnitPossessionCanon = unitPossessionCanon;
     CityPossessionCanon = cityPossessionCanon;
     CellPossessionCanon = cellPossessionCanon;
     CityLocationCanon   = cityLocationCanon;
     CivTerritoryLogic   = civTerritoryLogic;
     Grid = grid;
     UnitPositionCanon = unitPositionCanon;
 }