Class InteractionContext

java.lang.Object
com.pixelmonmod.pixelmon.api.npc.interaction.context.InteractionContext

public class InteractionContext extends Object
Interaction context is the information that will be passed down the control logic of the NPC interaction handling as it checks against conditions, and then goes on to execute additional functions.
  • Method Details

    • of

      public static InteractionContext of()
      Gets an instance of a new Interaction context
      Returns:
      new interaction context
    • of

      public static <A> InteractionContext of(ContextKey<A> key, A value)
      Gets an instance of a mew Interaction context with the key and value set already
      Returns:
      new interaction context
    • setContext

      public <A> InteractionContext setContext(ContextKey<A> key, @Nullable A value)
      Sets the context key with the given value
      Type Parameters:
      A - The type of the key and value
      Parameters:
      key - The key
      value - The value being set
      Returns:
      The context instance
    • withPlayer

      public InteractionContext withPlayer(net.minecraft.server.level.ServerPlayer player)
      Adds the generic contexts for the player
      Parameters:
      player - The player for adding the generic contexts
      Returns:
      The context instance
    • getContext

      public <A> Optional<A> getContext(ContextKey<A> key)
      Gets the value stored by a given context key for this interaction context
      Type Parameters:
      A - The type of the key and value
      Parameters:
      key - The key to check for
      Returns:
      The potential value stored
    • getNullableContext

      @Nullable public <A> A getNullableContext(ContextKey<A> key)
      Gets the value stored by a given context key for this interaction context
      Type Parameters:
      A - The type of the key and value
      Parameters:
      key - The key to check for
      Returns:
      The potential value stored