Class ChunkTicketLevelUpdatedEvent

java.lang.Object
net.minecraftforge.eventbus.api.Event
net.minecraftforge.event.level.ChunkTicketLevelUpdatedEvent

public class ChunkTicketLevelUpdatedEvent extends net.minecraftforge.eventbus.api.Event
This event is fired whenever a chunk has its ticket level changed via the server's ChunkMap.

This event does not fire if the new ticket level is the same as the old level, or if both the new AND old ticket levels represent values past the max chunk distance.

Due to how vanilla processes ticket level changes this event may be fired "twice" in one tick for the same chunk. The scenario where this happens is when increasing the level from say 31 (ticking) to 32, the way vanilla does it is by first changing it from 31 to 46, and then queuing the update from 46 to 32. However, when going from 32 to 31, vanilla is able to go directly.

This event is not cancellable and does not have a result.

This event is fired on the main Forge event bus only on the logical server.

  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraftforge.eventbus.api.Event

    net.minecraftforge.eventbus.api.Event.HasResult, net.minecraftforge.eventbus.api.Event.Result
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final @Nullable ChunkHolder
     
    private final long
     
    private final ServerLevel
     
    private final int
     
    private final int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    ChunkTicketLevelUpdatedEvent(ServerLevel level, long chunkPos, int oldTicketLevel, int newTicketLevel, @Nullable ChunkHolder chunkHolder)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    @Nullable ChunkHolder
    Returns chunk that had its ticket level updated.
    long
    Returns the long representation of the chunk position the ticket level changed for.
    Returns the server level containing the chunk.
    int
    Returns the new ticket level for the chunk.
    int
    Returns the previous ticket level the chunk had.

    Methods inherited from class net.minecraftforge.eventbus.api.Event

    getListenerList, getPhase, getResult, hasResult, isCancelable, isCanceled, setCanceled, setPhase, setResult

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • level

      private final ServerLevel level
    • chunkPos

      private final long chunkPos
    • oldTicketLevel

      private final int oldTicketLevel
    • newTicketLevel

      private final int newTicketLevel
    • chunkHolder

      @Nullable private final @Nullable ChunkHolder chunkHolder
  • Constructor Details

    • ChunkTicketLevelUpdatedEvent

      public ChunkTicketLevelUpdatedEvent(ServerLevel level, long chunkPos, int oldTicketLevel, int newTicketLevel, @Nullable @Nullable ChunkHolder chunkHolder)
  • Method Details

    • getLevel

      public ServerLevel getLevel()
      Returns the server level containing the chunk.
      Returns:
      the server level containing the chunk
    • getChunkPos

      public long getChunkPos()
      Returns the long representation of the chunk position the ticket level changed for.
      Returns:
      the long representation of the chunk position the ticket level changed for
    • getOldTicketLevel

      public int getOldTicketLevel()
      Returns the previous ticket level the chunk had.
      Returns:
      the previous ticket level the chunk had
    • getNewTicketLevel

      public int getNewTicketLevel()
      Returns the new ticket level for the chunk.
      Returns:
      the new ticket level for the chunk
    • getChunkHolder

      @Nullable public @Nullable ChunkHolder getChunkHolder()
      Returns chunk that had its ticket level updated.
      Returns:
      chunk that had its ticket level updated