Skip to content

Commit

Permalink
fix #318
Browse files Browse the repository at this point in the history
  • Loading branch information
Mari023 committed Jan 5, 2025
1 parent 0d55d8a commit 10483e7
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 19 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
- Updated Simplified Chinese localization (#315)
- fix restock amount also displaying in stacks in JEI (#318)
Original file line number Diff line number Diff line change
@@ -1,36 +1,35 @@
package de.mari_023.ae2wtlib.mixin;

import javax.annotation.Nullable;

import appeng.util.ReadableNumberConverter;
import de.mari_023.ae2wtlib.wct.CraftingTerminalHandler;
import net.minecraft.client.DeltaTracker;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.world.item.ItemStack;

import appeng.util.ReadableNumberConverter;

import de.mari_023.ae2wtlib.wct.CraftingTerminalHandler;

@Mixin(value = GuiGraphics.class, remap = false)
public abstract class RestockRender {
@Mixin(Gui.class)
public class GuiMixin {
@Final
@Shadow
public abstract void renderItemDecorations(Font pFont, ItemStack pStack, int pX, int pY, @Nullable String pText);
private Minecraft minecraft;

@Inject(method = "renderItemDecorations(Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V", at = @At(value = "HEAD"), cancellable = true)
public void renderGuiItemOverlay(Font font, ItemStack stack, int x, int y, CallbackInfo ci) {
@Inject(method = "renderSlot(Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/DeltaTracker;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;I)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphics;renderItemDecorations(Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V"), cancellable = true)
public void restockOverlay(GuiGraphics guiGraphics, int x, int y, DeltaTracker deltaTracker, Player player, ItemStack stack, int seed, CallbackInfo ci) {
if (Minecraft.getInstance().player == null || Minecraft.getInstance().player.isCreative())
return;
CraftingTerminalHandler handler = CraftingTerminalHandler
.getCraftingTerminalHandler(Minecraft.getInstance().player);
if (!handler.isRestockEnabled() || stack.getCount() == 1 || !handler.isRestockAble(stack))
return;
renderItemDecorations(font, stack, x, y, ReadableNumberConverter.format(handler.getAccessibleAmount(stack), 3));
guiGraphics.renderItemDecorations(minecraft.font, stack, x, y, ReadableNumberConverter.format(handler.getAccessibleAmount(stack), 3));
ci.cancel();
}
}
4 changes: 2 additions & 2 deletions src/main/resources/ae2wtlib.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
"ServerPlayerMixin"
],
"client": [
"MinecraftMixin",
"RestockRender"
"GuiMixin",
"MinecraftMixin"
],
"injectors": {
"defaultRequire": 1
Expand Down

0 comments on commit 10483e7

Please sign in to comment.