Class AdvancementProviderBase
java.lang.Object
org.moddingx.libx.datagen.provider.AdvancementProviderBase
- All Implemented Interfaces:
net.minecraft.data.DataProvider
public abstract class AdvancementProviderBase
extends Object
implements net.minecraft.data.DataProvider
Base provider for custom
advancements. If you want to have multiple advancement
tabs, use multiple providers. Every provider has one root advancement. All advancements with no
explicit parent will be added to it. You should configure your advancements with the root()
and advancement(String) methods in setup.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassAn advancement factory can be used to customise an advancement in a builder style pattern.static interfaceA task factory can define multiple tasks.Nested classes/interfaces inherited from interface net.minecraft.data.DataProvider
net.minecraft.data.DataProvider.Factory<T extends net.minecraft.data.DataProvider> -
Field Summary
FieldsFields inherited from interface net.minecraft.data.DataProvider
FIXED_ORDER_FIELDS, INDENT_WIDTH, KEY_COMPARATOR, LOGGER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadvancement(String id) Adds anadvancementto the provider identified by an id.advancement(net.minecraft.resources.ResourceLocation id) Adds an advancement to the provider identified by itsResourceLocation.voidadvancement(net.minecraft.resources.ResourceLocation id, net.minecraft.advancements.Advancement advancement) Adds a builtadvancementto the provider.net.minecraft.advancements.Criterion<?> changeDim(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> from, net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> to) Gets acriterionthat requires a player to perform a specific dimension change.protected List<net.neoforged.neoforge.common.conditions.ICondition> Gets a list of conditions for all advancements added by this provider.net.minecraft.advancements.Criterion<?> eat()Gets acriterionthat requires a player to consume (eat/drink) any item.net.minecraft.advancements.Criterion<?> eat(net.minecraft.advancements.critereon.ItemPredicate.Builder food) Gets acriterionthat requires a player to consume (eat/drink) an item.net.minecraft.advancements.Criterion<?> eat(net.minecraft.tags.TagKey<net.minecraft.world.item.Item> food) Gets acriterionthat requires a player to consume (eat/drink) an item.net.minecraft.advancements.Criterion<?> eat(net.minecraft.world.level.ItemLike food) Gets acriterionthat requires a player to consume (eat/drink) an item.net.minecraft.advancements.Criterion<?> enter(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> dimension) Gets acriterionthat requires a player to enter a dimension.net.minecraft.advancements.critereon.ContextAwarePredicateentity(net.minecraft.advancements.critereon.EntityPredicate entity) Gets the givenEntityPredicateas anContextAwarePredicate.net.minecraft.advancements.critereon.ContextAwarePredicateentity(net.minecraft.world.entity.EntityType<?> type) Gets anContextAwarePredicatethat matches for a specific entity type.getName()net.minecraft.advancements.Criterion<?> items(net.minecraft.advancements.critereon.ItemPredicate... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time.final net.minecraft.advancements.Criterion<?> items(net.minecraft.tags.TagKey<net.minecraft.world.item.Item>... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time.net.minecraft.advancements.Criterion<?> items(net.minecraft.world.level.ItemLike... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time.itemTasks(net.minecraft.advancements.critereon.ItemPredicate... items) Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method.itemTasks(net.minecraft.tags.TagKey<net.minecraft.world.item.Item>... items) Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method.itemTasks(net.minecraft.world.level.ItemLike... items) Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method.net.minecraft.advancements.Criterion<?> leave(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> dimension) Gets acriterionthat requires a player to leave a dimension.root()Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider.Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider.Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider.run(net.minecraft.data.CachedOutput cache) abstract voidsetup()final net.minecraft.advancements.critereon.ItemPredicate.Builderstack(net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor some enchantments.net.minecraft.advancements.critereon.ItemPredicate.Builderstack(net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment> ench, int min) Gets anItemPredicatefor an enchantment with a minimum level.final net.minecraft.advancements.critereon.ItemPredicate.Builderstack(net.minecraft.tags.TagKey<net.minecraft.world.item.Item> item, net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor an item and optionally some enchantments.final net.minecraft.advancements.critereon.ItemPredicate.Builderstack(net.minecraft.world.level.ItemLike item, net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor an item and optionally some enchantments.
-
Field Details
-
mod
-
packTarget
-
-
Constructor Details
-
AdvancementProviderBase
-
-
Method Details
-
setup
public abstract void setup() -
conditions
Gets a list of conditions for all advancements added by this provider. -
getName
- Specified by:
getNamein interfacenet.minecraft.data.DataProvider
-
run
- Specified by:
runin interfacenet.minecraft.data.DataProvider
-
root
Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider. The root id will be the modid.- See Also:
-
root
Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider.- Parameters:
id- The root id. The actual advancement id will bemodid:id/root- See Also:
-
root
Gets anAdvancementProviderBase.AdvancementFactoryto customise the rootadvancementfor this provider.- Parameters:
namespace- The namespace of the root advancement.id- The root id. The actual advancement id will benamespace:id/root
-
advancement
public void advancement(net.minecraft.resources.ResourceLocation id, net.minecraft.advancements.Advancement advancement) Adds a builtadvancementto the provider. -
advancement
public AdvancementProviderBase.AdvancementFactory advancement(net.minecraft.resources.ResourceLocation id) Adds an advancement to the provider identified by itsResourceLocation. Returns anAdvancementProviderBase.AdvancementFactoryto customise the advancement. -
advancement
Adds anadvancementto the provider identified by an id. TheResourceLocationis built with the modid and the root advancement id. Returns anAdvancementProviderBase.AdvancementFactoryto customise the advancement. -
items
public net.minecraft.advancements.Criterion<?> items(net.minecraft.world.level.ItemLike... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time. -
items
@SafeVarargs public final net.minecraft.advancements.Criterion<?> items(net.minecraft.tags.TagKey<net.minecraft.world.item.Item>... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time. -
items
public net.minecraft.advancements.Criterion<?> items(net.minecraft.advancements.critereon.ItemPredicate... items) Gets acriterionthat requires all of the given items to be in the inventory at the same time. -
itemTasks
Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method. -
itemTasks
@SafeVarargs public final AdvancementProviderBase.TaskFactory itemTasks(net.minecraft.tags.TagKey<net.minecraft.world.item.Item>... items) Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method. -
itemTasks
public AdvancementProviderBase.TaskFactory itemTasks(net.minecraft.advancements.critereon.ItemPredicate... items) Gets aAdvancementProviderBase.TaskFactorythat adds a task for every item given to this method. -
eat
public net.minecraft.advancements.Criterion<?> eat()Gets acriterionthat requires a player to consume (eat/drink) any item. -
eat
public net.minecraft.advancements.Criterion<?> eat(net.minecraft.world.level.ItemLike food) Gets acriterionthat requires a player to consume (eat/drink) an item. -
eat
public net.minecraft.advancements.Criterion<?> eat(net.minecraft.tags.TagKey<net.minecraft.world.item.Item> food) Gets acriterionthat requires a player to consume (eat/drink) an item. -
eat
public net.minecraft.advancements.Criterion<?> eat(net.minecraft.advancements.critereon.ItemPredicate.Builder food) Gets acriterionthat requires a player to consume (eat/drink) an item. -
leave
public net.minecraft.advancements.Criterion<?> leave(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> dimension) Gets acriterionthat requires a player to leave a dimension. -
enter
public net.minecraft.advancements.Criterion<?> enter(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> dimension) Gets acriterionthat requires a player to enter a dimension. -
changeDim
public net.minecraft.advancements.Criterion<?> changeDim(net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> from, net.minecraft.resources.ResourceKey<net.minecraft.world.level.Level> to) Gets acriterionthat requires a player to perform a specific dimension change. -
entity
public net.minecraft.advancements.critereon.ContextAwarePredicate entity(net.minecraft.advancements.critereon.EntityPredicate entity) Gets the givenEntityPredicateas anContextAwarePredicate. -
entity
public net.minecraft.advancements.critereon.ContextAwarePredicate entity(net.minecraft.world.entity.EntityType<?> type) Gets anContextAwarePredicatethat matches for a specific entity type. -
stack
@SafeVarargs public final net.minecraft.advancements.critereon.ItemPredicate.Builder stack(net.minecraft.world.level.ItemLike item, net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor an item and optionally some enchantments. -
stack
@SafeVarargs public final net.minecraft.advancements.critereon.ItemPredicate.Builder stack(net.minecraft.tags.TagKey<net.minecraft.world.item.Item> item, net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor an item and optionally some enchantments. -
stack
@SafeVarargs public final net.minecraft.advancements.critereon.ItemPredicate.Builder stack(net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment>... enchs) Gets anItemPredicatefor some enchantments. -
stack
public net.minecraft.advancements.critereon.ItemPredicate.Builder stack(net.minecraft.resources.ResourceKey<net.minecraft.world.item.enchantment.Enchantment> ench, int min) Gets anItemPredicatefor an enchantment with a minimum level.
-