aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java
diff options
context:
space:
mode:
authorNopoTheGamer <40329022+NopoTheGamer@users.noreply.github.com>2024-08-04 01:51:14 +1000
committerGitHub <noreply@github.com>2024-08-03 17:51:14 +0200
commit2b2f59ef37e93f11a70a44bc83d81ac8d9b64381 (patch)
tree2a2bcd45b0d54ef3963030c149d973d726960e77 /src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java
parent24ff8316f1b43db4dca47bb1fba529e69d0d72df (diff)
downloadnotenoughupdates-2b2f59ef37e93f11a70a44bc83d81ac8d9b64381.tar.gz
notenoughupdates-2b2f59ef37e93f11a70a44bc83d81ac8d9b64381.tar.bz2
notenoughupdates-2b2f59ef37e93f11a70a44bc83d81ac8d9b64381.zip
Fix performance when NEU deals with item stacks (#1271)
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java')
-rw-r--r--src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java
index 77cc2cab..1a56bf1a 100644
--- a/src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java
+++ b/src/main/java/io/github/moulberry/notenoughupdates/NEUOverlay.java
@@ -568,7 +568,7 @@ public class NEUOverlay extends Gui {
extraScale = 1.3f;
} else if (manager.getItemInformation().containsKey(display)) {
- render = manager.jsonToStack(manager.getItemInformation().get(display), true, true);
+ render = manager.jsonToStack(manager.getItemInformation().get(display), true, false);
} else {
Item item = Item.itemRegistry.getObject(new ResourceLocation(display.toLowerCase(Locale.ROOT)));
if (item != null) {
@@ -2270,7 +2270,7 @@ public class NEUOverlay extends Gui {
JsonObject json = tooltipToDisplay.get();
if (json != null) {
- ItemStack stack = manager.jsonToStack(json);
+ ItemStack stack = manager.jsonToStack(json, false, true);
{
NBTTagCompound tag = stack.getTagCompound();
tag.setBoolean("DisablePetExp", true);
@@ -2443,10 +2443,15 @@ public class NEUOverlay extends Gui {
if (json == null) {
return;
}
- ItemStack stack = manager.jsonToStack(json, true, true, false);
- if (stack == null || !stack.hasEffect()) {
- return;
+ boolean hasEnch = false;
+ if (json.has("nbttag")) {
+ String jsonString = json.get("nbttag").getAsJsonPrimitive().getAsString();
+ // scuffed way of doing it but improves performance significantly over the old method
+ if (jsonString.contains("ench:[") || jsonString.contains("CustomPotionEffects:[")) {
+ hasEnch = true;
+ }
}
+ if (!hasEnch) return;
GlStateManager.pushMatrix();
GlStateManager.enableRescaleNormal();
@@ -2601,7 +2606,7 @@ public class NEUOverlay extends Gui {
renderEntity(x + ITEM_SIZE / 2, y + ITEM_SIZE, scale, name, entities);
} else {
if (!items) return;
- ItemStack stack = manager.jsonToStack(json, true, true, false);
+ ItemStack stack = manager.jsonToStack(json, true, false, false);
if (stack != null) {
if (glint) {
Utils.drawItemStack(stack, x, y);