From 70c1354a4a96698758a88c032866288f79de6f5a Mon Sep 17 00:00:00 2001 From: Benjamin Culkin Date: Sat, 24 Aug 2024 08:16:37 -0400 Subject: Initial commit --- src/main/java/jp/plusplus/fbs/gui/GuiContract.java | 110 +++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 src/main/java/jp/plusplus/fbs/gui/GuiContract.java (limited to 'src/main/java/jp/plusplus/fbs/gui/GuiContract.java') diff --git a/src/main/java/jp/plusplus/fbs/gui/GuiContract.java b/src/main/java/jp/plusplus/fbs/gui/GuiContract.java new file mode 100644 index 0000000..19d0ff7 --- /dev/null +++ b/src/main/java/jp/plusplus/fbs/gui/GuiContract.java @@ -0,0 +1,110 @@ +package jp.plusplus.fbs.gui; + +import jp.plusplus.fbs.FBS; +import jp.plusplus.fbs.container.ContainerContract; +import jp.plusplus.fbs.container.ContainerTFKEnchantment; +import jp.plusplus.fbs.gui.button.GuiButtonEnchantment; +import jp.plusplus.fbs.item.ItemCore; +import jp.plusplus.fbs.packet.MessageGuiButton; +import jp.plusplus.fbs.packet.MessageGuiButtonWithString; +import jp.plusplus.fbs.packet.PacketHandler; +import net.minecraft.client.gui.GuiButton; +import net.minecraft.client.gui.GuiTextField; +import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.client.resources.I18n; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.StatCollector; +import org.lwjgl.input.Keyboard; +import org.lwjgl.opengl.GL11; + +/** + * Created by plusplus_F on 2015/11/14. + */ +public class GuiContract extends GuiContainer { + public static final ResourceLocation rl = new ResourceLocation(FBS.MODID+":textures/gui/magicContract.png"); + public ContainerContract con; + public GuiButtonEnchantment button; + public GuiTextField textField; + + public GuiContract(ContainerContract p_i1072_1_) { + super(p_i1072_1_); + con=p_i1072_1_; + } + + @Override + public void initGui() { + super.initGui(); + int i = (this.width - this.xSize) / 2; + int j = (this.height - this.ySize) / 2; + this.allowUserInput = true; + Keyboard.enableRepeatEvents(true); + + button=new GuiButtonEnchantment(0, i+92, j+40); + this.buttonList.add(button); + + textField=new GuiTextField(fontRendererObj, i+9, j+34, 68, 9); + textField.setTextColor(-1); + textField.setDisabledTextColour(-1); + textField.setEnableBackgroundDrawing(false); + textField.setMaxStringLength(20); + } + + @Override + public void onGuiClosed(){ + super.onGuiClosed(); + Keyboard.enableRepeatEvents(false); + } + + @Override + protected void drawGuiContainerForegroundLayer(int par1, int par2){ + super.drawGuiContainerForegroundLayer(par1, par2); + String s= StatCollector.translateToLocal(con.inventory.getInventoryName()); + this.fontRendererObj.drawString(s, this.xSize / 2 - this.fontRendererObj.getStringWidth(s) / 2, 6, 0x404040); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 0x404040); + } + @Override + protected void drawGuiContainerBackgroundLayer(float v, int i, int i1) { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + + this.mc.getTextureManager().bindTexture(rl); + + int k = (this.width - this.xSize) / 2; + int l = (this.height - this.ySize) / 2; + this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); + } + + @Override + public void updateScreen() { + super.updateScreen(); + button.enabled=((ContainerContract)inventorySlots).canContract() && !textField.getText().isEmpty(); + } + + @Override + protected void actionPerformed(GuiButton p_146284_1_) { + if(p_146284_1_==button && p_146284_1_.enabled){ + PacketHandler.INSTANCE.sendToServer(new MessageGuiButtonWithString(0, textField.getText())); + textField.setText(""); + } + } + + @Override + protected void mouseClicked(int p_73864_1_, int p_73864_2_, int p_73864_3_) { + super.mouseClicked(p_73864_1_, p_73864_2_, p_73864_3_); + textField.mouseClicked(p_73864_1_, p_73864_2_, p_73864_3_); + } + + @Override + protected void keyTyped(char p_73869_1_, int p_73869_2_) { + if(!textField.textboxKeyTyped(p_73869_1_, p_73869_2_)){ + super.keyTyped(p_73869_1_, p_73869_2_); + } + } + + @Override + public void drawScreen(int p_73863_1_, int p_73863_2_, float p_73863_3_) { + super.drawScreen(p_73863_1_, p_73863_2_, p_73863_3_); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_BLEND); + textField.drawTextBox(); + } +} -- cgit v1.2.3