Skip to content

Commit

Permalink
Very much work in progress 1.21 port
Browse files Browse the repository at this point in the history
  • Loading branch information
P3pp3rF1y committed Jun 28, 2024
1 parent cb27ae2 commit 71b3fcd
Show file tree
Hide file tree
Showing 35 changed files with 96 additions and 97 deletions.
6 changes: 2 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ plugins {
id 'java-library'
id 'idea'
id 'maven-publish'
id 'net.neoforged.gradle.userdev' version '7.0.101'
id 'net.neoforged.gradle.userdev' version '7.0.142'
id "org.sonarqube" version "5.0.0.4638"
}

Expand Down Expand Up @@ -46,7 +46,7 @@ base {
archivesName = mod_id
}

java.toolchain.languageVersion = JavaLanguageVersion.of(17)
java.toolchain.languageVersion = JavaLanguageVersion.of(21)

minecraft {
accessTransformers {
Expand All @@ -55,8 +55,6 @@ minecraft {
}
}

sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '17'

runs {
configureEach {
systemProperty 'forge.logging.markers', 'REGISTRIES'
Expand Down
20 changes: 10 additions & 10 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false
org.gradle.debug=false

neogradle.subsystems.parchment.minecraftVersion=1.20.3
neogradle.subsystems.parchment.mappingsVersion=2023.12.31
minecraft_version=1.20.4
minecraft_version_range=[1.20.4,1.21)
neo_version=20.4.223
neo_version_range=[20.4,)
loader_version_range=[2,)
neogradle.subsystems.parchment.minecraftVersion=1.20.6
neogradle.subsystems.parchment.mappingsVersion=2024.05.01
minecraft_version=1.21
minecraft_version_range=[1.21,1.21.1)
neo_version=21.0.0-beta
neo_version_range=[21.0.0-beta,)
loader_version_range=[4,)

mod_id=sophisticatedbackpacks
mod_name=Sophisticated Backpacks
Expand All @@ -24,9 +24,9 @@ mod_issue_tracker_url=https://github.com/P3pp3rF1y/SophisticatedBackpacks/issues
sonar_project_key=sophisticatedbackpacks:SophisticatedBackpacks
github_package_url=https://maven.pkg.github.com/P3pp3rF1y/SophisticatedBackpacks

jei_mc_version=1.20.4-neoforge
jei_version=17.3.0.49
curios_version=7.3.4+1.20.4
jei_mc_version=1.21-neoforge
jei_version=19.0.0.1
curios_version=8.0.0+1.20.6
#botania_version=1.19.2-439-FORGE-SNAPSHOT
#patchouli_version=1.19.2-78-SNAPSHOT
balm_cf_file_id=5139962
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/net/p3pp3rf1y/sophisticatedbackpacks/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -272,8 +272,8 @@ private void initEntityLootTables() {
String entityRegistryName = entityLoot[0];
String lootTableName = entityLoot[1];

BuiltInRegistries.ENTITY_TYPE.getOptional(new ResourceLocation(entityRegistryName))
.ifPresent(entityType -> entityLootTables.put(entityType, lootTableName.equals("null") ? null : new ResourceLocation(lootTableName)));
BuiltInRegistries.ENTITY_TYPE.getOptional(ResourceLocation.fromNamespaceAndPath(entityRegistryName))
.ifPresent(entityType -> entityLootTables.put(entityType, lootTableName.equals("null") ? null : ResourceLocation.fromNamespaceAndPath(lootTableName)));
}
}

Expand Down Expand Up @@ -361,7 +361,7 @@ private void loadDisallowedSet() {
noInteractionBlocksSet = new HashSet<>();

for (String disallowedItemName : noInteractionBlocksList.get()) {
ResourceLocation registryName = new ResourceLocation(disallowedItemName);
ResourceLocation registryName = ResourceLocation.fromNamespaceAndPath(disallowedItemName);
if (BuiltInRegistries.BLOCK.containsKey(registryName)) {
noInteractionBlocksSet.add(BuiltInRegistries.BLOCK.get(registryName));
}
Expand Down Expand Up @@ -394,7 +394,7 @@ private void loadDisallowedSet() {
noConnnectionBlocksSet = new HashSet<>();

for (String disallowedItemName : noConnectionBlocksList.get()) {
ResourceLocation registryName = new ResourceLocation(disallowedItemName);
ResourceLocation registryName = ResourceLocation.fromNamespaceAndPath(disallowedItemName);
if (BuiltInRegistries.BLOCK.containsKey(registryName)) {
noConnnectionBlocksSet.add(BuiltInRegistries.BLOCK.get(registryName));
}
Expand Down Expand Up @@ -435,7 +435,7 @@ private void loadDisallowedSet() {
disallowedItemsSet = new HashSet<>();

for (String disallowedItemName : disallowedItemsList.get()) {
ResourceLocation registryName = new ResourceLocation(disallowedItemName);
ResourceLocation registryName = ResourceLocation.fromNamespaceAndPath(disallowedItemName);
BuiltInRegistries.ITEM.getOptional(registryName).ifPresent(disallowedItemsSet::add);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ private void onAddReloadListener(AddReloadListenerEvent event) {
}

public static ResourceLocation getRL(String regName) {
return new ResourceLocation(getRegistryName(regName));
return ResourceLocation.fromNamespaceAndPath(getRegistryName(regName));
}

public static String getRegistryName(String regName) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public CompoundTag serializeToNBT() {

public static AccessLogRecord deserializeFromNBT(CompoundTag nbt) {
return new AccessLogRecord(
new ResourceLocation(nbt.getString("backpackItemRegistryName")),
ResourceLocation.fromNamespaceAndPath(nbt.getString("backpackItemRegistryName")),
nbt.getUUID("backpackUuid"),
nbt.getString("playerName"),
nbt.getString("backpackName"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import net.minecraft.world.inventory.Slot;
import net.minecraft.world.inventory.tooltip.TooltipComponent;
import net.minecraft.world.item.DyeColor;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.item.context.BlockPlaceContext;
Expand Down Expand Up @@ -121,8 +122,8 @@ public void addCreativeTabItems(Consumer<ItemStack> itemConsumer) {
}

@Override
public void appendHoverText(ItemStack stack, @Nullable Level worldIn, List<Component> tooltip, TooltipFlag flagIn) {
super.appendHoverText(stack, worldIn, tooltip, flagIn);
public void appendHoverText(ItemStack stack, Item.TooltipContext context, List<Component> tooltip, TooltipFlag flagIn) {
super.appendHoverText(stack, context, tooltip, flagIn);
if (flagIn == TooltipFlag.ADVANCED) {
BackpackWrapper.fromData(stack).getContentsUuid()
.ifPresent(uuid -> tooltip.add(Component.literal("UUID: " + uuid).withStyle(ChatFormatting.DARK_GRAY)));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -506,7 +506,7 @@ private void fillWithLootFromTable(Player playerEntity, String lootName) {
return;
}

ResourceLocation lootTableName = new ResourceLocation(lootName);
ResourceLocation lootTableName = ResourceLocation.fromNamespaceAndPath(lootName);
float lootPercentage = NBTHelper.getFloat(getBackpackStack(), LOOT_PERCENTAGE_TAG).orElse(0f);

getBackpackStack().removeTagKey(LOOT_TABLE_NAME_TAG);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ private ClientEventHandler() {
}

private static final String BACKPACK_REG_NAME = "backpack";
public static final ModelLayerLocation BACKPACK_LAYER = new ModelLayerLocation(new ResourceLocation(SophisticatedBackpacks.MOD_ID, BACKPACK_REG_NAME), "main");
public static final ModelLayerLocation BACKPACK_LAYER = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, BACKPACK_REG_NAME), "main");

public static void registerHandlers(IEventBus modBus) {
modBus.addListener(ClientEventHandler::onModelRegistry);
Expand All @@ -58,7 +58,7 @@ private static void onPlayerLoggingIn(ClientPlayerNetworkEvent.LoggingIn event)
}

private static void onModelRegistry(ModelEvent.RegisterGeometryLoaders event) {
event.register(new ResourceLocation(SophisticatedBackpacks.MOD_ID, BACKPACK_REG_NAME), BackpackDynamicModel.Loader.INSTANCE);
event.register(ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, BACKPACK_REG_NAME), BackpackDynamicModel.Loader.INSTANCE);
}

public static void registerReloadListener(RegisterClientReloadListenersEvent event) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ public ChunkRenderTypeSet getRenderTypes(@NotNull BlockState state, @NotNull Ran

public static final Vector3f DEFAULT_ROTATION = new Vector3f(0.0F, 0.0F, 0.0F);
private static final ItemTransforms ITEM_TRANSFORMS = createItemTransforms();
private static final ResourceLocation BACKPACK_MODULES_TEXTURE = new ResourceLocation("sophisticatedbackpacks:block/backpack_modules");
private static final ResourceLocation BACKPACK_MODULES_TEXTURE = ResourceLocation.fromNamespaceAndPath("sophisticatedbackpacks:block/backpack_modules");

@SuppressWarnings("java:S4738")
//ItemTransforms require Guava ImmutableMap to be passed in so no way to change that to java Map
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ public class BackpackModel extends AgeableListModel<LivingEntity> implements IBa
entityTranslations.put(EntityType.ENDERMAN, new Vec3(0, -0.8, 0));
}

private static final ResourceLocation BACKPACK_ENTITY_TEXTURE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, "textures/entity/backpack.png");
private static final ResourceLocation TANK_GLASS_TEXTURE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, "textures/entity/tank_glass.png");
private static final ResourceLocation BACKPACK_ENTITY_TEXTURE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, "textures/entity/backpack.png");
private static final ResourceLocation TANK_GLASS_TEXTURE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, "textures/entity/tank_glass.png");
public static final float CHILD_Y_OFFSET = 0.3F;
public static final float CHILD_Z_OFFSET = 0.1F;
public static final float CHILD_SCALE = 0.55F;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ private static void addMultipleColorsRecipe(List<RecipeHolder<CraftingRecipe>> r
BackpackWrapper.fromData(backpackOutput).setColors(clothColor, trimColor);

ShapedRecipePattern pattern = new ShapedRecipePattern(3, 1, ingredients, Optional.empty());
ResourceLocation id = new ResourceLocation(SophisticatedBackpacks.MOD_ID, "multiple_colors");
ResourceLocation id = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, "multiple_colors");
recipes.add(new RecipeHolder<>(id, new ShapedRecipe("", CraftingBookCategory.MISC, pattern, backpackOutput)));
}

Expand All @@ -59,7 +59,7 @@ private static void addSingleColorRecipes(List<RecipeHolder<CraftingRecipe>> rec
ingredients.add(Ingredient.of(color.getTag()));

ShapedRecipePattern pattern = new ShapedRecipePattern(1, 2, ingredients, Optional.empty());
ResourceLocation id = new ResourceLocation(SophisticatedBackpacks.MOD_ID, "single_color_" + color.getSerializedName());
ResourceLocation id = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, "single_color_" + color.getSerializedName());
recipes.add(new RecipeHolder<>(id, new ShapedRecipe("", CraftingBookCategory.MISC, pattern, backpackOutput)));
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ public static void setAdditionalCatalystRegistrar(Consumer<IRecipeCatalystRegist

@Override
public ResourceLocation getPluginUid() {
return new ResourceLocation(SophisticatedBackpacks.MOD_ID, "default");
return ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, "default");
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

public class CopyBackpackDataFunction implements LootItemFunction {
private static final CopyBackpackDataFunction INSTANCE = new CopyBackpackDataFunction();
public static final Codec<CopyBackpackDataFunction> CODEC = MapCodec.unit(INSTANCE).stable().codec();
public static final MapCodec<CopyBackpackDataFunction> CODEC = MapCodec.unit(INSTANCE).stable();
private CopyBackpackDataFunction() {}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@

public class SBInjectLootSubProvider implements LootTableSubProvider {
private static final String INJECT_FOLDER = "inject/";
public static final ResourceLocation ABANDONED_MINESHAFT = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.ABANDONED_MINESHAFT.getPath());
public static final ResourceLocation BASTION_TREASURE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.BASTION_TREASURE.getPath());
public static final ResourceLocation DESERT_PYRAMID = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.DESERT_PYRAMID.getPath());
public static final ResourceLocation END_CITY_TREASURE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.END_CITY_TREASURE.getPath());
public static final ResourceLocation NETHER_BRIDGE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.NETHER_BRIDGE.getPath());
public static final ResourceLocation SHIPWRECK_TREASURE = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.SHIPWRECK_TREASURE.getPath());
public static final ResourceLocation SIMPLE_DUNGEON = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.SIMPLE_DUNGEON.getPath());
public static final ResourceLocation WOODLAND_MANSION = new ResourceLocation(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.WOODLAND_MANSION.getPath());
public static final ResourceLocation ABANDONED_MINESHAFT = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.ABANDONED_MINESHAFT.getPath());
public static final ResourceLocation BASTION_TREASURE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.BASTION_TREASURE.getPath());
public static final ResourceLocation DESERT_PYRAMID = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.DESERT_PYRAMID.getPath());
public static final ResourceLocation END_CITY_TREASURE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.END_CITY_TREASURE.getPath());
public static final ResourceLocation NETHER_BRIDGE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.NETHER_BRIDGE.getPath());
public static final ResourceLocation SHIPWRECK_TREASURE = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.SHIPWRECK_TREASURE.getPath());
public static final ResourceLocation SIMPLE_DUNGEON = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.SIMPLE_DUNGEON.getPath());
public static final ResourceLocation WOODLAND_MANSION = ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.MOD_ID, INJECT_FOLDER + BuiltInLootTables.WOODLAND_MANSION.getPath());
public static final Set<ResourceLocation> ALL_TABLES = Set.of(ABANDONED_MINESHAFT, BASTION_TREASURE, DESERT_PYRAMID, END_CITY_TREASURE, NETHER_BRIDGE, SHIPWRECK_TREASURE, SIMPLE_DUNGEON, WOODLAND_MANSION);

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
public class SBLootEnabledCondition implements LootItemCondition {

private static final SBLootEnabledCondition INSTANCE = new SBLootEnabledCondition();
public static final Codec<SBLootEnabledCondition> CODEC = MapCodec.unit(INSTANCE).stable().codec();
public static final MapCodec<SBLootEnabledCondition> CODEC = MapCodec.unit(INSTANCE).stable();
private SBLootEnabledCondition() {
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.pattern("SLS")
.pattern("SCS")
.pattern("LLL")
.define('L', Tags.Items.LEATHER)
.define('L', Tags.Items.LEATHERS)
.define('C', Tags.Items.CHESTS_WOODEN)
.define('S', Tags.Items.STRING)
.define('S', Tags.Items.STRINGS)
.unlockedBy("has_leather", hasLeather())
.save(recipeOutput);

Expand Down Expand Up @@ -80,7 +80,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.define('I', Tags.Items.INGOTS_IRON)
.define('B', ModItems.COPPER_BACKPACK.get())
.unlockedBy("has_copper_backpack", has(ModItems.COPPER_BACKPACK.get()))
.save(recipeOutput, new ResourceLocation(SophisticatedBackpacks.getRegistryName("iron_backpack_from_copper")));
.save(recipeOutput, ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.getRegistryName("iron_backpack_from_copper")));

ShapeBasedRecipeBuilder.shaped(ModItems.COPPER_BACKPACK.get(), BackpackUpgradeRecipe::new)
.pattern("CCC")
Expand All @@ -99,7 +99,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.pattern("RRR")
.define('B', ModItems.UPGRADE_BASE.get())
.define('R', Tags.Items.DUSTS_REDSTONE)
.define('S', Tags.Items.STRING)
.define('S', Tags.Items.STRINGS)
.define('P', Blocks.STICKY_PISTON)
.unlockedBy(HAS_UPGRADE_BASE, has(ModItems.UPGRADE_BASE.get()))
.save(recipeOutput);
Expand All @@ -108,9 +108,9 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.pattern("SIS")
.pattern("ILI")
.pattern("SIS")
.define('L', Tags.Items.LEATHER)
.define('L', Tags.Items.LEATHERS)
.define('I', Tags.Items.INGOTS_IRON)
.define('S', Tags.Items.STRING)
.define('S', Tags.Items.STRINGS)
.unlockedBy("has_leather", hasLeather())
.save(recipeOutput);

Expand All @@ -131,7 +131,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.pattern("RSR")
.define('B', ModItems.UPGRADE_BASE.get())
.define('R', Tags.Items.DUSTS_REDSTONE)
.define('S', Tags.Items.STRING)
.define('S', Tags.Items.STRINGS)
.unlockedBy(HAS_UPGRADE_BASE, has(ModItems.UPGRADE_BASE.get()))
.save(recipeOutput);

Expand Down Expand Up @@ -177,7 +177,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.define('R', Tags.Items.DUSTS_REDSTONE)
.define('M', ModItems.MAGNET_UPGRADE.get())
.unlockedBy("has_magnet_upgrade", has(ModItems.MAGNET_UPGRADE.get()))
.save(recipeOutput, new ResourceLocation(SophisticatedBackpacks.getRegistryName("advanced_magnet_upgrade_from_basic")));
.save(recipeOutput, ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.getRegistryName("advanced_magnet_upgrade_from_basic")));

