java.lang.Object
com.simibubi.create.content.logistics.trains.entity.Train

public class Train extends Object
  • Field Details

    • speed

      public double speed
    • targetSpeed

      public double targetSpeed
    • speedBeforeStall

      public Double speedBeforeStall
    • throttle

      public double throttle
    • honk

      public boolean honk
    • id

      public UUID id
    • owner

      public UUID owner
    • graph

      public TrackGraph graph
    • runtime

      public ScheduleRuntime runtime
    • icon

      public TrainIconType icon
    • name

      public net.minecraft.network.chat.Component name
    • status

      public TrainStatus status
    • invalid

      public boolean invalid
    • manualSteer

      public TravellingPoint.SteerDirection manualSteer
    • manualTick

      public boolean manualTick
    • currentStation

      public UUID currentStation
    • currentlyBackwards

      public boolean currentlyBackwards
    • doubleEnded

      public boolean doubleEnded
    • carriages

      public List<Carriage> carriages
    • carriageSpacing

      public List<Integer> carriageSpacing
    • updateSignalBlocks

      public boolean updateSignalBlocks
    • occupiedSignalBlocks

      public Map<UUID,UUID> occupiedSignalBlocks
    • reservedSignalBlocks

      public Set<UUID> reservedSignalBlocks
    • occupiedObservers

      public Set<UUID> occupiedObservers
    • cachedObserverFiltering

      public Map<UUID,Pair<Integer,Boolean>> cachedObserverFiltering
    • migrationCooldown

      public int migrationCooldown
    • derailed

      public boolean derailed
    • fuelTicks

      public int fuelTicks
    • honkTicks

      public int honkTicks
    • lowHonk

      public Boolean lowHonk
    • honkPitch

      public int honkPitch
    • backwardsDriver

      public net.minecraft.world.entity.player.Player backwardsDriver
  • Constructor Details

  • Method Details

    • earlyTick

      public void earlyTick(net.minecraft.world.level.Level level)
    • tick

      public void tick(net.minecraft.world.level.Level level)
    • frontSignalListener

      public TravellingPoint.IEdgePointListener frontSignalListener()
    • cancelStall

      public void cancelStall()
    • backSignalListener

      public TravellingPoint.IEdgePointListener backSignalListener()
    • hasForwardConductor

      public boolean hasForwardConductor()
    • hasBackwardConductor

      public boolean hasBackwardConductor()
    • findCollidingTrain

      public static Pair<Train,net.minecraft.world.phys.Vec3> findCollidingTrain(net.minecraft.world.level.Level level, net.minecraft.world.phys.Vec3 start, net.minecraft.world.phys.Vec3 end, Train ignore, net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> dimension)
    • crash

      public void crash()
    • disassemble

      public boolean disassemble(net.minecraft.core.Direction assemblyDirection, net.minecraft.core.BlockPos pos)
    • canDisassemble

      public boolean canDisassemble()
    • isTravellingOn

      public boolean isTravellingOn(TrackNode node)
    • detachFromTracks

      public void detachFromTracks()
    • forEachTravellingPoint

      public void forEachTravellingPoint(Consumer<TravellingPoint> callback)
    • forEachTravellingPointBackwards

      public void forEachTravellingPointBackwards(BiConsumer<TravellingPoint,Double> callback)
    • reattachToTracks

      public void reattachToTracks(net.minecraft.world.level.Level level)
    • getTotalLength

      public int getTotalLength()
    • leaveStation

      public void leaveStation()
    • arriveAt

      public void arriveAt(GlobalStation station)
    • setCurrentStation

      public void setCurrentStation(GlobalStation station)
    • getCurrentStation

      public GlobalStation getCurrentStation()
    • getOwner

      @Nullable public net.minecraft.world.entity.LivingEntity getOwner(net.minecraft.world.level.Level level)
    • approachTargetSpeed

      public void approachTargetSpeed(float accelerationMod)
    • collectInitiallyOccupiedSignalBlocks

      public void collectInitiallyOccupiedSignalBlocks()
    • shouldCarriageSyncThisTick

      public boolean shouldCarriageSyncThisTick(long gameTicks, int updateInterval)
    • getEndpointEdges

      public Couple<Couple<TrackNode>> getEndpointEdges()
    • getNavigationPenalty

      public int getNavigationPenalty()
    • burnFuel

      public void burnFuel()
    • maxSpeed

      public float maxSpeed()
    • maxTurnSpeed

      public float maxTurnSpeed()
    • acceleration

      public float acceleration()
    • write

      public net.minecraft.nbt.CompoundTag write(DimensionPalette dimensions)
    • read

      public static Train read(net.minecraft.nbt.CompoundTag tag, Map<UUID,TrackGraph> trackNetworks, DimensionPalette dimensions)
    • countPlayerPassengers

      public int countPlayerPassengers()
    • determineHonk

      public void determineHonk(net.minecraft.world.level.Level level)
    • distanceToLocationSqr

      public float distanceToLocationSqr(net.minecraft.world.level.Level level, net.minecraft.world.phys.Vec3 location)