Class LevelTicks<T>

java.lang.Object
net.minecraft.world.ticks.LevelTicks<T>
All Implemented Interfaces:
LevelTickAccess<T>, TickAccess<T>

public class LevelTicks<T> extends Object implements LevelTickAccess<T>
  • Field Details

  • Constructor Details

  • Method Details

    • addContainer

      public void addContainer(ChunkPos pChunkPos, LevelChunkTicks<T> pChunkTicks)
    • removeContainer

      public void removeContainer(ChunkPos pChunkPos)
    • schedule

      public void schedule(ScheduledTick<T> pTick)
      Specified by:
      schedule in interface TickAccess<T>
    • tick

      public void tick(long pGameTime, int pMaxAllowedTicks, BiConsumer<BlockPos,T> pTicker)
    • collectTicks

      private void collectTicks(long pGameTime, int pMaxAllowedTicks, ProfilerFiller pProfiler)
    • sortContainersToTick

      private void sortContainersToTick(long pGameTime)
    • drainContainers

      private void drainContainers(long pGameTime, int pMaxAllowedTicks)
    • rescheduleLeftoverContainers

      private void rescheduleLeftoverContainers()
    • updateContainerScheduling

      private void updateContainerScheduling(ScheduledTick<T> pTick)
    • drainFromCurrentContainer

      private void drainFromCurrentContainer(Queue<LevelChunkTicks<T>> pContainersToTick, LevelChunkTicks<T> pLevelChunkTicks, long pGameTime, int pMaxAllowedTicks)
    • scheduleForThisTick

      private void scheduleForThisTick(ScheduledTick<T> pTick)
    • canScheduleMoreTicks

      private boolean canScheduleMoreTicks(int pMaxAllowedTicks)
    • runCollectedTicks

      private void runCollectedTicks(BiConsumer<BlockPos,T> pTicker)
    • cleanupAfterTick

      private void cleanupAfterTick()
    • hasScheduledTick

      public boolean hasScheduledTick(BlockPos pPos, T pType)
      Specified by:
      hasScheduledTick in interface TickAccess<T>
    • willTickThisTick

      public boolean willTickThisTick(BlockPos pPos, T pType)
      Specified by:
      willTickThisTick in interface LevelTickAccess<T>
    • calculateTickSetIfNeeded

      private void calculateTickSetIfNeeded()
    • forContainersInArea

      private void forContainersInArea(BoundingBox pArea, LevelTicks.PosAndContainerConsumer<T> pAction)
    • clearArea

      public void clearArea(BoundingBox pArea)
    • copyArea

      public void copyArea(BoundingBox pArea, Vec3i pOffset)
    • copyAreaFrom

      public void copyAreaFrom(LevelTicks<T> pLevelTicks, BoundingBox pArea, Vec3i pOffset)
    • count

      public int count()
      Specified by:
      count in interface TickAccess<T>