public TerrainRefreshResponder( IHexGrid grid, IPossessionRelationship <ICity, IHexCell> cellPossessionCanon, CitySignals citySignals, CivilizationSignals civSignals, HexCellSignals cellSignals, ImprovementSignals improvementSignals, ResourceSignals resourceSignals ) { Grid = grid; CellPossessionCanon = cellPossessionCanon; citySignals.LostCellFromBoundaries.Subscribe(OnCellPossessionChanged); citySignals.GainedCellToBoundaries.Subscribe(OnCellPossessionChanged); citySignals.CityAddedToLocation.Subscribe(OnCityChangedLocation); citySignals.CityRemovedFromLocation.Subscribe(OnCityChangedLocation); civSignals.CivGainedCity.Subscribe(OnCityPossessionChanged); civSignals.CivLostCity.Subscribe(OnCityPossessionChanged); cellSignals.TerrainChanged.Subscribe(OnCellTerrainChanged); cellSignals.ShapeChanged.Subscribe(OnCellShapeChanged); cellSignals.VegetationChanged.Subscribe(OnCellVegetationChanged); cellSignals.FeatureChanged.Subscribe(OnCellFeatureChanged); cellSignals.RoadStatusChanged.Subscribe(OnCellRoadStatusChanged); cellSignals.GainedRiveredEdge.Subscribe(OnCellRiverChanged); cellSignals.LostRiveredEdge.Subscribe(OnCellRiverChanged); cellSignals.GainedEncampment.Subscribe(OnCellEncampmentChanged); cellSignals.LostEncampment.Subscribe(OnCellEncampmentChanged); improvementSignals.AddedToLocation.Subscribe(OnCellImprovementsChanged); improvementSignals.RemovedFromLocation.Subscribe(OnCellImprovementsChanged); resourceSignals.NodeAddedToLocation.Subscribe(OnCellNodesChanged); resourceSignals.NodeRemovedFromLocation.Subscribe(OnCellNodesChanged); }
public void CommonInstall() { MockResourceTransferCanon = new Mock <IResourceTransferCanon>(); MockImprovementLocationCanon = new Mock <IImprovementLocationCanon>(); MockResourceNodeLocationCanon = new Mock <IPossessionRelationship <IHexCell, IResourceNode> >(); MockCivTerritoryLogic = new Mock <ICivilizationTerritoryLogic>(); MockCityTerritoryCanon = new Mock <IPossessionRelationship <ICity, IHexCell> >(); MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); ImprovementSignals = new ImprovementSignals(); ResourceSignals = new ResourceSignals(); CivSignals = new CivilizationSignals(); Container.Bind <IResourceTransferCanon> ().FromInstance(MockResourceTransferCanon.Object); Container.Bind <IImprovementLocationCanon> ().FromInstance(MockImprovementLocationCanon.Object); Container.Bind <IPossessionRelationship <IHexCell, IResourceNode> >().FromInstance(MockResourceNodeLocationCanon.Object); Container.Bind <ICivilizationTerritoryLogic> ().FromInstance(MockCivTerritoryLogic.Object); Container.Bind <IPossessionRelationship <ICity, IHexCell> > ().FromInstance(MockCityTerritoryCanon.Object); Container.Bind <IPossessionRelationship <ICivilization, ICity> > ().FromInstance(MockCityPossessionCanon.Object); Container.Bind <ImprovementSignals> ().FromInstance(ImprovementSignals); Container.Bind <ResourceSignals> ().FromInstance(ResourceSignals); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <CitySignals>().AsSingle(); Container.Bind <ResourceTransferCanonSynchronizer>().AsSingle().NonLazy(); }
public void CommonInstall() { AllCities.Clear(); AllUnits.Clear(); MockCivConfig = new Mock <ICivilizationConfig>(); MockCanBuildCityLogic = new Mock <ICanBuildCityLogic>(); MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); MockUnitPossessionCanon = new Mock <IPossessionRelationship <ICivilization, IUnit> >(); CivSignals = new CivilizationSignals(); MockCityPossessionCanon.Setup(canon => canon.GetPossessionsOfOwner(It.IsAny <ICivilization>())) .Returns(AllCities); MockUnitPossessionCanon.Setup(canon => canon.GetPossessionsOfOwner(It.IsAny <ICivilization>())) .Returns(AllUnits); Container.Bind <ICivilizationConfig> ().FromInstance(MockCivConfig.Object); Container.Bind <ICanBuildCityLogic> ().FromInstance(MockCanBuildCityLogic.Object); Container.Bind <IPossessionRelationship <ICivilization, ICity> >().FromInstance(MockCityPossessionCanon.Object); Container.Bind <IPossessionRelationship <ICivilization, IUnit> >().FromInstance(MockUnitPossessionCanon.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <CivDefeatExecutor>().AsSingle(); }
public ResourceOngoingDiplomaticExchange( IResourceTransferCanon resourceTransferCanon, CivilizationSignals civSignals ) { ResourceTransferCanon = resourceTransferCanon; CivSignals = civSignals; }
public void CommonInstall() { CivSignals = new CivilizationSignals(); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <CivDiscoveryCanon>().AsSingle(); }
public FreeGreatPeopleCanon( CivilizationSignals civSignals, CitySignals citySignals, IPossessionRelationship <ICivilization, ICity> cityPossessionCanon ) { CivSignals = civSignals; CitySignals = citySignals; CityPossessionCanon = cityPossessionCanon; }
public SocialPolicyCanon( ITechCanon techCanon, CivilizationSignals civSignals, [Inject(Id = "Available Policy Trees")] IEnumerable <IPolicyTreeDefinition> availablePolicyTrees ) { TechCanon = techCanon; CivSignals = civSignals; AvailablePolicyTrees = availablePolicyTrees; }
public VisibilityResponder( IPossessionRelationship <ICivilization, IUnit> unitPossessionCanon, IPossessionRelationship <ICivilization, ICity> cityPossessionCanon, IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, ICityLineOfSightLogic cityLineOfSightLogic, IUnitVisibilityLogic unitLineOfSightLogic, IUnitFactory unitFactory, ICityFactory cityFactory, IHexGrid grid, [Inject(Id = "Coroutine Invoker")] MonoBehaviour coroutineInvoker, IHexCellShaderData hexCellShaderData, UnitSignals unitSignals, CitySignals citySignals, HexCellSignals cellSignals, CivilizationSignals civSignals, VisibilitySignals visibilitySignals, CoreSignals coreSignals, MapRenderingSignals mapRenderingSignals ) { UnitPossessionCanon = unitPossessionCanon; CityPossessionCanon = cityPossessionCanon; VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; CityLineOfSightLogic = cityLineOfSightLogic; UnitLineOfSightLogic = unitLineOfSightLogic; UnitFactory = unitFactory; CityFactory = cityFactory; Grid = grid; CoroutineInvoker = coroutineInvoker; HexCellShaderData = hexCellShaderData; unitSignals.LeftLocation.Subscribe(OnUnitLeftLocation); unitSignals.EnteredLocation.Subscribe(OnUnitEnteredLocation); citySignals.LostCellFromBoundaries.Subscribe(OnCityLostCell); citySignals.GainedCellToBoundaries.Subscribe(OnCityGainedCell); cellSignals.TerrainChanged.Subscribe(data => TryResetCellVisibility()); cellSignals.ShapeChanged.Subscribe(data => TryResetCellVisibility()); cellSignals.VegetationChanged.Subscribe(data => TryResetCellVisibility()); civSignals.CivLosingCity.Subscribe(OnCivLosingCity); civSignals.CivGainedCity.Subscribe(OnCivGainedCity); civSignals.CivDiscoveredTech.Subscribe(data => TryResetResourceVisibility()); civSignals.CivUndiscoveredTech.Subscribe(data => TryResetResourceVisibility()); visibilitySignals.CellVisibilityModeChanged.Subscribe(unit => TryResetCellVisibility()); visibilitySignals.CellExplorationModeChanged.Subscribe(unit => TryResetCellVisibility()); visibilitySignals.ResourceVisibilityModeChanged.Subscribe(unit => TryResetResourceVisibility()); coreSignals.ActivePlayerChanged.Subscribe(OnActivePlayerChanged); mapRenderingSignals.MapFinishedLoading.Subscribe(Unit => TryResetCellVisibility()); mapRenderingSignals.MapFinishedLoading.Subscribe(Unit => TryResetResourceVisibility()); }
public void CommonInstall() { CivSignals = new CivilizationSignals(); CitySignals = new CitySignals(); MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <CitySignals> ().FromInstance(CitySignals); Container.Bind <IPossessionRelationship <ICivilization, ICity> >().FromInstance(MockCityPossessionCanon.Object); Container.Bind <FreeGreatPeopleCanon>().AsSingle(); }
public GreatPersonFactory( ICapitalCityCanon capitalCityCanon, IPossessionRelationship <IHexCell, ICity> cityLocationCanon, IUnitFactory unitFactory, IUnitConfig unitConfig, IHexGrid grid, CivilizationSignals civSignals ) { CapitalCityCanon = capitalCityCanon; CityLocationCanon = cityLocationCanon; UnitFactory = unitFactory; UnitConfig = unitConfig; Grid = grid; CivSignals = civSignals; }
public void CommonInstall() { MockCivConfig = new Mock <ICivilizationConfig>(); MockUnitConfig = new Mock <IUnitConfig>(); CivSignals = new CivilizationSignals(); Container.Bind <ICivilizationConfig>().FromInstance(MockCivConfig.Object); Container.Bind <IUnitConfig> ().FromInstance(MockUnitConfig.Object); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <GreatPersonCanon>().AsSingle(); }
public void CommonInstall() { MockCapitalCityCanon = new Mock <ICapitalCityCanon>(); MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); CivSignals = new CivilizationSignals(); Container.Bind <ICapitalCityCanon> ().FromInstance(MockCapitalCityCanon.Object); Container.Bind <IPossessionRelationship <ICivilization, ICity> >().FromInstance(MockCityPossessionCanon.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <CapitalCitySynchronizer>().AsSingle(); }
public void InjectDependencies( ICivilizationFactory civilizationFactory, IPlayerFactory playerFactory, CivilizationSignals civSignals, ReadOnlyCollection <ICivilizationTemplate> civTemplates, IBrainPile brainPile ) { CivilizationFactory = civilizationFactory; PlayerFactory = playerFactory; CivSignals = civSignals; CivTemplates = civTemplates; BrainPile = brainPile; }
public void CommonInstall() { MockFreeBuildingApplier = new Mock <IFreeBuildingApplier>(); MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); CivSignals = new CivilizationSignals(); Container.Bind <IFreeBuildingApplier> ().FromInstance(MockFreeBuildingApplier.Object); Container.Bind <IPossessionRelationship <ICivilization, ICity> >().FromInstance(MockCityPossessionCanon.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <FreeBuildingsCanon>().AsSingle(); }
public void CommonInstall() { MockResourceLockingCanon = new Mock <IResourceLockingCanon>(); CivSignals = new CivilizationSignals(); UnitSignals = new UnitSignals(); Container.Bind <IResourceLockingCanon>().FromInstance(MockResourceLockingCanon.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <UnitSignals> ().FromInstance(UnitSignals); Container.Bind <UnitPossessionCanon>().AsSingle(); }
public void InjectDependencies( ISocialPolicyCostLogic policyCostLogic, ICivilizationYieldLogic yieldLogic, [Inject(Id = "Available Policy Trees")] IEnumerable <IPolicyTreeDefinition> availablePolicyTrees, CivilizationSignals civSignals, DiContainer container ) { PolicyCostLogic = policyCostLogic; YieldLogic = yieldLogic; AvailablePolicyTrees = availablePolicyTrees; CivSignals = civSignals; Container = container; }
public void CommonInstall() { MockExtractionLogic = new Mock <IResourceExtractionLogic>(); MockLockingCanon = new Mock <IResourceLockingCanon>(); CivSignals = new CivilizationSignals(); Container.Bind <IResourceExtractionLogic>().FromInstance(MockExtractionLogic.Object); Container.Bind <IResourceLockingCanon> ().FromInstance(MockLockingCanon.Object); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <ResourceTransferCanon>().AsSingle(); }
public FreeBuildingsPolicyResponder( IFreeBuildingsCanon freeBuildingsCanon, CivilizationSignals civSignals ) { FreeBuildingsCanon = freeBuildingsCanon; civSignals.CivUnlockedPolicy.Subscribe(OnCivUnlockedPolicy); civSignals.CivLockedPolicy.Subscribe(OnCivLockedPolicy); civSignals.CivUnlockedPolicyTree.Subscribe(OnCivUnlockedPolicyTree); civSignals.CivLockedPolicyTree.Subscribe(OnCivLockedPolicyTree); civSignals.CivFinishedPolicyTree.Subscribe(OnCivFinishedPolicyTree); civSignals.CivUnfinishedPolicyTree.Subscribe(OnCivUnfinishedPolicyTree); }
public FreeUnitsResponder( CivilizationSignals civSignals, CitySignals citySignals, IUnitFactory unitFactory, IHexGrid grid, IPossessionRelationship <IHexCell, ICity> cityLocationCanon, IPossessionRelationship <ICivilization, ICity> cityPossessionCanon, ICapitalCityCanon capitalCityCanon ) { CivSignals = civSignals; CitySignals = citySignals; UnitFactory = unitFactory; Grid = grid; CityLocationCanon = cityLocationCanon; CityPossessionCanon = cityPossessionCanon; CapitalCityCanon = capitalCityCanon; }
public TechCanon( [Inject(Id = "Available Techs")] List <ITechDefinition> availableTechs, [Inject(Id = "Available Abilities")] IEnumerable <IAbilityDefinition> availableAbilities, [Inject(Id = "Available Resources")] IEnumerable <IResourceDefinition> availableResources, [Inject(Id = "Available Improvement Templates")] IEnumerable <IImprovementTemplate> availableImprovements, CivilizationSignals civSignals ) { _availableTechs = availableTechs; AvailableAbilities = availableAbilities; AvailableResources = availableResources; AvailableImprovements = availableImprovements; CivSignals = civSignals; civSignals.CivBeingDestroyed.Subscribe(OnCivilizationBeingDestroyed); }
public void CommonInstall() { AvailablePolicies.Clear(); AvailableTrees.Clear(); MockTechCanon = new Mock <ITechCanon>(); CivSignals = new CivilizationSignals(); Container.Bind <ITechCanon> ().FromInstance(MockTechCanon.Object); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <IEnumerable <IPolicyTreeDefinition> >().WithId("Available Policy Trees").FromInstance(AvailableTrees); Container.Bind <SocialPolicyCanon>().AsSingle(); }
public void CommonInstall() { MockCityPossessionCanon = new Mock <IPossessionRelationship <ICivilization, ICity> >(); MockCivConfig = new Mock <ICivilizationConfig>(); CivSignals = new CivilizationSignals(); MockCivModifiers = new Mock <ICivModifiers>(); MockGoldenAgeLengthModifier = new Mock <ICivModifier <float> >(); MockCivModifiers.Setup(modifiers => modifiers.GoldenAgeLength).Returns(MockGoldenAgeLengthModifier.Object); Container.Bind <IPossessionRelationship <ICivilization, ICity> >().FromInstance(MockCityPossessionCanon.Object); Container.Bind <ICivilizationConfig> ().FromInstance(MockCivConfig.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <ICivModifiers> ().FromInstance(MockCivModifiers.Object); Container.Bind <GoldenAgeCanon>().AsSingle(); }
public void CommonInstall() { AvailableTechs.Clear(); AvailableResources.Clear(); AvailableAbilities.Clear(); AvailableImprovements.Clear(); CivSignals = new CivilizationSignals(); Container.Bind <List <ITechDefinition> > ().WithId("Available Techs").FromInstance(AvailableTechs); Container.Bind <IEnumerable <IResourceDefinition> > ().WithId("Available Resources").FromInstance(AvailableResources); Container.Bind <IEnumerable <IAbilityDefinition> > ().WithId("Available Abilities").FromInstance(AvailableAbilities); Container.Bind <IEnumerable <IImprovementTemplate> >().WithId("Available Improvement Templates").FromInstance(AvailableImprovements); Container.Bind <CivilizationSignals>().FromInstance(CivSignals); Container.Bind <TechCanon>().AsSingle(); }
public void CommonInstall() { MockYieldLogic = new Mock <ICivilizationYieldLogic>(); MockTechCanon = new Mock <ITechCanon>(); CivSignals = new CivilizationSignals(); MockGreatPersonCanon = new Mock <IGreatPersonCanon>(); MockGreatPersonFactory = new Mock <IGreatPersonFactory>(); MockGoldenAgeCanon = new Mock <IGoldenAgeCanon>(); MockCivHappinessLogic = new Mock <ICivilizationHappinessLogic>(); Container.Bind <ICivilizationYieldLogic> ().FromInstance(MockYieldLogic.Object); Container.Bind <ITechCanon> ().FromInstance(MockTechCanon.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <IGreatPersonCanon> ().FromInstance(MockGreatPersonCanon.Object); Container.Bind <IGreatPersonFactory> ().FromInstance(MockGreatPersonFactory.Object); Container.Bind <IGoldenAgeCanon> ().FromInstance(MockGoldenAgeCanon.Object); Container.Bind <ICivilizationHappinessLogic>().FromInstance(MockCivHappinessLogic.Object); }
public UIStateMachineBrain( [Inject(Id = "UI Animator")] Animator animator, CompositeCitySignals compositeCitySignals, CompositeUnitSignals compositeUnitSignals, PlayerSignals playerSignals, IGameCamera gameCamera, DescriptionTooltip descriptionTooltip, CellHoverDisplay cellHoverDisplay, CivilizationSignals civSignals, CoreSignals coreSignals, UnitSignals unitSignals ) { Animator = animator; CompositeCitySignals = compositeCitySignals; CompositeUnitSignals = compositeUnitSignals; PlayerSignals = playerSignals; GameCamera = gameCamera; DescriptionTooltip = descriptionTooltip; CellHoverDisplay = cellHoverDisplay; CivSignals = civSignals; UnitSignals = unitSignals; coreSignals.TurnBegan.Subscribe(OnTurnBegan); }
public void CommonInstall() { MockCapitalCityCanon = new Mock <ICapitalCityCanon>(); MockCityLocationCanon = new Mock <IPossessionRelationship <IHexCell, ICity> >(); MockUnitFactory = new Mock <IUnitFactory>(); MockUnitConfig = new Mock <IUnitConfig>(); MockGrid = new Mock <IHexGrid>(); CivSignals = new CivilizationSignals(); Container.Bind <ICapitalCityCanon> ().FromInstance(MockCapitalCityCanon.Object); Container.Bind <IPossessionRelationship <IHexCell, ICity> >().FromInstance(MockCityLocationCanon.Object); Container.Bind <IUnitFactory> ().FromInstance(MockUnitFactory.Object); Container.Bind <IUnitConfig> ().FromInstance(MockUnitConfig.Object); Container.Bind <IHexGrid> ().FromInstance(MockGrid.Object); Container.Bind <CivilizationSignals> ().FromInstance(CivSignals); Container.Bind <GreatPersonFactory>().AsSingle(); }