aboutsummaryrefslogtreecommitdiff
path: root/RoughlyEnoughItems-default-plugin/src/main/java/me
diff options
context:
space:
mode:
Diffstat (limited to 'RoughlyEnoughItems-default-plugin/src/main/java/me')
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java155
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java20
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java22
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultServerContainerPlugin.java14
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java44
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseCategory.java32
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java6
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java6
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/BrewingRecipe.java4
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java24
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java20
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/RegisteredBrewingRecipe.java4
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java14
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java20
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java32
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java14
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/containers/CraftingContainerInfoWrapper.java26
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java28
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java26
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java32
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingDisplay.java10
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java8
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java12
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java16
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelCategory.java24
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelDisplay.java4
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationCategory.java80
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationDisplay.java26
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/mixin/MixinPotionBrewing.java (renamed from RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/mixin/MixinBrewingRecipeRegistry.java)41
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/pathing/DefaultPathingCategory.java13
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/pathing/DefaultPathingDisplay.java12
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/pathing/DummyShovelItem.java13
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smelting/DefaultSmeltingDisplay.java6
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingCategory.java10
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingDisplay.java16
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smoking/DefaultSmokingDisplay.java6
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java10
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java26
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingCategory.java10
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingDisplay.java6
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DummyAxeItem.java10
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/tilling/DefaultTillingCategory.java13
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/tilling/DefaultTillingDisplay.java12
-rw-r--r--RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/tilling/DummyHoeItem.java12
44 files changed, 465 insertions, 474 deletions
diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
index 331c61603..51df3e7a3 100644
--- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
+++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
@@ -68,24 +68,25 @@ import me.shedaniel.rei.plugin.tilling.DummyHoeItem;
import me.shedaniel.rei.utils.CollectionUtils;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
-import net.minecraft.block.ComposterBlock;
-import net.minecraft.block.entity.AbstractFurnaceBlockEntity;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.gui.screen.ingame.*;
-import net.minecraft.client.gui.screen.recipebook.RecipeBookProvider;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.enchantment.EnchantmentHelper;
-import net.minecraft.fluid.Fluid;
-import net.minecraft.item.*;
-import net.minecraft.potion.PotionUtil;
-import net.minecraft.recipe.*;
-import net.minecraft.tag.BlockTags;
-import net.minecraft.tag.Tag;
-import net.minecraft.text.Text;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.Lazy;
-import net.minecraft.util.math.MathHelper;
-import net.minecraft.util.registry.Registry;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.screens.inventory.*;
+import net.minecraft.client.gui.screens.recipebook.RecipeUpdateListener;
+import net.minecraft.core.Registry;
+import net.minecraft.network.chat.Component;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.tags.BlockTags;
+import net.minecraft.tags.Tag;
+import net.minecraft.util.LazyLoadedValue;
+import net.minecraft.util.Mth;
+import net.minecraft.world.item.*;
+import net.minecraft.world.item.alchemy.PotionUtils;
+import net.minecraft.world.item.crafting.*;
+import net.minecraft.world.item.enchantment.Enchantment;
+import net.minecraft.world.item.enchantment.EnchantmentHelper;
+import net.minecraft.world.level.ItemLike;
+import net.minecraft.world.level.block.ComposterBlock;
+import net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity;
+import net.minecraft.world.level.material.Fluid;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.jetbrains.annotations.ApiStatus;
@@ -99,28 +100,28 @@ import static me.shedaniel.rei.impl.Internals.attachInstance;
@Environment(EnvType.CLIENT)
public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
private static final Logger LOGGER = LogManager.getFormatterLogger("REI/DefaultPlugin");
- public static final Identifier CRAFTING = BuiltinPlugin.CRAFTING;
- public static final Identifier SMELTING = BuiltinPlugin.SMELTING;
- public static final Identifier SMOKING = BuiltinPlugin.SMOKING;
- public static final Identifier BLASTING = BuiltinPlugin.BLASTING;
- public static final Identifier CAMPFIRE = BuiltinPlugin.CAMPFIRE;
- public static final Identifier STONE_CUTTING = BuiltinPlugin.STONE_CUTTING;
- public static final Identifier STRIPPING = BuiltinPlugin.STRIPPING;
- public static final Identifier BREWING = BuiltinPlugin.BREWING;
- public static final Identifier PLUGIN = BuiltinPlugin.PLUGIN;
- public static final Identifier COMPOSTING = BuiltinPlugin.COMPOSTING;
- public static final Identifier FUEL = BuiltinPlugin.FUEL;
- public static final Identifier SMITHING = BuiltinPlugin.SMITHING;
- public static final Identifier BEACON = BuiltinPlugin.BEACON;
- public static final Identifier TILLING = BuiltinPlugin.TILLING;
- public static final Identifier PATHING = BuiltinPlugin.PATHING;
- public static final Identifier INFO = BuiltinPlugin.INFO;
- private static final Identifier DISPLAY_TEXTURE = new Identifier("roughlyenoughitems", "textures/gui/display.png");
- private static final Identifier DISPLAY_TEXTURE_DARK = new Identifier("roughlyenoughitems", "textures/gui/display_dark.png");
- private static final List<Lazy<DefaultBrewingDisplay>> BREWING_DISPLAYS = Lists.newArrayList();
+ public static final ResourceLocation CRAFTING = BuiltinPlugin.CRAFTING;
+ public static final ResourceLocation SMELTING = BuiltinPlugin.SMELTING;
+ public static final ResourceLocation SMOKING = BuiltinPlugin.SMOKING;
+ public static final ResourceLocation BLASTING = BuiltinPlugin.BLASTING;
+ public static final ResourceLocation CAMPFIRE = BuiltinPlugin.CAMPFIRE;
+ public static final ResourceLocation STONE_CUTTING = BuiltinPlugin.STONE_CUTTING;
+ public static final ResourceLocation STRIPPING = BuiltinPlugin.STRIPPING;
+ public static final ResourceLocation BREWING = BuiltinPlugin.BREWING;
+ public static final ResourceLocation PLUGIN = BuiltinPlugin.PLUGIN;
+ public static final ResourceLocation COMPOSTING = BuiltinPlugin.COMPOSTING;
+ public static final ResourceLocation FUEL = BuiltinPlugin.FUEL;
+ public static final ResourceLocation SMITHING = BuiltinPlugin.SMITHING;
+ public static final ResourceLocation BEACON = BuiltinPlugin.BEACON;
+ public static final ResourceLocation TILLING = BuiltinPlugin.TILLING;
+ public static final ResourceLocation PATHING = BuiltinPlugin.PATHING;
+ public static final ResourceLocation INFO = BuiltinPlugin.INFO;
+ private static final ResourceLocation DISPLAY_TEXTURE = new ResourceLocation("roughlyenoughitems", "textures/gui/display.png");
+ private static final ResourceLocation DISPLAY_TEXTURE_DARK = new ResourceLocation("roughlyenoughitems", "textures/gui/display_dark.png");
+ private static final List<LazyLoadedValue<DefaultBrewingDisplay>> BREWING_DISPLAYS = Lists.newArrayList();
private static final List<DefaultInformationDisplay> INFO_DISPLAYS = Lists.newArrayList();
- public static Identifier getDisplayTexture() {
+ public static ResourceLocation getDisplayTexture() {
return REIHelper.getInstance().getDefaultDisplayTexture();
}
@@ -131,11 +132,11 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
@Deprecated
@ApiStatus.ScheduledForRemoval
public static void registerBrewingDisplay(DefaultBrewingDisplay recipe) {
- BREWING_DISPLAYS.add(new Lazy<>(() -> recipe));
+ BREWING_DISPLAYS.add(new LazyLoadedValue<>(() -> recipe));
}
public static void registerBrewingRecipe(RegisteredBrewingRecipe recipe) {
- BREWING_DISPLAYS.add(new Lazy<>(() -> new DefaultBrewingDisplay(recipe.input, recipe.ingredient, recipe.output)));
+ BREWING_DISPLAYS.add(new LazyLoadedValue<>(() -> new DefaultBrewingDisplay(recipe.input, recipe.ingredient, recipe.output)));
}
public static void registerInfoDisplay(DefaultInformationDisplay display) {
@@ -148,12 +149,12 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
}
@Override
- public void registerInformation(List<EntryStack> entryStacks, Text name, UnaryOperator<List<Text>> textBuilder) {
+ public void registerInformation(List<EntryStack> entryStacks, Component name, UnaryOperator<List<Component>> textBuilder) {
registerInfoDisplay(DefaultInformationDisplay.createFromEntries(entryStacks, name).lines(textBuilder.apply(Lists.newArrayList())));
}
@Override
- public Identifier getPluginIdentifier() {
+ public ResourceLocation getPluginIdentifier() {
return PLUGIN;
}
@@ -180,17 +181,17 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
EntryStack stack = EntryStack.create(Items.ENCHANTED_BOOK);
List<EntryStack> enchantments = new ArrayList<>();
for (Enchantment enchantment : Registry.ENCHANTMENT) {
- for (int i = enchantment.getMinimumLevel(); i <= enchantment.getMaximumLevel(); i++) {
+ for (int i = enchantment.getMinLevel(); i <= enchantment.getMaxLevel(); i++) {
Map<Enchantment, Integer> map = new HashMap<>();
map.put(enchantment, i);
ItemStack itemStack = new ItemStack(Items.ENCHANTED_BOOK);
- EnchantmentHelper.set(map, itemStack);
+ EnchantmentHelper.setEnchantments(map, itemStack);
enchantments.add(EntryStack.create(itemStack).setting(EntryStack.Settings.CHECK_TAGS, EntryStack.Settings.TRUE));
}
}
entryRegistry.registerEntriesAfter(stack, enchantments);
for (Fluid fluid : Registry.FLUID) {
- if (!fluid.getDefaultState().isEmpty() && fluid.getDefaultState().isStill())
+ if (!fluid.defaultFluidState().isEmpty() && fluid.defaultFluidState().isSource())
entryRegistry.registerEntry(EntryStack.create(fluid));
}
}
@@ -223,12 +224,12 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
recipeHelper.registerRecipes(SMOKING, SmokingRecipe.class, DefaultSmokingDisplay::new);
recipeHelper.registerRecipes(BLASTING, BlastingRecipe.class, DefaultBlastingDisplay::new);
recipeHelper.registerRecipes(CAMPFIRE, CampfireCookingRecipe.class, DefaultCampfireDisplay::new);
- recipeHelper.registerRecipes(STONE_CUTTING, StonecuttingRecipe.class, DefaultStoneCuttingDisplay::new);
- recipeHelper.registerRecipes(SMITHING, SmithingRecipe.class, DefaultSmithingDisplay::new);
- for (Lazy<DefaultBrewingDisplay> display : BREWING_DISPLAYS) {
+ recipeHelper.registerRecipes(STONE_CUTTING, StonecutterRecipe.class, DefaultStoneCuttingDisplay::new);
+ recipeHelper.registerRecipes(SMITHING, UpgradeRecipe.class, DefaultSmithingDisplay::new);
+ for (LazyLoadedValue<DefaultBrewingDisplay> display : BREWING_DISPLAYS) {
recipeHelper.registerDisplay(display.get());
}
- for (Map.Entry<Item, Integer> entry : AbstractFurnaceBlockEntity.createFuelTimeMap().entrySet()) {
+ for (Map.Entry<Item, Integer> entry : AbstractFurnaceBlockEntity.getFuel().entrySet()) {
recipeHelper.registerDisplay(new DefaultFuelDisplay(EntryStack.create(entry.getKey()), entry.getValue()));
}
List<EntryStack> arrowStack = Collections.singletonList(EntryStack.create(Items.ARROW));
@@ -240,37 +241,37 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
for (int i = 0; i < 4; i++)
input.add(arrowStack);
ItemStack outputStack = new ItemStack(Items.TIPPED_ARROW, 8);
- PotionUtil.setPotion(outputStack, PotionUtil.getPotion(entry.getItemStack()));
- PotionUtil.setCustomPotionEffects(outputStack, PotionUtil.getCustomPotionEffects(entry.getItemStack()));
+ PotionUtils.setPotion(outputStack, PotionUtils.getPotion(entry.getItemStack()));
+ PotionUtils.setCustomEffects(outputStack, PotionUtils.getCustomEffects(entry.getItemStack()));
List<EntryStack> output = Collections.singletonList(EntryStack.create(outputStack).addSetting(EntryStack.Settings.CHECK_TAGS, EntryStack.Settings.TRUE));
recipeHelper.registerDisplay(new DefaultCustomDisplay(null, input, output));
});
- Map<ItemConvertible, Float> map = Maps.newLinkedHashMap();
- if (ComposterBlock.ITEM_TO_LEVEL_INCREASE_CHANCE.isEmpty())
- ComposterBlock.registerDefaultCompostableItems();
- for (Object2FloatMap.Entry<ItemConvertible> entry : ComposterBlock.ITEM_TO_LEVEL_INCREASE_CHANCE.object2FloatEntrySet()) {
+ Map<ItemLike, Float> map = Maps.newLinkedHashMap();
+ if (ComposterBlock.COMPOSTABLES.isEmpty())
+ ComposterBlock.bootStrap();
+ for (Object2FloatMap.Entry<ItemLike> entry : ComposterBlock.COMPOSTABLES.object2FloatEntrySet()) {
if (entry.getFloatValue() > 0)
map.put(entry.getKey(), entry.getFloatValue());
}
- List<ItemConvertible> stacks = Lists.newArrayList(map.keySet());
+ List<ItemLike> stacks = Lists.newArrayList(map.keySet());
stacks.sort(Comparator.comparing(map::get));
- for (int i = 0; i < stacks.size(); i += MathHelper.clamp(48, 1, stacks.size() - i)) {
- List<ItemConvertible> thisStacks = Lists.newArrayList();
+ for (int i = 0; i < stacks.size(); i += Mth.clamp(48, 1, stacks.size() - i)) {
+ List<ItemLike> thisStacks = Lists.newArrayList();
for (int j = i; j < i + 48; j++)
if (j < stacks.size())
thisStacks.add(stacks.get(j));
- recipeHelper.registerDisplay(new DefaultCompostingDisplay(MathHelper.floor(i / 48f), thisStacks, map, new ItemStack(Items.BONE_MEAL)));
+ recipeHelper.registerDisplay(new DefaultCompostingDisplay(Mth.floor(i / 48f), thisStacks, map, new ItemStack(Items.BONE_MEAL)));
}
- DummyAxeItem.getStrippedBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getId(b.getKey()))).forEach(set -> {
+ DummyAxeItem.getStrippedBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getKey(b.getKey()))).forEach(set -> {
recipeHelper.registerDisplay(new DefaultStrippingDisplay(EntryStack.create(set.getKey()), EntryStack.create(set.getValue())));
});
- DummyHoeItem.getTilledBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getId(b.getKey()))).forEach(set -> {
+ DummyHoeItem.getTilledBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getKey(b.getKey()))).forEach(set -> {
recipeHelper.registerDisplay(new DefaultTillingDisplay(EntryStack.create(set.getKey()), EntryStack.create(set.getValue().getBlock())));
});
- DummyShovelItem.getPathBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getId(b.getKey()))).forEach(set -> {
+ DummyShovelItem.getPathBlocksMap().entrySet().stream().sorted(Comparator.comparing(b -> Registry.BLOCK.getKey(b.getKey()))).forEach(set -> {
recipeHelper.registerDisplay(new DefaultPathingDisplay(EntryStack.create(set.getKey()), EntryStack.create(set.getValue().getBlock())));
});
- recipeHelper.registerDisplay(new DefaultBeaconBaseDisplay(CollectionUtils.map(Lists.newArrayList(BlockTags.BEACON_BASE_BLOCKS.values()), ItemStack::new)));
+ recipeHelper.registerDisplay(new DefaultBeaconBaseDisplay(CollectionUtils.map(Lists.newArrayList(BlockTags.BEACON_BASE_BLOCKS.getValues()), ItemStack::new)));
}
@Override
@@ -303,17 +304,17 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
@Override
public void registerBounds(DisplayHelper displayHelper) {
BaseBoundsHandler baseBoundsHandler = BaseBoundsHandler.getInstance();
- baseBoundsHandler.registerExclusionZones(AbstractInventoryScreen.class, new DefaultPotionEffectExclusionZones());
- baseBoundsHandler.registerExclusionZones(RecipeBookProvider.class, new DefaultRecipeBookExclusionZones());
- displayHelper.registerProvider(new DisplayHelper.DisplayBoundsProvider<ContainerScreen<?>>() {
+ baseBoundsHandler.registerExclusionZones(EffectRenderingInventoryScreen.class, new DefaultPotionEffectExclusionZones());
+ baseBoundsHandler.registerExclusionZones(RecipeUpdateListener.class, new DefaultRecipeBookExclusionZones());
+ displayHelper.registerProvider(new DisplayHelper.DisplayBoundsProvider<AbstractContainerScreen<?>>() {
@Override
- public Rectangle getScreenBounds(ContainerScreen<?> screen) {
- return new Rectangle(screen.x, screen.y, screen.containerWidth, screen.containerHeight);
+ public Rectangle getScreenBounds(AbstractContainerScreen<?> screen) {
+ return new Rectangle(screen.leftPos, screen.topPos, screen.imageWidth, screen.imageHeight);
}
@Override
public Class<?> getBaseSupportedClass() {
- return ContainerScreen.class;
+ return AbstractContainerScreen.class;
}
});
}
@@ -333,21 +334,21 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
recipeHelper.registerWorkingStations(COMPOSTING, EntryStack.create(Items.COMPOSTER));
recipeHelper.registerWorkingStations(SMITHING, EntryStack.create(Items.SMITHING_TABLE));
recipeHelper.registerWorkingStations(BEACON, EntryStack.create(Items.BEACON));
- Tag<Item> axes = MinecraftClient.getInstance().getNetworkHandler().getTagManager().getItems().getTag(new Identifier("fabric", "axes"));
+ Tag<Item> axes = Minecraft.getInstance().getConnection().getTags().getItems().getTag(new ResourceLocation("fabric", "axes"));
if (axes != null) {
- for (Item item : axes.values()) {
+ for (Item item : axes.getValues()) {
recipeHelper.registerWorkingStations(STRIPPING, EntryStack.create(item));
}
}
- Tag<Item> hoes = MinecraftClient.getInstance().getNetworkHandler().getTagManager().getItems().getTag(new Identifier("fabric", "hoes"));
+ Tag<Item> hoes = Minecraft.getInstance().getConnection().getTags().getItems().getTag(new ResourceLocation("fabric", "hoes"));
if (hoes != null) {
- for (Item item : hoes.values()) {
+ for (Item item : hoes.getValues()) {
recipeHelper.registerWorkingStations(TILLING, EntryStack.create(item));
}
}
- Tag<Item> shovels = MinecraftClient.getInstance().getNetworkHandler().getTagManager().getItems().getTag(new Identifier("fabric", "shovels"));
+ Tag<Item> shovels = Minecraft.getInstance().getConnection().getTags().getItems().getTag(new ResourceLocation("fabric", "shovels"));
if (shovels != null) {
- for (Item item : shovels.values()) {
+ for (Item item : shovels.getValues()) {
recipeHelper.registerWorkingStations(PATHING, EntryStack.create(item));
}
}
@@ -355,7 +356,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
recipeHelper.removeAutoCraftButton(COMPOSTING);
recipeHelper.removeAutoCraftButton(BEACON);
recipeHelper.removeAutoCraftButton(INFO);
- recipeHelper.registerScreenClickArea(new Rectangle(88, 32, 28, 23), CraftingTableScreen.class, CRAFTING);
+ recipeHelper.registerScreenClickArea(new Rectangle(88, 32, 28, 23), CraftingScreen.class, CRAFTING);
recipeHelper.registerScreenClickArea(new Rectangle(137, 29, 10, 13), InventoryScreen.class, CRAFTING);
recipeHelper.registerScreenClickArea(new Rectangle(97, 16, 14, 30), BrewingStandScreen.class, BREWING);
recipeHelper.registerScreenClickArea(new Rectangle(78, 32, 28, 23), FurnaceScreen.class, SMELTING);
@@ -366,7 +367,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin {
public @NotNull EntryStack itemToFluid(@NotNull EntryStack itemStack) {
Item item = itemStack.getItem();
if (item instanceof BucketItem)
- return EntryStack.create(((BucketItem) item).fluid, 1000);
+ return EntryStack.create(((BucketItem) item).content, 1000);
return EntryStack.empty();
}
});
diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
index 79116da14..9fd033af6 100644
--- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
+++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
@@ -28,10 +28,10 @@ import me.shedaniel.math.Rectangle;
import me.shedaniel.rei.api.REIHelper;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.gui.screen.ingame.AbstractInventoryScreen;
-import net.minecraft.client.gui.screen.ingame.ContainerScreen;
-import net.minecraft.entity.effect.StatusEffectInstance;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen;
+import net.minecraft.client.gui.screens.inventory.EffectRenderingInventoryScreen;
+import net.minecraft.world.effect.MobEffectInstance;
import java.util.ArrayList;
import java.util.Collection;
@@ -43,19 +43,19 @@ import java.util.function.Supplier;
public class DefaultPotionEffectExclusionZones implements Supplier<List<Rectangle>> {
@Override
public List<Rectangle> get() {
- if (!(REIHelper.getInstance().getPreviousContainerScreen() instanceof AbstractInventoryScreen) || !((AbstractInventoryScreen<?>) REIHelper.getInstance().getPreviousContainerScreen()).offsetGuiForEffects)
+ if (!(REIHelper.getInstance().getPreviousContainerScreen() instanceof EffectRenderingInventoryScreen) || !((EffectRenderingInventoryScreen<?>) REIHelper.getInstance().getPreviousContainerScreen()).doRenderEffects)
return Collections.emptyList();
- Collection<StatusEffectInstance> activePotionEffects = MinecraftClient.getInstance().player.getStatusEffects();
+ Collection<MobEffectInstance> activePotionEffects = Minecraft.getInstance().player.getActiveEffects();
if (activePotionEffects.isEmpty())
return Collections.emptyList();
- ContainerScreen<?> containerScreen = REIHelper.getInstance().getPreviousContainerScreen();
+ AbstractContainerScreen<?> containerScreen = REIHelper.getInstance().getPreviousContainerScreen();
List<Rectangle> list = new ArrayList<>();
- int x = containerScreen.x - 124;
- int y = containerScreen.y;
+ int x = containerScreen.leftPos - 124;
+ int y = containerScreen.topPos;
int height = 33;
if (activePotionEffects.size() > 5)
height = 132 / (activePotionEffects.size() - 1);
- for (StatusEffectInstance instance : Ordering.natural().sortedCopy(activePotionEffects)) {
+ for (MobEffectInstance instance : Ordering.natural().sortedCopy(activePotionEffects)) {
list.add(new Rectangle(x, y, 166, height));
y += height;
}
diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java
index 099bd1161..bde75067d 100644
--- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java
+++ b/