Package dev.architectury.event
Class CompoundEventResult<T>
java.lang.Object
dev.architectury.event.CompoundEventResult<T>
- Type Parameters:
T- the type of the extra result
A result from an event, determines if the event should continue to other listeners,
determines the outcome of the event, and provides extra result for the outcome.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionnet.minecraft.world.InteractionResultHolder<T>Returns the Minecraft-facing result, however ignoresinterruptsFurtherEvaluation().static <T> CompoundEventResult<T>Interrupts the event and stops it from being passed on to other listeners, may or may not set an outcome and extra data of the event.static <T> CompoundEventResult<T>interruptDefault(T object) Interrupts the event and stops it from being passed on to other listeners, does not set an outcome and may or may not set an extra data of the event.static <T> CompoundEventResult<T>interruptFalse(T object) Interrupts the event and stops it from being passed on to other listeners, denotes thefalseoutcome and may or may not set an extra data of the event.booleanReturns whether this result interrupts the evaluation of other listeners.static <T> CompoundEventResult<T>interruptTrue(T object) Interrupts the event and stops it from being passed on to other listeners, denotes thetrueoutcome and may or may not set an extra data of the event.booleanisEmpty()Returns whether the result does not contain an outcome, may befalseonly if the event is deterministic.booleanisFalse()Returns whether the result contains afalseoutcomebooleanReturns whether the result contains an outcome, may betrueonly if the event is deterministic.booleanisTrue()Returns whether the result contains atrueoutcomeobject()Returns the extra data of the result, an passing result will never contain any extra data.static <T> CompoundEventResult<T>pass()Passes the event to other listeners, and does not set an outcome of the event.result()Returns theEventResultview of the result, this returns the same values asinterruptsFurtherEvaluation()andvalue().value()Returns the outcome of the result, an passing result will never have an outcome.
-
Method Details
-
pass
Passes the event to other listeners, and does not set an outcome of the event.- Type Parameters:
T- the type of the extra result- Returns:
- an event that passes the event to other listeners
-
interrupt
Interrupts the event and stops it from being passed on to other listeners, may or may not set an outcome and extra data of the event.- Parameters:
value- the outcome of the event, passingnullhere means the default outcome, which often means falling back to vanilla logicobject- the extra data of the result, this usually is the returning value of the event- Returns:
- an event that interrupts the event
-
interruptTrue
Interrupts the event and stops it from being passed on to other listeners, denotes thetrueoutcome and may or may not set an extra data of the event.- Parameters:
object- the extra data of the result, this usually is the returning value of the event- Returns:
- an event that interrupts the event
-
interruptDefault
Interrupts the event and stops it from being passed on to other listeners, does not set an outcome and may or may not set an extra data of the event.- Parameters:
object- the extra data of the result, this usually is the returning value of the event- Returns:
- an event that interrupts the event
-
interruptFalse
Interrupts the event and stops it from being passed on to other listeners, denotes thefalseoutcome and may or may not set an extra data of the event.- Parameters:
object- the extra data of the result, this usually is the returning value of the event- Returns:
- an event that interrupts the event
-
interruptsFurtherEvaluation
public boolean interruptsFurtherEvaluation()Returns whether this result interrupts the evaluation of other listeners.- Returns:
- whether this result interrupts the evaluation of other listeners
-
value
Returns the outcome of the result, an passing result will never have an outcome.- Returns:
- the outcome of the result, returns
nullif fallback
-
isEmpty
public boolean isEmpty()Returns whether the result does not contain an outcome, may befalseonly if the event is deterministic.- Returns:
- whether the result does not contain an outcome
-
isPresent
public boolean isPresent()Returns whether the result contains an outcome, may betrueonly if the event is deterministic.- Returns:
- whether the result contains an outcome
-
isTrue
public boolean isTrue()Returns whether the result contains atrueoutcome- Returns:
- whether the result contains a
trueoutcome
-
isFalse
public boolean isFalse()Returns whether the result contains afalseoutcome- Returns:
- whether the result contains a
falseoutcome
-
result
Returns theEventResultview of the result, this returns the same values asinterruptsFurtherEvaluation()andvalue().- Returns:
- the
EventResultview of the result.
-
object
Returns the extra data of the result, an passing result will never contain any extra data.- Returns:
- the extra data of the result, returns
nullif passing
-
asMinecraft
Returns the Minecraft-facing result, however ignoresinterruptsFurtherEvaluation().- Returns:
- the Minecraft-facing result
-