Interface IPlayerExtension

All Known Implementing Classes:
AbstractClientPlayer, FakePlayer, GameTestPlayer, LocalPlayer, Player, RemotePlayer, ServerPlayer

public interface IPlayerExtension
  • Method Details

    • self

      private Player self()
    • isCloseEnough

      default boolean isCloseEnough(Entity entity, double dist)
      Utility check to see if the player is close enough to a target entity. Uses "eye-to-closest-corner" checks.
      Parameters:
      entity - The entity being checked against
      dist - The max distance allowed
      Returns:
      If the eye-to-center distance between this player and the passed entity is less than dist.
    • openMenu

      default OptionalInt openMenu(MenuProvider menuProvider, BlockPos pos)
      Request to open a GUI on the client, from the server

      Refer to IMenuTypeExtension.create(IContainerFactory) for creating a MenuType that can consume the extra data sent to the client by this method.

      Use FriendlyByteBuf.readBlockPos() to read the position you pass to this method.

      Parameters:
      menuProvider - A supplier of container properties including the registry name of the container
      pos - A block pos, which will be encoded into the additional data for this request, after data written by
      invalid reference
      IMenuProviderExtension#writeClientSideData(AbstractContainerMenu, RegistryFriendlyByteBuf)
      .
    • openMenu

      default OptionalInt openMenu(MenuProvider menuProvider, Consumer<RegistryFriendlyByteBuf> extraDataWriter)
      Request to open a GUI on the client, from the server

      Refer to IMenuTypeExtension.create(IContainerFactory) for creating a MenuType that can consume the extra data sent to the client by this method.

      The maximum size for #extraDataWriter is 32600 bytes.

      Parameters:
      menuProvider - A supplier of container properties including the registry name of the container
      extraDataWriter - Consumer to write any additional data the GUI needs. This data is written after
      invalid reference
      IMenuProviderExtension#writeClientSideData(AbstractContainerMenu, RegistryFriendlyByteBuf)
      .
      Returns:
      The window ID of the opened GUI, or empty if the GUI could not be opened
    • mayFly

      default boolean mayFly()
      Determine whether a player is allowed creative flight via game mode or attribute.

      Modders are discouraged from setting Abilities.mayfly directly.

      Returns:
      true when creative flight is available
      See Also:
    • isFakePlayer

      default boolean isFakePlayer()
      Returns whether this player is a fake player, such as FakePlayer.
      Returns:
      whether this player is a fake player, such as FakePlayer