diff --git a/src/main/java/com/hbm/blocks/network/FluidDuctBox.java b/src/main/java/com/hbm/blocks/network/FluidDuctBox.java index 9db59c67d..5bef3dd4d 100644 --- a/src/main/java/com/hbm/blocks/network/FluidDuctBox.java +++ b/src/main/java/com/hbm/blocks/network/FluidDuctBox.java @@ -31,13 +31,13 @@ import net.minecraftforge.common.util.ForgeDirection; public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOverlay { - @SideOnly(Side.CLIENT) protected IIcon[] iconStraight; - @SideOnly(Side.CLIENT) protected IIcon[] iconEnd; - @SideOnly(Side.CLIENT) protected IIcon[] iconCurveTL; - @SideOnly(Side.CLIENT) protected IIcon[] iconCurveTR; - @SideOnly(Side.CLIENT) protected IIcon[] iconCurveBL; - @SideOnly(Side.CLIENT) protected IIcon[] iconCurveBR; - @SideOnly(Side.CLIENT) protected IIcon[] iconJunction; + @SideOnly(Side.CLIENT) public IIcon[] iconStraight; + @SideOnly(Side.CLIENT) public IIcon[] iconEnd; + @SideOnly(Side.CLIENT) public IIcon[] iconCurveTL; + @SideOnly(Side.CLIENT) public IIcon[] iconCurveTR; + @SideOnly(Side.CLIENT) public IIcon[] iconCurveBL; + @SideOnly(Side.CLIENT) public IIcon[] iconCurveBR; + @SideOnly(Side.CLIENT) public IIcon[] iconJunction; private static final String[] materials = new String[] { "silver", "copper", "white" }; diff --git a/src/main/java/com/hbm/blocks/network/RadioTorchBase.java b/src/main/java/com/hbm/blocks/network/RadioTorchBase.java index 1f0f44b43..325990efa 100644 --- a/src/main/java/com/hbm/blocks/network/RadioTorchBase.java +++ b/src/main/java/com/hbm/blocks/network/RadioTorchBase.java @@ -1,14 +1,22 @@ package com.hbm.blocks.network; +import com.hbm.inventory.gui.GUIScreenRadioTorch; +import com.hbm.tileentity.IGUIProvider; +import com.hbm.tileentity.network.TileEntityRadioTorchBase; + import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; +import net.minecraft.client.gui.GuiScreen; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.tileentity.TileEntity; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -public abstract class RadioTorchBase extends BlockContainer { +public abstract class RadioTorchBase extends BlockContainer implements IGUIProvider { public RadioTorchBase() { super(Material.circuits); @@ -41,4 +49,17 @@ public abstract class RadioTorchBase extends BlockContainer { public int onBlockPlaced(World world, int x, int y, int z, int side, float fX, float fY, float fZ, int meta) { return side; } + + @Override public Container provideContainer(int ID, EntityPlayer player, World world, int x, int y, int z) { return null; } + + @Override + @SideOnly(Side.CLIENT) + public GuiScreen provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { + TileEntity te = world.getTileEntity(x, y, z); + + if(te instanceof TileEntityRadioTorchBase) + return new GUIScreenRadioTorch((TileEntityRadioTorchBase) te); + + return null; + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIAnvil.java b/src/main/java/com/hbm/inventory/gui/GUIAnvil.java index 1003ec2a3..35eb676a1 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIAnvil.java +++ b/src/main/java/com/hbm/inventory/gui/GUIAnvil.java @@ -373,4 +373,9 @@ public class GUIAnvil extends GuiContainer { super.keyTyped(c, key); } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUICoreEmitter.java b/src/main/java/com/hbm/inventory/gui/GUICoreEmitter.java index 26ad8879d..1fe07a89f 100644 --- a/src/main/java/com/hbm/inventory/gui/GUICoreEmitter.java +++ b/src/main/java/com/hbm/inventory/gui/GUICoreEmitter.java @@ -116,4 +116,9 @@ public class GUICoreEmitter extends GuiInfoContainer { super.keyTyped(p_73869_1_, p_73869_2_); } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUICoreStabilizer.java b/src/main/java/com/hbm/inventory/gui/GUICoreStabilizer.java index 36cff060a..99c6fb2be 100644 --- a/src/main/java/com/hbm/inventory/gui/GUICoreStabilizer.java +++ b/src/main/java/com/hbm/inventory/gui/GUICoreStabilizer.java @@ -99,4 +99,9 @@ public class GUICoreStabilizer extends GuiInfoContainer { super.keyTyped(p_73869_1_, p_73869_2_); } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeFstbmb.java b/src/main/java/com/hbm/inventory/gui/GUINukeFstbmb.java index 661f5681d..b03155b93 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeFstbmb.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeFstbmb.java @@ -114,4 +114,9 @@ public class GUINukeFstbmb extends GuiInfoContainer { super.keyTyped(p_73869_1_, p_73869_2_); } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java index bd2599747..8d9bda1d3 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java @@ -376,4 +376,9 @@ public class GUIRBMKConsole extends GuiScreen { public boolean doesGuiPauseGame() { return false; } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIRBMKControlAuto.java b/src/main/java/com/hbm/inventory/gui/GUIRBMKControlAuto.java index 18ae397b9..13ce7330f 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRBMKControlAuto.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRBMKControlAuto.java @@ -170,4 +170,9 @@ public class GUIRBMKControlAuto extends GuiInfoContainer { super.keyTyped(c, i); } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIRadioRec.java b/src/main/java/com/hbm/inventory/gui/GUIRadioRec.java index 5d0203496..36e70e844 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRadioRec.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRadioRec.java @@ -222,4 +222,9 @@ public class GUIRadioRec extends GuiInfoContainer { } } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIReactorControl.java b/src/main/java/com/hbm/inventory/gui/GUIReactorControl.java index e39421f65..b141317da 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIReactorControl.java +++ b/src/main/java/com/hbm/inventory/gui/GUIReactorControl.java @@ -175,4 +175,9 @@ public class GUIReactorControl extends GuiInfoContainer { super.keyTyped(c, i); } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIReactorResearch.java b/src/main/java/com/hbm/inventory/gui/GUIReactorResearch.java index 50e8c8229..e02d155a5 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIReactorResearch.java +++ b/src/main/java/com/hbm/inventory/gui/GUIReactorResearch.java @@ -166,4 +166,9 @@ public class GUIReactorResearch extends GuiInfoContainer { super.keyTyped(c, i); } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenFluid.java b/src/main/java/com/hbm/inventory/gui/GUIScreenFluid.java index 0d0ab2722..24a00b973 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenFluid.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenFluid.java @@ -180,4 +180,9 @@ public class GUIScreenFluid extends GuiScreen { } } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenRadioTorch.java b/src/main/java/com/hbm/inventory/gui/GUIScreenRadioTorch.java new file mode 100644 index 000000000..422ebe9f3 --- /dev/null +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenRadioTorch.java @@ -0,0 +1,134 @@ +package com.hbm.inventory.gui; + +import org.lwjgl.input.Keyboard; +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; +import com.hbm.tileentity.network.TileEntityRadioTorchBase; +import com.hbm.tileentity.network.TileEntityRadioTorchSender; +import com.hbm.util.I18nUtil; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiScreen; +import net.minecraft.client.gui.GuiTextField; +import net.minecraft.util.ResourceLocation; + +public class GUIScreenRadioTorch extends GuiScreen { + + protected ResourceLocation texture; + protected static final ResourceLocation textureSender = new ResourceLocation(RefStrings.MODID + ":textures/gui/machine/gui_rtty_sender.png"); + protected static final ResourceLocation textureReceiver = new ResourceLocation(RefStrings.MODID + ":textures/gui/machine/gui_rtty_receiver.png"); + protected TileEntityRadioTorchBase radio; + protected String title = ""; + protected int xSize = 256; + protected int ySize = 204; + protected int guiLeft; + protected int guiTop; + protected GuiTextField frequency; + protected GuiTextField[] remap; + + public GUIScreenRadioTorch(TileEntityRadioTorchBase radio) { + this.radio = radio; + + if(radio instanceof TileEntityRadioTorchSender) { + this.texture = textureSender; + this.title = "container.rttySender"; + } else { + this.texture = textureReceiver; + this.title = "container.rttyReceiver"; + } + } + + @Override + public void initGui() { + super.initGui(); + this.guiLeft = (this.width - this.xSize) / 2; + this.guiTop = (this.height - this.ySize) / 2; + + Keyboard.enableRepeatEvents(true); + + int oX = 2; + int oY = 2; + int in = radio instanceof TileEntityRadioTorchSender ? 18 : 0; + + this.frequency = new GuiTextField(this.fontRendererObj, guiLeft + 25 + oX, guiTop + 17 + oY, 90, 14); + this.frequency.setTextColor(0x00ff00); + this.frequency.setDisabledTextColour(0x00ff00); + this.frequency.setEnableBackgroundDrawing(false); + this.frequency.setMaxStringLength(25); + this.frequency.setText(radio.channel == null ? "" : radio.channel); + + this.remap = new GuiTextField[16]; + + for(int i = 0; i < 16; i++) { + this.remap[i] = new GuiTextField(this.fontRendererObj, guiLeft + 7 + (130 * (i / 8)) + oX + in, guiTop + 53 + (18 * (i % 8)) + oY, 50, 14); + this.remap[i].setTextColor(0x00ff00); + this.remap[i].setDisabledTextColour(0x00ff00); + this.remap[i].setEnableBackgroundDrawing(false); + this.remap[i].setMaxStringLength(25); + this.remap[i].setText(radio.mapping[i] == null ? "" : radio.mapping[i]); + } + } + + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + this.drawDefaultBackground(); + this.drawGuiContainerBackgroundLayer(f, mouseX, mouseY); + GL11.glDisable(GL11.GL_LIGHTING); + this.drawGuiContainerForegroundLayer(mouseX, mouseY); + GL11.glEnable(GL11.GL_LIGHTING); + } + + + private void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { + String name = I18nUtil.resolveKey(this.title); + this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); + } + + + private void drawGuiContainerBackgroundLayer(float f, int mouseX, int mouseY) { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + Minecraft.getMinecraft().getTextureManager().bindTexture(texture); + + if(radio.customMap) { + drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); + for(int j = 0; j < 16; j++) { + this.remap[j].drawTextBox(); + } + } else { + drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, 35); + drawTexturedModalRect(guiLeft, guiTop + 35, 0, 197, xSize, 7); + } + + this.frequency.drawTextBox(); + } + + @Override + protected void mouseClicked(int x, int y, int i) { + super.mouseClicked(x, y, i); + + this.frequency.mouseClicked(x, y, i); + + if(radio.customMap) { + for(int j = 0; j < 16; j++) this.remap[j].mouseClicked(x, y, i); + } + } + + @Override + protected void keyTyped(char c, int i) { + + if(this.frequency.textboxKeyTyped(c, i)) + return; + + if(radio.customMap) { + for(int j = 0; j < 16; j++) if(this.remap[j].textboxKeyTyped(c, i)) return; + } + + super.keyTyped(c, i); + } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } +} diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java b/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java index 1fc68ab2a..af560d0d9 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java @@ -20,113 +20,105 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ResourceLocation; public class GUIScreenSatCoord extends GuiScreen { - - protected static final ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/satellites/gui_sat_coord.png"); - protected int xSize = 176; - protected int ySize = 126; - protected int guiLeft; - protected int guiTop; - private final EntityPlayer player; - private GuiTextField xField; - private GuiTextField yField; - private GuiTextField zField; - - public GUIScreenSatCoord(EntityPlayer player) { - - this.player = player; - } - - public void initGui() - { - super.initGui(); - this.guiLeft = (this.width - this.xSize) / 2; - this.guiTop = (this.height - this.ySize) / 2; + protected static final ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/satellites/gui_sat_coord.png"); + protected int xSize = 176; + protected int ySize = 126; + protected int guiLeft; + protected int guiTop; + private final EntityPlayer player; - Keyboard.enableRepeatEvents(true); - this.xField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 21, 48, 12); - this.xField.setTextColor(-1); - this.xField.setDisabledTextColour(-1); - this.xField.setEnableBackgroundDrawing(false); - this.xField.setMaxStringLength(7); - this.yField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 56, 48, 12); - this.yField.setTextColor(-1); - this.yField.setDisabledTextColour(-1); - this.yField.setEnableBackgroundDrawing(false); - this.yField.setMaxStringLength(7); - this.zField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 92, 48, 12); - this.zField.setTextColor(-1); - this.zField.setDisabledTextColour(-1); - this.zField.setEnableBackgroundDrawing(false); - this.zField.setMaxStringLength(7); - } - - protected void mouseClicked(int i, int j, int k) - { - super.mouseClicked(i, j, k); - - if(ItemSatInterface.currentSat == null) - return; - - this.xField.mouseClicked(i, j, k); - if(ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) this.yField.mouseClicked(i, j, k); - this.zField.mouseClicked(i, j, k); + private GuiTextField xField; + private GuiTextField yField; + private GuiTextField zField; - if(i >= this.guiLeft + 133 && i < this.guiLeft + 133 + 18 && j >= this.guiTop + 52 && j < this.guiTop + 52 + 18 && player != null) { - - if(NumberUtils.isNumber(xField.getText()) && NumberUtils.isNumber(zField.getText())) { + public GUIScreenSatCoord(EntityPlayer player) { + + this.player = player; + } + + public void initGui() { + super.initGui(); + this.guiLeft = (this.width - this.xSize) / 2; + this.guiTop = (this.height - this.ySize) / 2; + + Keyboard.enableRepeatEvents(true); + this.xField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 21, 48, 12); + this.xField.setTextColor(-1); + this.xField.setDisabledTextColour(-1); + this.xField.setEnableBackgroundDrawing(false); + this.xField.setMaxStringLength(7); + this.yField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 56, 48, 12); + this.yField.setTextColor(-1); + this.yField.setDisabledTextColour(-1); + this.yField.setEnableBackgroundDrawing(false); + this.yField.setMaxStringLength(7); + this.zField = new GuiTextField(this.fontRendererObj, guiLeft + 66, guiTop + 92, 48, 12); + this.zField.setTextColor(-1); + this.zField.setDisabledTextColour(-1); + this.zField.setEnableBackgroundDrawing(false); + this.zField.setMaxStringLength(7); + } + + protected void mouseClicked(int i, int j, int k) { + super.mouseClicked(i, j, k); + + if(ItemSatInterface.currentSat == null) + return; + + this.xField.mouseClicked(i, j, k); + if(ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) + this.yField.mouseClicked(i, j, k); + this.zField.mouseClicked(i, j, k); + + if(i >= this.guiLeft + 133 && i < this.guiLeft + 133 + 18 && j >= this.guiTop + 52 && j < this.guiTop + 52 + 18 && player != null) { + + if(NumberUtils.isNumber(xField.getText()) && NumberUtils.isNumber(zField.getText())) { + + if(ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) { + + if(NumberUtils.isNumber(yField.getText())) { + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:item.techBleep"), 1.0F)); + PacketDispatcher.wrapper.sendToServer(new SatCoordPacket((int) Double.parseDouble(xField.getText()), (int) Double.parseDouble(yField.getText()), + (int) Double.parseDouble(zField.getText()), ISatChip.getFreqS(player.getHeldItem()))); + + this.mc.thePlayer.closeScreen(); + } + + } else { + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:item.techBleep"), 1.0F)); + PacketDispatcher.wrapper + .sendToServer(new SatCoordPacket((int) Double.parseDouble(xField.getText()), 0, (int) Double.parseDouble(zField.getText()), ISatChip.getFreqS(player.getHeldItem()))); + + this.mc.thePlayer.closeScreen(); + } + } + } + } + + public void drawScreen(int mouseX, int mouseY, float f) { + + this.drawDefaultBackground(); + this.drawGuiContainerBackgroundLayer(f, mouseX, mouseY); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_LIGHTING); + this.drawGuiContainerForegroundLayer(mouseX, mouseY); + GL11.glEnable(GL11.GL_LIGHTING); + } - if(ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) { - - if(NumberUtils.isNumber(yField.getText())) { - - mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:item.techBleep"), 1.0F)); - PacketDispatcher.wrapper.sendToServer( - new SatCoordPacket( - (int)Double.parseDouble(xField.getText()), - (int)Double.parseDouble(yField.getText()), - (int)Double.parseDouble(zField.getText()), - ISatChip.getFreqS(player.getHeldItem()))); - - this.mc.thePlayer.closeScreen(); - } - - } else { - - mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:item.techBleep"), 1.0F)); - PacketDispatcher.wrapper.sendToServer( - new SatCoordPacket( - (int)Double.parseDouble(xField.getText()), - 0, - (int)Double.parseDouble(zField.getText()), - ISatChip.getFreqS(player.getHeldItem()))); - - this.mc.thePlayer.closeScreen(); - } - } - } - } - - public void drawScreen(int mouseX, int mouseY, float f) { - - this.drawDefaultBackground(); - this.drawGuiContainerBackgroundLayer(f, mouseX, mouseY); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_LIGHTING); - this.drawGuiContainerForegroundLayer(mouseX, mouseY); - GL11.glEnable(GL11.GL_LIGHTING); - } - @Override public boolean doesGuiPauseGame() { return false; } - + protected void drawGuiContainerForegroundLayer(int i, int j) { - this.xField.drawTextBox(); - if(ItemSatInterface.currentSat != null && ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) this.yField.drawTextBox(); - this.zField.drawTextBox(); + this.xField.drawTextBox(); + if(ItemSatInterface.currentSat != null && ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) + this.yField.drawTextBox(); + this.zField.drawTextBox(); } protected void drawGuiContainerBackgroundLayer(float f, int i, int j) { @@ -142,37 +134,40 @@ public class GUIScreenSatCoord extends GuiScreen { if(zField.isFocused()) drawTexturedModalRect(guiLeft + 61, guiTop + 88, 0, 126, 54, 18); - + if(ItemSatInterface.currentSat != null) { - + if(!ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y)) drawTexturedModalRect(guiLeft + 61, guiTop + 52, 0, 144, 54, 18); - + drawTexturedModalRect(guiLeft + 120, guiTop + 17, 194, 0, 7, 7); - + if(ItemSatInterface.currentSat.satIface == Interfaces.SAT_COORD) { - + drawTexturedModalRect(guiLeft + 120, guiTop + 25, 194, 0, 7, 7); } } } - - protected void keyTyped(char p_73869_1_, int p_73869_2_) { - - if (this.xField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { - } else if (ItemSatInterface.currentSat != null && ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y) && this.yField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { - } else if (this.zField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { - } else { - - super.keyTyped(p_73869_1_, p_73869_2_); - } - - if (p_73869_2_ == 1 || p_73869_2_ == this.mc.gameSettings.keyBindInventory.getKeyCode()) - { - this.mc.thePlayer.closeScreen(); - } - - } + protected void keyTyped(char p_73869_1_, int p_73869_2_) { + + if(this.xField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { + } else if(ItemSatInterface.currentSat != null && ItemSatInterface.currentSat.coordAcs.contains(CoordActions.HAS_Y) && this.yField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { + } else if(this.zField.textboxKeyTyped(p_73869_1_, p_73869_2_)) { + } else { + + super.keyTyped(p_73869_1_, p_73869_2_); + } + + if(p_73869_2_ == 1 || p_73869_2_ == this.mc.gameSettings.keyBindInventory.getKeyCode()) { + this.mc.thePlayer.closeScreen(); + } + + } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java b/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java index b83b18a14..3ed299faa 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java @@ -353,4 +353,9 @@ public class GUIScreenTemplateFolder extends GuiScreen { } } } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } } diff --git a/src/main/java/com/hbm/inventory/gui/GUITurretBase.java b/src/main/java/com/hbm/inventory/gui/GUITurretBase.java index 07dac0c1d..c54616f12 100644 --- a/src/main/java/com/hbm/inventory/gui/GUITurretBase.java +++ b/src/main/java/com/hbm/inventory/gui/GUITurretBase.java @@ -299,6 +299,11 @@ public abstract class GUITurretBase extends GuiInfoContainer { return names.size(); } + + @Override + public void onGuiClosed() { + Keyboard.enableRepeatEvents(false); + } protected void keyTyped(char p_73869_1_, int p_73869_2_) { diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java index 5eb2a6cdb..8923bd65d 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -178,6 +178,15 @@ public class AnvilRecipes { constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(TI.ingot(), 1), new AnvilOutput(new ItemStack(ModBlocks.deco_titanium))).setTier(1).setOverlay(OverlayType.CONSTRUCTION)); constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(W.ingot(), 1), new AnvilOutput(new ItemStack(ModBlocks.deco_tungsten))).setTier(1).setOverlay(OverlayType.CONSTRUCTION)); + for(int i = 0; i < 15; i += 3) { + constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(IRON.plate(), 1), new AnvilOutput(new ItemStack(ModBlocks.fluid_duct_box, 1, i))).setTier(2).setOverlay(OverlayType.CONSTRUCTION)); + constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(CU.plate(), 1), new AnvilOutput(new ItemStack(ModBlocks.fluid_duct_box, 1, i + 1))).setTier(2).setOverlay(OverlayType.CONSTRUCTION)); + constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(AL.plate(), 1), new AnvilOutput(new ItemStack(ModBlocks.fluid_duct_box, 1, i + 2))).setTier(2).setOverlay(OverlayType.CONSTRUCTION)); + constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModBlocks.fluid_duct_box, 1, i), new AnvilOutput(new ItemStack(ModItems.plate_iron))).setTier(2).setOverlay(OverlayType.RECYCLING)); + constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModBlocks.fluid_duct_box, 1, i + 1), new AnvilOutput(new ItemStack(ModItems.plate_copper))).setTier(2).setOverlay(OverlayType.RECYCLING)); + constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModBlocks.fluid_duct_box, 1, i + 2), new AnvilOutput(new ItemStack(ModItems.plate_aluminium))).setTier(2).setOverlay(OverlayType.RECYCLING)); + } + constructionRecipes.add(new AnvilConstructionRecipe( new AStack[] {new OreDictStack(DNT.ingot(), 4), new ComparableStack(ModBlocks.depth_brick)}, new AnvilOutput(new ItemStack(ModBlocks.depth_dnt))).setTier(1916169)); diff --git a/src/main/java/com/hbm/items/machine/ItemFluidDuct.java b/src/main/java/com/hbm/items/machine/ItemFluidDuct.java index f2f3aa457..d9a704514 100644 --- a/src/main/java/com/hbm/items/machine/ItemFluidDuct.java +++ b/src/main/java/com/hbm/items/machine/ItemFluidDuct.java @@ -5,7 +5,7 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; -import com.hbm.tileentity.conductor.TileEntityFluidDuct; +import com.hbm.tileentity.conductor.TileEntityFluidDuctSimple; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -120,10 +120,10 @@ public class ItemFluidDuct extends Item { return false; } else { --stack.stackSize; - world.setBlock(x, y, z, ModBlocks.fluid_duct); + world.setBlock(x, y, z, ModBlocks.fluid_duct_neo); - if(world.getTileEntity(x, y, z) instanceof TileEntityFluidDuct) { - ((TileEntityFluidDuct) world.getTileEntity(x, y, z)).setType(Fluids.fromID(stack.getItemDamage())); + if(world.getTileEntity(x, y, z) instanceof TileEntityFluidDuctSimple) { + ((TileEntityFluidDuctSimple) world.getTileEntity(x, y, z)).setType(Fluids.fromID(stack.getItemDamage())); } world.playSoundEffect(x, y, z, "hbm:block.pipePlaced", 1.0F, 0.65F + world.rand.nextFloat() * 0.2F); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index abbf505aa..2f93f4c02 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -598,7 +598,11 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.crystal_virus, 1), new Object[] { "STS", "THT", "STS", 'S', ModItems.particle_strange, 'T', W.dust(), 'H', ModItems.crystal_horn }); addRecipeAuto(new ItemStack(ModBlocks.crystal_pulsar, 32), new Object[] { "STS", "THT", "STS", 'S', ModItems.cell_uf6, 'T', AL.dust(), 'H', ModItems.crystal_charred }); - addRecipeAuto(new ItemStack(ModBlocks.fluid_duct, 8), new Object[] { "SAS", " ", "SAS", 'S', STEEL.plate(), 'A', AL.plate() }); + addRecipeAuto(new ItemStack(ModBlocks.fluid_duct_neo, 8, 0), new Object[] { "SAS", " ", "SAS", 'S', STEEL.plate(), 'A', AL.plate() }); + addRecipeAuto(new ItemStack(ModBlocks.fluid_duct_neo, 8, 1), new Object[] { "IAI", " ", "IAI", 'I', IRON.plate(), 'A', AL.plate() }); + addRecipeAuto(new ItemStack(ModBlocks.fluid_duct_neo, 8, 2), new Object[] { "ASA", " ", "ASA", 'S', STEEL.plate(), 'A', AL.plate() }); + addRecipeAuto(new ItemStack(ModBlocks.fluid_duct, 8), new Object[] { "SAS", " D ", "SAS", 'S', STEEL.plate(), 'A', AL.plate(), 'D', ModItems.ducttape }); + addShapelessAuto(new ItemStack(ModBlocks.fluid_duct_neo, 1, 0), new Object[] { ModBlocks.fluid_duct }); addRecipeAuto(new ItemStack(ModBlocks.fluid_duct_solid, 8), new Object[] { "SAS", "A A", "SAS", 'S', STEEL.ingot(), 'A', AL.plate() }); addRecipeAuto(new ItemStack(ModItems.template_folder, 1), new Object[] { "LPL", "BPB", "LPL", 'P', Items.paper, 'L', "dye", 'B', "dye" }); addRecipeAuto(new ItemStack(ModItems.pellet_antimatter, 1), new Object[] { "###", "###", "###", '#', ModItems.cell_antimatter }); @@ -686,20 +690,20 @@ public class CraftingManager { addShapelessAuto(new ItemStack(Items.slime_ball, 16), new Object[] { new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), Fluids.SULFURIC_ACID.getDict(1000) }); for(int i = 1; i < Fluids.getAll().length; ++i) { - addShapelessAuto(new ItemStack(ModItems.fluid_duct, 1, i), new Object[] { new ItemStack(ModBlocks.fluid_duct, 1), new ItemStack(ModItems.fluid_identifier, 1, i) }); + addShapelessAuto(new ItemStack(ModItems.fluid_duct, 1, i), new Object[] { new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModItems.fluid_identifier, 1, i) }); - addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), - new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), - new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModItems.fluid_identifier, 1, i) }); + addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModBlocks.fluid_duct_neo, 1), + new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModBlocks.fluid_duct_neo, 1), + new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModBlocks.fluid_duct_neo, 1), new ItemStack(ModItems.fluid_identifier, 1, i) }); addShapelessAuto(new ItemStack(ModItems.fluid_duct, 1, i), new Object[] { new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_identifier, 1, i) }); - addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), - new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), - new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_identifier, 1, i) }); + addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), + new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), + new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_identifier, 1, i) }); } - addShapelessAuto(new ItemStack(ModBlocks.fluid_duct, 1), new Object[] { new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE) }); + addShapelessAuto(new ItemStack(ModBlocks.fluid_duct_neo, 1), new Object[] { new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE) }); addShapelessAuto(new ItemStack(ModItems.redstone_depleted, 1), new Object[] { new ItemStack(ModItems.battery_su, 1, OreDictionary.WILDCARD_VALUE) }); addShapelessAuto(new ItemStack(ModItems.redstone_depleted, 2), new Object[] { new ItemStack(ModItems.battery_su_l, 1, OreDictionary.WILDCARD_VALUE) }); @@ -712,7 +716,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.machine_missile_assembly, 1), new Object[] { "PWP", "SSS", "CCC", 'P', ModItems.pedestal_steel, 'W', ModItems.wrench, 'S', STEEL.plate(), 'C', ModBlocks.steel_scaffold }); addRecipeAuto(new ItemStack(ModBlocks.struct_launcher, 4), new Object[] { "PPP", "SDS", "CCC", 'P', STEEL.plate(), 'S', ModBlocks.steel_scaffold, 'D', ModBlocks.deco_pipe_quad, 'C', ModBlocks.concrete_smooth }); addRecipeAuto(new ItemStack(ModBlocks.struct_launcher, 4), new Object[] { "PPP", "SDS", "CCC", 'P', STEEL.plate(), 'S', ModBlocks.steel_scaffold, 'D', ModBlocks.deco_pipe_quad, 'C', ModBlocks.concrete }); - addRecipeAuto(new ItemStack(ModBlocks.struct_scaffold, 4), new Object[] { "SSS", "DCD", "SSS", 'S', ModBlocks.steel_scaffold, 'D', ModBlocks.fluid_duct, 'C', ModBlocks.red_cable }); + addRecipeAuto(new ItemStack(ModBlocks.struct_scaffold, 4), new Object[] { "SSS", "DCD", "SSS", 'S', ModBlocks.steel_scaffold, 'D', new ItemStack(ModBlocks.fluid_duct_neo, 1, OreDictionary.WILDCARD_VALUE), 'C', ModBlocks.red_cable }); addRecipeAuto(new ItemStack(ModItems.seg_10, 1), new Object[] { "P", "S", "B", 'P', AL.plate(), 'S', ModBlocks.steel_scaffold, 'B', ModBlocks.steel_beam }); addRecipeAuto(new ItemStack(ModItems.seg_15, 1), new Object[] { "PP", "SS", "BB", 'P', TI.plate(), 'S', ModBlocks.steel_scaffold, 'B', ModBlocks.steel_beam }); diff --git a/src/main/java/com/hbm/render/block/RenderBoxDuct.java b/src/main/java/com/hbm/render/block/RenderBoxDuct.java index 33f8f5f52..0fa600fc9 100644 --- a/src/main/java/com/hbm/render/block/RenderBoxDuct.java +++ b/src/main/java/com/hbm/render/block/RenderBoxDuct.java @@ -1,5 +1,7 @@ package com.hbm.render.block; +import org.lwjgl.opengl.GL11; + import com.hbm.blocks.network.FluidDuctBox; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; @@ -16,7 +18,42 @@ import net.minecraft.world.IBlockAccess; public class RenderBoxDuct implements ISimpleBlockRenderingHandler { @Override - public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { } + public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { + + Tessellator tessellator = Tessellator.instance; + FluidDuctBox duct = (FluidDuctBox) block; + int type = metadata % 3; + + float lower = 0.125F; + float upper = 0.875F; + + for(int i = 2; i < 13; i += 3) { + + if(metadata > i) { + lower += 0.0625F; + upper -= 0.0625F; + } + } + + GL11.glTranslatef(-0.5F, -0.5F, -0.5F); + + renderer.setRenderBounds(lower, lower, 0.0F, upper, upper, 1.0F); + + renderer.uvRotateNorth = 1; + renderer.uvRotateSouth = 2; + + tessellator.startDrawingQuads(); + tessellator.setNormal(0F, 1F, 0F); renderer.renderFaceYPos(block, 0, 0, 0, duct.iconStraight[type]); + tessellator.setNormal(0F, -1F, 0F); renderer.renderFaceYNeg(block, 0, 0, 0, duct.iconStraight[type]); + tessellator.setNormal(1F, 0F, 0F); renderer.renderFaceXPos(block, 0, 0, 0, duct.iconStraight[type]); + tessellator.setNormal(-1F, 0F, 0F); renderer.renderFaceXNeg(block, 0, 0, 0, duct.iconStraight[type]); + tessellator.setNormal(0F, 0F, 1F); renderer.renderFaceZPos(block, 0, 0, 0, duct.iconEnd[type]); + tessellator.setNormal(0F, 0F, -1F); renderer.renderFaceZNeg(block, 0, 0, 0, duct.iconEnd[type]); + tessellator.draw(); + + renderer.uvRotateNorth = 0; + renderer.uvRotateSouth = 0; + } @Override public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { @@ -173,7 +210,7 @@ public class RenderBoxDuct implements ISimpleBlockRenderingHandler { @Override public boolean shouldRender3DInInventory(int modelId) { - return false; + return true; } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java index ad902ff80..bc8d7253f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java @@ -14,6 +14,7 @@ import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; import api.hbm.energy.IEnergyUser; +import api.hbm.fluid.IFluidStandardReceiver; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.nbt.NBTTagCompound; @@ -21,7 +22,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase implements IFluidAcceptor, IEnergyUser { +public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase implements IFluidAcceptor, IEnergyUser, IFluidStandardReceiver { public long power; public static final long maxPower = 100000000; @@ -47,7 +48,8 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme if(!worldObj.isRemote) { - this.updateConnections(); + if(this.worldObj.getTotalWorldTime() % 20 == 0) + this.updateConnections(); /// START Managing all the internal stuff /// power = Library.chargeTEFromItems(slots, 0, power, maxPower); @@ -135,6 +137,8 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme for(int i = 1; i < 4; i++) { for(int j = -1; j < 2; j++) { this.trySubscribe(worldObj, xCoord + side.offsetX * j + dir.offsetX * 2, yCoord + i, zCoord + side.offsetZ * j + dir.offsetZ * 2, j < 0 ? ForgeDirection.DOWN : ForgeDirection.UP); + this.trySubscribe(tanks[0].getTankType(), worldObj, xCoord + side.offsetX * j + dir.offsetX * 2, yCoord + i, zCoord + side.offsetZ * j + dir.offsetZ * 2, j < 0 ? ForgeDirection.DOWN : ForgeDirection.UP); + this.trySubscribe(tanks[1].getTankType(), worldObj, xCoord + side.offsetX * j + dir.offsetX * 2, yCoord + i, zCoord + side.offsetZ * j + dir.offsetZ * 2, j < 0 ? ForgeDirection.DOWN : ForgeDirection.UP); } } } @@ -145,9 +149,6 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme private void updateType() { - //if(plasma.getFill() > 0) - // return; - List types = new ArrayList() {{ add(tanks[0].getTankType()); add(tanks[1].getTankType()); }}; if(types.contains(Fluids.DEUTERIUM) && types.contains(Fluids.TRITIUM)) { @@ -276,8 +277,17 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme @Override @SideOnly(Side.CLIENT) - public double getMaxRenderDistanceSquared() - { + public double getMaxRenderDistanceSquared() { return 65536.0D; } + + @Override + public FluidTank[] getAllTanks() { + return new FluidTank[] {tanks[0], tanks[1], plasma}; + } + + @Override + public FluidTank[] getReceivingTanks() { + return tanks; + } } diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityRadioTorchBase.java b/src/main/java/com/hbm/tileentity/network/TileEntityRadioTorchBase.java index d57223822..52f9fb55d 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityRadioTorchBase.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityRadioTorchBase.java @@ -4,6 +4,16 @@ import net.minecraft.tileentity.TileEntity; public class TileEntityRadioTorchBase extends TileEntity { + /** channel we're broadcasting on/listening to */ public String channel = ""; + /** previous redstone state for input/output, needed for state change detection */ + protected int lastState = 0; + /** last update tick, needed for receivers listening for changes */ protected long lastUpdate; + /** switches state change mode to tick-based polling */ + public boolean polling = false; + /** switches redstone passthrough to custom signal mapping */ + public boolean customMap = false; + /** custom mapping */ + public String[] mapping = new String[16]; } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index f0c5c8e9c..38fda0441 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -3487,7 +3487,9 @@ tile.fireworks.message=Nachricht: %s tile.fireworks.color=Farbe: %s tile.flame_war.name=Flamewar aus der Box tile.float_bomb.name=Schwebebombe -tile.fluid_duct.name=Universelles Flüssigkeitsrohr +tile.fluid_duct.name=Universelles Flüssigkeitsrohr (Veraltet) +tile.fluid_duct_box.name=Universelles Flüssigkeitsrohr (Boxrohr) +tile.fluid_duct_neo.name=Universelles Flüssigkeitsrohr tile.fluid_duct_solid.name=Geschirmtes universelles Flüssigkeitsrohr tile.foam_layer.name=Schaumdecke tile.foundry_basin.name=Gussbecken diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 3402548ba..140f3c526 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -4015,7 +4015,9 @@ tile.fireworks.message=Message: %s tile.fireworks.color=Color: %s tile.flame_war.name=Flame War in a Box tile.float_bomb.name=Levitation Bomb -tile.fluid_duct.name=Universal Fluid Duct +tile.fluid_duct.name=Universal Fluid Duct (Deprecated) +tile.fluid_duct_box.name=Universal Fluid Duct (Boxduct) +tile.fluid_duct_neo.name=Universal Fluid Duct tile.fluid_duct_solid.name=Coated Universal Fluid Duct tile.foam_layer.name=Foam layer tile.foundry_basin.name=Foundry Basin diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/ethanol.png b/src/main/resources/assets/hbm/textures/gui/fluids/ethanol.png index 672e1b797..8a72bc22d 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/fluids/ethanol.png and b/src/main/resources/assets/hbm/textures/gui/fluids/ethanol.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/lubricant.png b/src/main/resources/assets/hbm/textures/gui/fluids/lubricant.png index 569d10be2..092b08cab 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/fluids/lubricant.png and b/src/main/resources/assets/hbm/textures/gui/fluids/lubricant.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_receiver.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_receiver.png index 50f0fb4e8..e035367c1 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_receiver.png and b/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_receiver.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_sender.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_sender.png index 1ddae939e..ff5c25322 100755 Binary files a/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_sender.png and b/src/main/resources/assets/hbm/textures/gui/machine/gui_rtty_sender.png differ