public void InjectDependencies( List <CivilizationDisplayBase> civilizationDisplays, CoreSignals coreSignals, IGameCore gameCore, UIStateMachineBrain brain, CitySummaryManager citySummaryManager, IPossessionRelationship <IHexCell, ICity> cityLocationCanon, ITechCanon techCanon, IExplorationCanon explorationCanon, VisibilitySignals visibilitySignals, IFreeGreatPeopleCanon freeGreatPeopleCanon, ICameraFocuser cameraFocuser, [Inject(Id = "Free Techs Display")] RectTransform freeTechsDisplay, [Inject(Id = "Play Mode Default Panels")] List <RectTransform> defaultPanels, [Inject(Id = "Free Great People Notification")] RectTransform freeGreatPeopleNotification ) { CivilizationDisplays = civilizationDisplays; CoreSignals = coreSignals; GameCore = gameCore; Brain = brain; CitySummaryManager = citySummaryManager; CityLocationCanon = cityLocationCanon; TechCanon = techCanon; ExplorationCanon = explorationCanon; VisibilitySignals = visibilitySignals; FreeGreatPeopleCanon = freeGreatPeopleCanon; CameraFocuser = cameraFocuser; FreeTechsDisplay = freeTechsDisplay; DefaultPanels = defaultPanels; FreeGreatPeopleNotification = freeGreatPeopleNotification; }
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 InjectDependencies( IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, IPlayerFactory playerFactory, IGameCore gameCore ) { VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; PlayerFactory = playerFactory; GameCore = gameCore; }
public HexCellShaderData( IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, IMapRenderConfig renderConfig, [Inject(Id = "Coroutine Invoker")] MonoBehaviour coroutineInvoker ) { VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; RenderConfig = renderConfig; CoroutineInvoker = coroutineInvoker; }
public void InjectDependencies( UIStateMachineBrain brain, IMapComposer mapComposer, IVisibilityResponder visibilityResponder, IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, IGameCore gameCore, IUnitMapIconManager unitMapIconManager, List <IPlayModeSensitiveElement> playModeSensitiveElements ) { Brain = brain; MapComposer = mapComposer; VisibilityResponder = visibilityResponder; VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; GameCore = gameCore; UnitMapIconManager = unitMapIconManager; PlayModeSensitiveElements = playModeSensitiveElements; }
public CitySummaryManager( CitySummaryDisplay summaryPrefab, ICityFactory cityFactory, DiContainer container, ICityUIConfig cityUIConfig, IGameCamera gameCamera, [Inject(Id = "City Summary Container")] RectTransform citySummaryContainer, CitySignals citySignals, IExplorationCanon explorationCanon, IPossessionRelationship <IHexCell, ICity> cityLocationCanon ) { SummaryPrefab = summaryPrefab; CityFactory = cityFactory; Container = container; CityUIConfig = cityUIConfig; GameCamera = gameCamera; CitySummaryContainer = citySummaryContainer; ExplorationCanon = explorationCanon; CityLocationCanon = cityLocationCanon; citySignals.BeingDestroyed.Subscribe(OnCityBeingDestroyed); }
public CivilizationComposer( ICivilizationFactory civilizationFactory, ITechCanon techCanon, ISocialPolicyComposer policyComposer, IExplorationCanon explorationCanon, IHexGrid grid, IFreeBuildingsCanon freeBuildingsCanon, List <IBuildingTemplate> availableBuildings, [Inject(Id = "Available Techs")] List <ITechDefinition> availableTechs, ReadOnlyCollection <ICivilizationTemplate> availableCivTemplates, IGoldenAgeCanon goldenAgeCanon, ICivDiscoveryCanon civDiscoveryCanon ) { CivilizationFactory = civilizationFactory; TechCanon = techCanon; PolicyComposer = policyComposer; ExplorationCanon = explorationCanon; Grid = grid; FreeBuildingsCanon = freeBuildingsCanon; BuildingTemplates = availableBuildings; AvailableTechs = availableTechs; AvailableCivTemplates = availableCivTemplates; GoldenAgeCanon = goldenAgeCanon; CivDiscoveryCanon = civDiscoveryCanon; }
public void InjectDependencies( UIStateMachineBrain brain, IHexGrid grid, IMapComposer mapComposer, ICivilizationFactory civFactory, IPlayerFactory playerFactory, IVisibilityResponder visibilityResponder, IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, List <IPlayModeSensitiveElement> playModeSensitiveElements, ICivilizationConfig civConfig, IBrainPile brainPile, IUnitMapIconManager unitMapIconManager ) { Brain = brain; Grid = grid; MapComposer = mapComposer; CivFactory = civFactory; PlayerFactory = playerFactory; VisibilityResponder = visibilityResponder; VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; PlayModeSensitiveElements = playModeSensitiveElements; CivConfig = civConfig; BrainPile = brainPile; UnitMapIconManager = unitMapIconManager; }
public void InjectDependencies( IHexCellSignalLogic signalLogic, IYieldGenerationLogic generationLogic, IPossessionRelationship <ICity, IHexCell> cellPossessionCanon, IPossessionRelationship <IHexCell, IResourceNode> resourceNodePositionCanon, IImprovementLocationCanon improvementLocationCanon, ICellYieldLogic cellResourceLogic, IGameCore gameCore, IVisibilityCanon visibilityCanon, IExplorationCanon explorationCanon, IEncampmentLocationCanon encampmentLocationCanon ) { SignalLogic = signalLogic; GenerationLogic = generationLogic; CellPossessionCanon = cellPossessionCanon; ResourceNodePositionCanon = resourceNodePositionCanon; ImprovementLocationCanon = improvementLocationCanon; CellYieldLogic = cellResourceLogic; GameCore = gameCore; VisibilityCanon = visibilityCanon; ExplorationCanon = explorationCanon; EncampmentLocationCanon = encampmentLocationCanon; }