Table of Contents

Class TrainBeltToCargoFillingContainer<TItem>

Namespace
Game.Core.Trains
Assembly
Game.Content.dll
public class TrainBeltToCargoFillingContainer<TItem> : IItemReceiver, IUpdatableSimulation, ISimulation where TItem : unmanaged, IEquatable<TItem>

Type Parameters

TItem
Inheritance
object
TrainBeltToCargoFillingContainer<TItem>
Implements
Extension Methods

Constructors

TrainBeltToCargoFillingContainer(ICargoContainerCapacityConfigProvider, IBeltToCargoItemConverter<TItem>, TrainCargoFillingContainerState<TItem>)

public TrainBeltToCargoFillingContainer(ICargoContainerCapacityConfigProvider containerCapacity, IBeltToCargoItemConverter<TItem> cargoConverter, TrainCargoFillingContainerState<TItem> state)

Parameters

containerCapacity ICargoContainerCapacityConfigProvider
cargoConverter IBeltToCargoItemConverter<TItem>
state TrainCargoFillingContainerState<TItem>

Properties

MaxStep_S

public Steps MaxStep_S { get; }

Property Value

Steps

Package

public CargoPackage<TItem> Package { get; }

Property Value

CargoPackage<TItem>

TimeElapsedSinceItemWasReceived

public Ticks? TimeElapsedSinceItemWasReceived { get; }

Property Value

Ticks?

TimeElapsedSinceMatchingItemWasReceived

public Ticks? TimeElapsedSinceMatchingItemWasReceived { get; }

Property Value

Ticks?

TimeElapsedSinceMismatchingItemWasReceived

public Ticks? TimeElapsedSinceMismatchingItemWasReceived { get; }

Property Value

Ticks?

Methods

CanAcceptItem(IBeltItem)

public bool CanAcceptItem(IBeltItem itemToTransfer)

Parameters

itemToTransfer IBeltItem

Returns

bool

HandOverItem(IBeltItem, Ticks)

public void HandOverItem(IBeltItem itemToTransfer, Ticks remainingTicks)

Parameters

itemToTransfer IBeltItem
remainingTicks Ticks

PrepareNewEmpty()

public void PrepareNewEmpty()

TryGive(ref CargoPackage<TItem>, TItem, int, out int)

public bool TryGive(ref CargoPackage<TItem> package, TItem item, int available, out int actual)

Parameters

package CargoPackage<TItem>
item TItem
available int
actual int

Returns

bool

Update(Ticks, Ticks)

public void Update(Ticks startTicks, Ticks deltaTicks)

Parameters

startTicks Ticks
deltaTicks Ticks