Table of Contents

Class IslandPlacersCreator

Namespace
Root
Assembly
Game.Orchestration.dll
public abstract class IslandPlacersCreator : IEntityPlacersCreator
Inheritance
object
IslandPlacersCreator
Implements
Derived
Extension Methods

Constructors

IslandPlacersCreator(GameBuildings, GameIslands, ResearchUnlockProgressManager, IEntityPlacementRunner, IIslandsModulesLookup, IDictionary<IEntityDefinition, PipettePlacementRequest>, ITutorialStateWriteAccess, ResearchChunkLimitManager, IViewportLayersController, IReadOnlyRailColorRegistry, ILogger)

protected IslandPlacersCreator(GameBuildings buildings, GameIslands islands, ResearchUnlockProgressManager progressManager, IEntityPlacementRunner entityPlacementRunner, IIslandsModulesLookup islandsModulesLookup, IDictionary<IEntityDefinition, PipettePlacementRequest> pipetteMap, ITutorialStateWriteAccess tutorialState, ResearchChunkLimitManager chunkLimitManager, IViewportLayersController viewportLayersController, IReadOnlyRailColorRegistry railColorRegistry, ILogger logger)

Parameters

buildings GameBuildings
islands GameIslands
progressManager ResearchUnlockProgressManager
entityPlacementRunner IEntityPlacementRunner
islandsModulesLookup IIslandsModulesLookup
pipetteMap IDictionary<IEntityDefinition, PipettePlacementRequest>
tutorialState ITutorialStateWriteAccess
chunkLimitManager ResearchChunkLimitManager
viewportLayersController IViewportLayersController
railColorRegistry IReadOnlyRailColorRegistry
logger ILogger

Fields

Buildings

protected readonly GameBuildings Buildings

Field Value

GameBuildings

ChunkLimitManager

protected readonly ResearchChunkLimitManager ChunkLimitManager

Field Value

ResearchChunkLimitManager

EntityPlacementRunner

protected readonly IEntityPlacementRunner EntityPlacementRunner

Field Value

IEntityPlacementRunner

Islands

protected readonly GameIslands Islands

Field Value

GameIslands

IslandsModulesLookup

protected readonly IIslandsModulesLookup IslandsModulesLookup

Field Value

IIslandsModulesLookup

PipetteMap

protected readonly IDictionary<IEntityDefinition, PipettePlacementRequest> PipetteMap

Field Value

IDictionary<IEntityDefinition, PipettePlacementRequest>

ProgressManager

protected readonly ResearchUnlockProgressManager ProgressManager

Field Value

ResearchUnlockProgressManager

RailColorRegistry

protected readonly IReadOnlyRailColorRegistry RailColorRegistry

Field Value

IReadOnlyRailColorRegistry

TutorialState

protected readonly ITutorialStateWriteAccess TutorialState

Field Value

ITutorialStateWriteAccess

ViewportLayersController

protected readonly IViewportLayersController ViewportLayersController

Field Value

IViewportLayersController

Methods

CreateDefaultPlacer(IIslandDefinition, BuiltinPlacementOfInterest)

protected IPlacementInitiator CreateDefaultPlacer(IIslandDefinition islandDefinitionGroup, BuiltinPlacementOfInterest placementOfInterest = BuiltinPlacementOfInterest.UnknownIsland)

Parameters

islandDefinitionGroup IIslandDefinition
placementOfInterest BuiltinPlacementOfInterest

Returns

IPlacementInitiator

CreateDefaultPlacer(IIslandDefinitionGroup, BuiltinPlacementOfInterest)

protected IPlacementInitiator CreateDefaultPlacer(IIslandDefinitionGroup islandGroup, BuiltinPlacementOfInterest placementOfInterest = BuiltinPlacementOfInterest.UnknownIsland)

Parameters

islandGroup IIslandDefinitionGroup
placementOfInterest BuiltinPlacementOfInterest

Returns

IPlacementInitiator

CreateDefaultPlacer(IIslandDefinitionGroup, BuiltinPlacementOfInterest, IFactory<IIslandConfiguration>, out ModularEntityPlacer<OverlappingPlacementData>)

protected IPlacementInitiator CreateDefaultPlacer(IIslandDefinitionGroup islandGroup, BuiltinPlacementOfInterest placementOfInterest, IFactory<IIslandConfiguration> defaultConfigurationFactory, out ModularEntityPlacer<OverlappingPlacementData> entityPlacer)

Parameters

islandGroup IIslandDefinitionGroup
placementOfInterest BuiltinPlacementOfInterest
defaultConfigurationFactory IFactory<IIslandConfiguration>
entityPlacer ModularEntityPlacer<OverlappingPlacementData>

Returns

IPlacementInitiator

CreatePathPlacer<TInput, TOutput>(IMatchingDefinitionFinder<IslandDescriptor, GlobalChunkPivot>, IIslandDefinition, IBuildingDefinition, IBuildingDefinition, int)

protected ModularEntityPlacer<OverlappingPlacementData> CreatePathPlacer<TInput, TOutput>(IMatchingDefinitionFinder<IslandDescriptor, GlobalChunkPivot> matchingDefinitionFinder, IIslandDefinition representingNode, IBuildingDefinition portSender, IBuildingDefinition portReceiver, int maxIslandLayer) where TInput : class, IEntityConnector, new() where TOutput : class, IEntityConnector, new()

Parameters

matchingDefinitionFinder IMatchingDefinitionFinder<IslandDescriptor, GlobalChunkPivot>
representingNode IIslandDefinition
portSender IBuildingDefinition
portReceiver IBuildingDefinition
maxIslandLayer int

Returns

ModularEntityPlacer<OverlappingPlacementData>

Type Parameters

TInput
TOutput

CreateSimpleUnlockRule(IslandDefinitionGroupId)

protected AnyIdUnlockedWithResearchRewards<IslandDefinitionGroupId> CreateSimpleUnlockRule(IslandDefinitionGroupId id)

Parameters

id IslandDefinitionGroupId

Returns

AnyIdUnlockedWithResearchRewards<IslandDefinitionGroupId>

CreateVariablePairPlacer(IIslandDefinition, IIslandDefinition, int, int, bool)

protected ModularEntityPlacer<OverlappingPlacementData> CreateVariablePairPlacer(IIslandDefinition start, IIslandDefinition end, int minDistance, int maxDistance, bool isReversed)

Parameters

start IIslandDefinition
end IIslandDefinition
minDistance int
maxDistance int
isReversed bool

Returns

ModularEntityPlacer<OverlappingPlacementData>

RegisterPlacers(IPlacementInitiatorIdRegistry, ICollection<IDisposable>)

public abstract void RegisterPlacers(IPlacementInitiatorIdRegistry registry, ICollection<IDisposable> disposables)

Parameters

registry IPlacementInitiatorIdRegistry
disposables ICollection<IDisposable>