diff --git a/src/main/java/dev/latvian/mods/kubejs/client/KubeJSClientEventHandler.java b/src/main/java/dev/latvian/mods/kubejs/client/KubeJSClientEventHandler.java index 0f64b8eed..e48565871 100644 --- a/src/main/java/dev/latvian/mods/kubejs/client/KubeJSClientEventHandler.java +++ b/src/main/java/dev/latvian/mods/kubejs/client/KubeJSClientEventHandler.java @@ -202,7 +202,7 @@ public static void hudPostDraw(RenderGuiEvent.Post event) { var mc = Minecraft.getInstance(); if (mc.screen == null) { - KubedexHighlight.INSTANCE.afterEverything(mc, event.getPartialTick().getGameTimeDeltaPartialTick(false)); + KubedexHighlight.INSTANCE.afterEverything(mc, event.getGuiGraphics(), event.getPartialTick().getGameTimeDeltaPartialTick(false)); } } @@ -214,7 +214,7 @@ public static void screenPostDraw(ScreenEvent.Render.Post event) { KubedexHighlight.INSTANCE.screen(mc, event.getGuiGraphics(), screen, event.getMouseX(), event.getMouseY(), event.getPartialTick()); } - KubedexHighlight.INSTANCE.afterEverything(mc, event.getPartialTick()); + KubedexHighlight.INSTANCE.afterEverything(mc, event.getGuiGraphics(), event.getPartialTick()); } @SubscribeEvent @@ -238,6 +238,7 @@ public static void worldRender(RenderLevelStageEvent event) { depth.bindWrite(false); depth.clear(Minecraft.ON_OSX); depth.copyDepthFrom(mc.getMainRenderTarget()); + mc.getMainRenderTarget().bindWrite(false); } } } diff --git a/src/main/java/dev/latvian/mods/kubejs/client/KubeJSErrorScreen.java b/src/main/java/dev/latvian/mods/kubejs/client/KubeJSErrorScreen.java index fefc6fc92..10865298f 100644 --- a/src/main/java/dev/latvian/mods/kubejs/client/KubeJSErrorScreen.java +++ b/src/main/java/dev/latvian/mods/kubejs/client/KubeJSErrorScreen.java @@ -18,8 +18,6 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; import net.minecraft.util.FormattedCharSequence; -import net.neoforged.api.distmarker.Dist; -import net.neoforged.api.distmarker.OnlyIn; import org.jetbrains.annotations.Nullable; import java.awt.Desktop; @@ -168,7 +166,6 @@ public int getRowWidth() { } } - @OnlyIn(Dist.CLIENT) public static class Entry extends ObjectSelectionList.Entry { private final ErrorList errorList; private final Minecraft minecraft; diff --git a/src/main/java/dev/latvian/mods/kubejs/kubedex/KubedexHighlight.java b/src/main/java/dev/latvian/mods/kubejs/kubedex/KubedexHighlight.java index 548e3ca30..3a03b8731 100644 --- a/src/main/java/dev/latvian/mods/kubejs/kubedex/KubedexHighlight.java +++ b/src/main/java/dev/latvian/mods/kubejs/kubedex/KubedexHighlight.java @@ -440,11 +440,13 @@ public void screen(Minecraft mc, GuiGraphics graphics, AbstractContainerScreen streamCodec() { return STREAM_CODEC; } } - - private static DataResult unpackNoShrink(ShapedRecipePattern.Data data) { - var pattern = data.pattern(); - // we can assume that the pattern is rectangular - // because the codec has already validated that - var width = pattern.getFirst().length(); - var height = pattern.size(); - NonNullList nonNullList = NonNullList.withSize(width * height, Ingredient.EMPTY); - CharSet charSet = new CharArraySet(data.key().keySet()); - - for (int row = 0; row < pattern.size(); ++row) { - String string = pattern.get(row); - - for (int cell = 0; cell < string.length(); ++cell) { - char symbol = string.charAt(cell); - Ingredient ingredient = symbol == ' ' ? Ingredient.EMPTY : data.key().get(symbol); - if (ingredient == null) { - return DataResult.error(() -> "Pattern references symbol '" + symbol + "' but it's not defined in the key"); - } - - charSet.remove(symbol); - nonNullList.set(cell + width * row, ingredient); - } - } - - return !charSet.isEmpty() - ? DataResult.error(() -> "Key defines symbols that aren't used in pattern: " + charSet) - : DataResult.success(new ShapedRecipePattern(width, height, nonNullList, Optional.of(data))); - } }