Browse Source

将铁砧、砂轮、命名牌 GUI 左侧的图片对应换成渲染的物品模型

LTCatt 6 years ago
parent
commit
582db258c7

+ 1 - 2
src/main/java/com/hexdragon/enchrebirth/block/anvil/AnvilScreenRe.java

@@ -37,10 +37,9 @@ public class AnvilScreenRe extends ContainerScreen<AnvilContainerRe> {
         // TODO : 当铁砧破坏等级增加的时候存储的物品会掉出来
         // TODO : 带有腐朽附魔的物品在满耐久的时候和原料一起放入铁砧允许修复,而不是打上红叉
         // TODO : <验证> 检查使用 Main 获取 TileEntity 的方式是否会在多人造成兼容性问题
-        // TODO : 尝试找到更简洁的当前打开的 Block 的获取方式
         // TODO : Timicasto 汇报的 Bug:按 Shift 转移物品容易崩溃?
         // 渲染当前的 TileEntity
-        ItemRendererRe.renderItemModelIntoGUIScaled(itemRenderer, new ItemStack(Main.LastTileEntity.getBlockState().getBlock()), i + 21, j + 15, 64);
+        ItemRendererRe.renderItemModelIntoGUIScaled(itemRenderer, new ItemStack(Main.LastTileEntity.getBlockState().getBlock()), i + 23, j + 20, 40);
     }
 
     protected void drawGuiContainerForegroundLayer(MatrixStack matrixStack, int x, int y) {

+ 0 - 1
src/main/java/com/hexdragon/enchrebirth/block/grindstone/GrindstoneContainerRe.java

@@ -105,7 +105,6 @@ public class GrindstoneContainerRe extends Container {
         this.detectAndSendChanges();
     }
 
-    // TODO : 将铁砧、砂轮、命名牌 GUI 左侧的图片对应换成渲染的物品模型
     // TODO : 添加方块的使用音效、命名牌的重命名音效什么的
     // TODO : 让砂轮可以去除附魔书的附魔,返回一个皮革
 

+ 5 - 0
src/main/java/com/hexdragon/enchrebirth/block/grindstone/GrindstoneScreenRe.java

@@ -1,9 +1,12 @@
 package com.hexdragon.enchrebirth.block.grindstone;
 
+import com.hexdragon.corere.renderer.ItemRendererRe;
 import com.hexdragon.enchrebirth.Main;
 import com.mojang.blaze3d.matrix.MatrixStack;
 import net.minecraft.client.gui.screen.inventory.ContainerScreen;
 import net.minecraft.entity.player.PlayerInventory;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
 import net.minecraft.util.ResourceLocation;
 import net.minecraft.util.text.ITextComponent;
 import net.minecraftforge.api.distmarker.Dist;
@@ -37,5 +40,7 @@ public class GrindstoneScreenRe extends ContainerScreen<GrindstoneContainerRe> {
         if (this.container.getSlot(0).getHasStack() ^ (this.container.getSlot(1).getHasStack() || this.container.getSlot(2).getHasStack())) {
             this.blit(matrixStack, i + 85, j + 26, this.xSize, 0, 28, 21);
         }
+        // 渲染背景物品
+        ItemRendererRe.renderItemModelIntoGUIScaled(itemRenderer, new ItemStack(Items.GRINDSTONE), i + 23, j + 21, 48);
     }
 }

+ 5 - 0
src/main/java/com/hexdragon/enchrebirth/item/name_tag/NameTagScreen.java

@@ -1,10 +1,13 @@
 package com.hexdragon.enchrebirth.item.name_tag;
 
+import com.hexdragon.corere.renderer.ItemRendererRe;
 import com.hexdragon.enchrebirth.Main;
 import com.mojang.blaze3d.matrix.MatrixStack;
 import net.minecraft.client.gui.screen.Screen;
 import net.minecraft.client.gui.widget.TextFieldWidget;
 import net.minecraft.client.util.InputMappings;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
 import net.minecraft.util.Hand;
 import net.minecraft.util.ResourceLocation;
 import net.minecraft.util.text.StringTextComponent;
@@ -53,6 +56,8 @@ public class NameTagScreen extends Screen {
         // 绘制文本框
         this.textField.render(matrixStack, mouseX, mouseY, partialTicks);
         super.render(matrixStack, mouseX, mouseY, partialTicks);
+        // 渲染背景物品
+        ItemRendererRe.renderItemModelIntoGUIScaled(itemRenderer, new ItemStack(Items.NAME_TAG), guiLeft + 25, guiTop + 19, 34);
     }
 
     // 在玩家按下物品栏键或回车时,主动关闭 GUI

BIN
src/main/resources/assets/enchrebirth/textures/gui/container/anvil.png


BIN
src/main/resources/assets/enchrebirth/textures/gui/container/grindstone.png


BIN
src/main/resources/assets/enchrebirth/textures/gui/name_tag.png