Record Class LootItemEntityPropertyCondition
java.lang.Object
java.lang.Record
net.minecraft.world.level.storage.loot.predicates.LootItemEntityPropertyCondition
- All Implemented Interfaces:
Predicate<LootContext>, LootContextUser, LootItemCondition, Validatable
public record LootItemEntityPropertyCondition(Optional<EntityPredicate> predicate, LootContext.EntityTarget entityTarget)
extends Record
implements LootItemCondition
A LootItemCondition that checks a given
EntityPredicate against a given LootContext.EntityTarget.-
Nested Class Summary
Nested classes/interfaces inherited from interface LootItemCondition
LootItemCondition.Builder -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final LootContext.EntityTargetThe field for theentityTargetrecord component.static final com.mojang.serialization.MapCodec<LootItemEntityPropertyCondition> private final Optional<EntityPredicate> The field for thepredicaterecord component.Fields inherited from interface LootItemCondition
CODEC, DIRECT_CODEC, TYPED_CODEC -
Constructor Summary
ConstructorsConstructorDescriptionLootItemEntityPropertyCondition(Optional<EntityPredicate> predicate, LootContext.EntityTarget entityTarget) Creates an instance of aLootItemEntityPropertyConditionrecord class. -
Method Summary
Modifier and TypeMethodDescriptioncom.mojang.serialization.MapCodec<LootItemEntityPropertyCondition> codec()static LootItemCondition.BuilderReturns the value of theentityTargetrecord component.final booleanIndicates whether some other object is "equal to" this one.Set<ContextKey<?>> final inthashCode()Returns a hash code value for this object.static LootItemCondition.BuilderhasProperties(LootContext.EntityTarget target, EntityPredicate predicate) static LootItemCondition.BuilderhasProperties(LootContext.EntityTarget target, EntityPredicate.Builder predicate) Returns the value of thepredicaterecord component.booleantest(LootContext context) final StringtoString()Returns a string representation of this record class.Methods inherited from interface LootContextUser
validate
-
Field Details
-
predicate
The field for thepredicaterecord component. -
entityTarget
The field for theentityTargetrecord component. -
MAP_CODEC
-
-
Constructor Details
-
LootItemEntityPropertyCondition
public LootItemEntityPropertyCondition(Optional<EntityPredicate> predicate, LootContext.EntityTarget entityTarget) Creates an instance of aLootItemEntityPropertyConditionrecord class.- Parameters:
predicate- the value for thepredicaterecord componententityTarget- the value for theentityTargetrecord component
-
-
Method Details
-
codec
- Specified by:
codecin interfaceLootItemCondition
-
getReferencedContextParams
- Specified by:
getReferencedContextParamsin interfaceLootContextUser
-
test
- Specified by:
testin interfacePredicate<LootContext>
-
entityPresent
-
hasProperties
public static LootItemCondition.Builder hasProperties(LootContext.EntityTarget target, EntityPredicate.Builder predicate) -
hasProperties
public static LootItemCondition.Builder hasProperties(LootContext.EntityTarget target, EntityPredicate predicate) -
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
predicate
Returns the value of thepredicaterecord component.- Returns:
- the value of the
predicaterecord component
-
entityTarget
Returns the value of theentityTargetrecord component.- Returns:
- the value of the
entityTargetrecord component
-