From 2eda9771adceb2accb86175d6c66749dc8d3c79e Mon Sep 17 00:00:00 2001 From: Sen Date: Thu, 7 Aug 2025 16:43:48 +0200 Subject: [PATCH] add armor slot textures --- .../java/client/gui/container/GuiContainer.java | 12 ++++++++---- .../java/client/gui/element/InventoryButton.java | 11 ++++++++++- .../main/resources/textures/items/icon_belt.png | Bin 0 -> 5586 bytes .../main/resources/textures/items/icon_boots.png | Bin 0 -> 5594 bytes .../resources/textures/items/icon_chestplate.png | Bin 0 -> 5530 bytes .../main/resources/textures/items/icon_crown.png | Bin 0 -> 5347 bytes .../resources/textures/items/icon_helmet.png | Bin 0 -> 5337 bytes .../resources/textures/items/icon_leggings.png | Bin 0 -> 5580 bytes .../resources/textures/items/icon_necklace.png | Bin 0 -> 5669 bytes .../main/resources/textures/items/icon_ring.png | Bin 0 -> 5617 bytes .../resources/textures/items/icon_shield.png | Bin 0 -> 5575 bytes .../java/common/inventory/ContainerPlayer.java | 3 +++ common/src/main/java/common/inventory/Slot.java | 8 ++++---- common/src/main/java/common/util/Equipment.java | 4 ++-- 14 files changed, 27 insertions(+), 11 deletions(-) create mode 100755 client/src/main/resources/textures/items/icon_belt.png create mode 100755 client/src/main/resources/textures/items/icon_boots.png create mode 100755 client/src/main/resources/textures/items/icon_chestplate.png create mode 100755 client/src/main/resources/textures/items/icon_crown.png create mode 100755 client/src/main/resources/textures/items/icon_helmet.png create mode 100755 client/src/main/resources/textures/items/icon_leggings.png create mode 100755 client/src/main/resources/textures/items/icon_necklace.png create mode 100755 client/src/main/resources/textures/items/icon_ring.png create mode 100755 client/src/main/resources/textures/items/icon_shield.png diff --git a/client/src/main/java/client/gui/container/GuiContainer.java b/client/src/main/java/client/gui/container/GuiContainer.java index 1dcc4148..139dee62 100755 --- a/client/src/main/java/client/gui/container/GuiContainer.java +++ b/client/src/main/java/client/gui/container/GuiContainer.java @@ -210,8 +210,12 @@ public abstract class GuiContainer extends Gui Drawing.drawGradient(this.container_x + x * this.container_scale, this.container_y + y * this.container_scale, width * this.container_scale, height * this.container_scale, 0xff000000 | top, 0xff000000 | bottom, 0xff000000 | topleft, 0xff000000 | btmright); } + public InventoryButton slot(int x, int y, int w, int h, Slot slot) { + return this.add(new InventoryButton(this.container_x + x * this.container_scale, this.container_y + y * this.container_scale, w * this.container_scale, h * this.container_scale, this.container_scale > 1, slot)); + } + public InventoryButton slot(int x, int y, int w, int h) { - return this.add(new InventoryButton(this.container_x + x * this.container_scale, this.container_y + y * this.container_scale, w * this.container_scale, h * this.container_scale, this.container_scale > 1)); + return this.slot(x, y, w, h, null); } public ActButton button(int x, int y, int w, int h, ButtonCallback callback, String text) { @@ -276,8 +280,8 @@ public abstract class GuiContainer extends Gui public void addButtons() { if(this.inventorySlots != null) { for (int i1 = 0; i1 < this.inventorySlots.inventorySlots.size(); ++i1) { - Slot slot = (Slot)this.inventorySlots.inventorySlots.get(i1); - this.slot(slot.xDisplayPosition - 1, slot.yDisplayPosition - 1, 18, 18); + Slot slot = this.inventorySlots.inventorySlots.get(i1); + this.slot(slot.xDisplayPosition - 1, slot.yDisplayPosition - 1, 18, 18, slot); } } if(this.gm.itemCheat) { @@ -286,7 +290,7 @@ public abstract class GuiContainer extends Gui this.cheatSearch = this.add(new Field(this.cheatX, this.cheatY + this.cheatHeight * 18 + 20 * ((CheatTab.values().length + (this.cheatWidth - 1)) / this.cheatWidth) + 4, this.cheatWidth * 18, 0, 128, null, "")); this.cheatLast = ""; for(CheatTab tab : CheatTab.values()) { - this.add(new InventoryButton(this.cheatX + 18 * (tab.getIndex() % this.cheatWidth), this.cheatY + this.cheatHeight * 18 + 4 + 20 * (tab.getIndex() / this.cheatWidth), 18, 18, false)); + this.add(new InventoryButton(this.cheatX + 18 * (tab.getIndex() % this.cheatWidth), this.cheatY + this.cheatHeight * 18 + 4 + 20 * (tab.getIndex() / this.cheatWidth), 18, 18, false, null)); } this.setCurrentTab(selectedTab); } diff --git a/client/src/main/java/client/gui/element/InventoryButton.java b/client/src/main/java/client/gui/element/InventoryButton.java index 554f1274..ebcbb6a5 100644 --- a/client/src/main/java/client/gui/element/InventoryButton.java +++ b/client/src/main/java/client/gui/element/InventoryButton.java @@ -1,17 +1,26 @@ package client.gui.element; import client.renderer.Drawing; +import common.inventory.Slot; public class InventoryButton extends Element { private final boolean bordered; + private final Slot slot; + private final String texture; - public InventoryButton(int x, int y, int w, int h, boolean bordered) { + public InventoryButton(int x, int y, int w, int h, boolean bordered, Slot slot) { super(x, y, w, h, null); this.bordered = bordered; + this.texture = slot == null || slot.getTexture() == null ? null : "textures/items/icon_" + slot.getTexture() + ".png"; + this.slot = this.texture == null ? null : slot; } protected void drawBackground() { drawButton(this.pos_x, this.pos_y, this.size_x, this.size_y, this.bordered); + if(this.texture != null && !this.slot.getHasStack()) { + int scale = this.bordered ? 2 : 1; + Drawing.drawTexturedRect(this.gm, this.texture, 16 * scale, 16 * scale, this.pos_x + scale, this.pos_y + scale, 0, 0, this.size_x - scale * 2, this.size_y - scale * 2); + } } protected void drawForeground(int x1, int y1, int x2, int y2) { diff --git a/client/src/main/resources/textures/items/icon_belt.png b/client/src/main/resources/textures/items/icon_belt.png new file mode 100755 index 0000000000000000000000000000000000000000..07e3b1979400e3f158c58674b08f28b266812025 GIT binary patch literal 5586 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 Hh~)nOmVsNN literal 0 HcmV?d00001 diff --git a/client/src/main/resources/textures/items/icon_boots.png b/client/src/main/resources/textures/items/icon_boots.png new file mode 100755 index 0000000000000000000000000000000000000000..d85cce0685bfd6a2c1b8430d7d77866849963631 GIT binary patch literal 5594 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 U^KVB`KDw&-dii^va$mjqKg`8@ApigX literal 0 HcmV?d00001 diff --git a/client/src/main/resources/textures/items/icon_chestplate.png b/client/src/main/resources/textures/items/icon_chestplate.png new file mode 100755 index 0000000000000000000000000000000000000000..f1c21cedc5c977996bee15092e71578ec82ea506 GIT binary patch literal 5530 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 DRZ30z literal 0 HcmV?d00001 diff --git a/client/src/main/resources/textures/items/icon_crown.png b/client/src/main/resources/textures/items/icon_crown.png new file mode 100755 index 0000000000000000000000000000000000000000..98db7d62f8a65a7b330563c10867791025643bc0 GIT binary patch literal 5347 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 literal 0 HcmV?d00001 diff --git a/common/src/main/java/common/inventory/ContainerPlayer.java b/common/src/main/java/common/inventory/ContainerPlayer.java index 00064d97..8c921f48 100755 --- a/common/src/main/java/common/inventory/ContainerPlayer.java +++ b/common/src/main/java/common/inventory/ContainerPlayer.java @@ -46,6 +46,9 @@ public class ContainerPlayer extends Container { { return stack != null && stack.getItem() instanceof ItemArmor armor && armor.getArmorType().canUseInSlot(type); } + public String getTexture() { + return type.isRing() ? "ring" : type.getName(); + } }); } diff --git a/common/src/main/java/common/inventory/Slot.java b/common/src/main/java/common/inventory/Slot.java index 7800ca50..a4b171e2 100755 --- a/common/src/main/java/common/inventory/Slot.java +++ b/common/src/main/java/common/inventory/Slot.java @@ -122,10 +122,10 @@ public class Slot return this.getSlotStackLimit(); } -// public String getSlotTexture() -// { -// return null; -// } + public String getTexture() + { + return null; + } /** * Decrease the size of the stack in slot (first int arg) by the amount of the second int arg. Returns the new diff --git a/common/src/main/java/common/util/Equipment.java b/common/src/main/java/common/util/Equipment.java index 7168376a..05b63e24 100644 --- a/common/src/main/java/common/util/Equipment.java +++ b/common/src/main/java/common/util/Equipment.java @@ -19,12 +19,12 @@ public enum Equipment implements Identifyable, Displayable { BOOTS("boots", "Stiefel", "Stiefel", 13, 3, EnchantmentType.ARMOR_FEET, 1.4f, 1.0f, "X X", "X X"), CROWN("crown", "Krone", 0, 4, null, 0.3f, 1.0f), - RING_LEFT_A("ring_left_A", "Linker Ring 1", 0, 5, EnchantmentType.RING, 1.0f), + RING_LEFT_A("ring_left_a", "Linker Ring 1", 0, 5, EnchantmentType.RING, 1.0f), RING_LEFT_B("ring_left_b", "Linker Ring 2", 0, 6, EnchantmentType.RING, 1.0f), SHIELD("shield", "Schild", 12, 7, EnchantmentType.SHIELD, 0.7f, 1.0f), NECKLACE("necklace", "Halskette", 0, 8, EnchantmentType.NECKLACE, 1.0f), RING_RIGHT_A("ring_right_a", "Rechter Ring 1", 0, 9, EnchantmentType.RING, 1.0f), - RING_RIGHT_B("ring_right_a", "Rechter Ring 2", 0, 10, EnchantmentType.RING, 1.0f), + RING_RIGHT_B("ring_right_b", "Rechter Ring 2", 0, 10, EnchantmentType.RING, 1.0f), BELT("belt", "Gürtel", 0, 11, null, 1.0f), HORSE_ARMOR("horse_armor", "Pferderüstung", EntityHorse.class, "X X", "XXX", "XXX");