ShapeBasedRecipeBuilder.shaped(ModItems.FEEDING_UPGRADE.get())
.pattern(" C ")
Expand Down Expand Up @@ -219,7 +219,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.pattern("ROR")
.define('B', ModItems.UPGRADE_BASE.get())
.define('E', Tags.Items.ENDER_PEARLS)
.define('O', Tags.Items.OBSIDIAN)
.define('O', Tags.Items.OBSIDIANS)
.define('R', Tags.Items.DUSTS_REDSTONE)
.unlockedBy(HAS_UPGRADE_BASE, has(ModItems.UPGRADE_BASE.get()))
.save(recipeOutput);
Expand Down Expand Up @@ -395,7 +395,7 @@ protected void buildRecipes(RecipeOutput recipeOutput) {
.define('S', ModItems.STACK_UPGRADE_STARTER_TIER.get())
.define('I', Tags.Items.STORAGE_BLOCKS_IRON)
.unlockedBy(HAS_UPGRADE_BASE, has(ModItems.UPGRADE_BASE.get()))
.save(recipeOutput, new ResourceLocation(SophisticatedBackpacks.getRegistryName("stack_upgrade_tier_1_from_starter")));
.save(recipeOutput, ResourceLocation.fromNamespaceAndPath(SophisticatedBackpacks.getRegistryName("stack_upgrade_tier_1_from_starter")));

ShapeBasedRecipeBuilder.shaped(ModItems.STACK_UPGRADE_TIER_2.get())
.pattern("GGG")
Expand Down Expand Up @@ -653,6 +653,6 @@ private static void addChippedUpgradeRecipe(RecipeOutput recipeOutput, BlockTran
}

private static Criterion<?> hasLeather() {
return inventoryTrigger(ItemPredicate.Builder.item().of(Tags.Items.LEATHER).build());
return inventoryTrigger(ItemPredicate.Builder.item().of(Tags.Items.LEATHERS).build());
}
}
Loading

0 comments on commit 71b3fcd

Please sign in to comment.