Table of Contents

Class TrainCargoUnloaderSimulation<TItem>

Namespace
Root
Assembly
Game.Content.dll
public class TrainCargoUnloaderSimulation<TItem> : ICargoExchanger<LayeredWagonCargo<CargoContainer<TItem>>>, IItemBundleSimulation, IUpdatableSimulation, ISimulation, ICargoLoadUnloadStation<TItem>, ICargoExchanger where TItem : unmanaged, IEquatable<TItem>

Type Parameters

TItem
Inheritance
object
TrainCargoUnloaderSimulation<TItem>
Implements
Extension Methods

Constructors

TrainCargoUnloaderSimulation(TrainCargoExchangerState<TItem>, IExchangeLayerFilterConfig, int, IBeltSpeed, ICargoToBeltItemConverter<TItem>)

public TrainCargoUnloaderSimulation(TrainCargoExchangerState<TItem> state, IExchangeLayerFilterConfig exchangeLayerFilterConfig, int maxContainersOnTrack, IBeltSpeed tripleBelt, ICargoToBeltItemConverter<TItem> cargoConverter)

Parameters

state TrainCargoExchangerState<TItem>
exchangeLayerFilterConfig IExchangeLayerFilterConfig
maxContainersOnTrack int
tripleBelt IBeltSpeed
cargoConverter ICargoToBeltItemConverter<TItem>

Properties

BridgeLanes

public IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>> BridgeLanes { get; }

Property Value

IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>>

ContainerTracks

public IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>> ContainerTracks { get; }

Property Value

IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>>

NumItemProviderBundles

public int NumItemProviderBundles { get; }

Property Value

int

NumItemReceiverBundles

public int NumItemReceiverBundles { get; }

Property Value

int

State

public ISyncable State { get; }

Property Value

ISyncable

Methods

CanExchangeImmediatelyWithCargo(IWagonCargoData)

public bool CanExchangeImmediatelyWithCargo(IWagonCargoData wagonCargo)

Parameters

wagonCargo IWagonCargoData

Returns

bool

CancelExchange()

public void CancelExchange()

ClearContent()

public void ClearContent()

CouldExchangeWithCargo(IWagonCargoData)

public bool CouldExchangeWithCargo(IWagonCargoData wagonCargo)

Parameters

wagonCargo IWagonCargoData

Returns

bool

Exchange(CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>>)

public void Exchange(CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>> transferWindow)

Parameters

transferWindow CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>>

FillingContainerAtLayer(short)

public CargoPackage<TItem> FillingContainerAtLayer(short layer)

Parameters

layer short

Returns

CargoPackage<TItem>

GetAllContainersOfLayer(int, ICollection<CargoPackage<TItem>>)

public void GetAllContainersOfLayer(int layer, ICollection<CargoPackage<TItem>> containers)

Parameters

layer int
containers ICollection<CargoPackage<TItem>>

GetItemProviderBundle(int)

public IItemProviderBundle GetItemProviderBundle(int outputIndex)

Parameters

outputIndex int

Returns

IItemProviderBundle

IsActivelyExchangingWithTrain()

public bool IsActivelyExchangingWithTrain()

Returns

bool

IsLayerActive(int)

public bool IsLayerActive(int layer)

Parameters

layer int

Returns

bool

TraverseLanes<TTraverser>(TTraverser)

public void TraverseLanes<TTraverser>(TTraverser traverser) where TTraverser : IItemLaneTraverser

Parameters

traverser TTraverser

Type Parameters

TTraverser

Update(Ticks, Ticks)

public void Update(Ticks startTicks, Ticks deltaTicks)

Parameters

startTicks Ticks
deltaTicks Ticks