Class PlayerInteractEvent.EntityInteractSpecific

All Implemented Interfaces:
net.neoforged.bus.api.ICancellableEvent
Enclosing class:
PlayerInteractEvent

public static class PlayerInteractEvent.EntityInteractSpecific extends PlayerInteractEvent implements net.neoforged.bus.api.ICancellableEvent
This event is fired on both sides whenever a player right clicks an entity. "Interact at" is an interact where the local vector (which part of the entity you clicked) is known. The state of this event affects whether Entity.interactAt(Player, Vec3, InteractionHand) is called. Let result be the return value of Entity.interactAt(Player, Vec3, InteractionHand), or cancellationResult if the event is cancelled. If we are on the client and result is not InteractionResult.SUCCESS, the client will then try PlayerInteractEvent.EntityInteract.
  • Field Details

    • cancellationResult

      private InteractionResult cancellationResult
    • localPos

      private final Vec3 localPos
    • target

      private final Entity target
  • Constructor Details

  • Method Details

    • getLocalPos

      public Vec3 getLocalPos()
      Returns the local interaction position. This is a 3D vector, where (0, 0, 0) is centered exactly at the center of the entity's bounding box at their feet. This means the X and Z values will be in the range [-width / 2, width / 2] while Y values will be in the range [0, height]
      Returns:
      The local position
    • getTarget

      public Entity getTarget()
    • getCancellationResult

      public InteractionResult getCancellationResult()
      Returns:
      The InteractionResult that will be returned to vanilla if the event is cancelled, instead of calling the relevant method of the event. By default, this is InteractionResult.PASS, meaning cancelled events will cause the client to keep trying more interactions until something works.
    • setCancellationResult

      public void setCancellationResult(InteractionResult result)
      Set the InteractionResult that will be returned to vanilla if the event is cancelled, instead of calling the relevant method of the event.