diff --git a/buildnumber.txt b/buildnumber.txt index 41b5364b9..0acebe3a8 100644 --- a/buildnumber.txt +++ b/buildnumber.txt @@ -1 +1 @@ -41 +42 diff --git a/info.txt b/info.txt index d1382869e..351fd1779 100644 --- a/info.txt +++ b/info.txt @@ -37,3 +37,4 @@ Minecraft 1.4.5 @ AssemblyLine_v0.2.1.39.jar AssemblyLine_v0.2.1.39_api.zip * AssemblyLine_v0.2.1.40.jar AssemblyLine_v0.2.1.40_api.zip @ AssemblyLine_v0.2.2.41.jar AssemblyLine_v0.2.2.41_api.zip +@ AssemblyLine_v0.2.2.42.jar AssemblyLine_v0.2.2.42_api.zip diff --git a/resources/assemblyline/textures/gui_encoder.png b/resources/assemblyline/textures/gui_encoder.png index 61cd12bf2..a71a962a1 100644 Binary files a/resources/assemblyline/textures/gui_encoder.png and b/resources/assemblyline/textures/gui_encoder.png differ diff --git a/src/minecraft/assemblyline/client/gui/GuiEncoder.java b/src/minecraft/assemblyline/client/gui/GuiEncoder.java index 4f9964b30..e79499b92 100644 --- a/src/minecraft/assemblyline/client/gui/GuiEncoder.java +++ b/src/minecraft/assemblyline/client/gui/GuiEncoder.java @@ -63,11 +63,11 @@ public class GuiEncoder extends GuiContainer implements IInventoryWatcher this.containerWidth = (this.width - this.xSize) / 2; this.containerHeight = (this.height - this.ySize) / 2; - this.addButton = new GuiButton(0, containerWidth + (xSize - 25), containerHeight + 128, 18, 20, "+"); - this.delButton = new GuiButton(1, containerWidth + (xSize - 43), containerHeight + 128, 18, 20, "-"); - this.pUpButton = new GuiButton(2, containerWidth + (xSize - 25), containerHeight + 48, 18, 20, ""); - this.pDnButton = new GuiButton(3, containerWidth + (xSize - 25), containerHeight + 108, 18, 20, ""); - this.commandField = new GuiTextField(fontRenderer, 8, 129, xSize - 52, 18); + this.addButton = new GuiButton(0, containerWidth + (xSize - 25), containerHeight + 128 + ContainerEncoder.Y_OFFSET, 18, 20, "+"); + this.delButton = new GuiButton(1, containerWidth + (xSize - 43), containerHeight + 128 + ContainerEncoder.Y_OFFSET, 18, 20, "-"); + this.pUpButton = new GuiButton(2, containerWidth + (xSize - 25), containerHeight + 48 + ContainerEncoder.Y_OFFSET, 18, 20, ""); + this.pDnButton = new GuiButton(3, containerWidth + (xSize - 25), containerHeight + 108 + ContainerEncoder.Y_OFFSET, 18, 20, ""); + this.commandField = new GuiTextField(fontRenderer, 8, 129 + ContainerEncoder.Y_OFFSET, xSize - 52, 18); // commandList = new GuiCommandList(mc, xSize - 7, 128, 7, 120, 170, 20); this.controlList.add(addButton); @@ -140,12 +140,12 @@ public class GuiEncoder extends GuiContainer implements IInventoryWatcher { glColor4f(1, 1, 1, 1); glDisable(GL_LIGHTING); - this.fontRenderer.drawString(TranslationHelper.getLocal("tile.encoder.name"), 68, 6, 4210752); - this.fontRenderer.drawString("Disk:", 56, 28, 4210752); + this.fontRenderer.drawString(TranslationHelper.getLocal("tile.encoder.name"), 68, 6 + ContainerEncoder.Y_OFFSET, 4210752); + this.fontRenderer.drawString("Disk:", 56, 28 + ContainerEncoder.Y_OFFSET, 4210752); // render page up and page down buttons glPushMatrix(); - glTranslatef(pUpButton.xPosition - containerWidth + 6, pUpButton.yPosition - containerHeight + 7, 0); + glTranslatef(pUpButton.xPosition - containerWidth + 6, pUpButton.yPosition - containerHeight + 7 , 0); this.fontRenderer.drawString("^", 1, 1, 0x444444); this.fontRenderer.drawString("^", 0, 0, 0xFFFFFF); glPopMatrix(); @@ -208,8 +208,8 @@ public class GuiEncoder extends GuiContainer implements IInventoryWatcher GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.renderEngine.bindTexture(var4); - this.drawTexturedModalRect(containerWidth, containerHeight, 0, 0, this.xSize, this.ySize); - drawOutlineRect(containerWidth + 7, containerHeight + 48, containerWidth + (xSize - 25), containerHeight + 48 + 80, 0, 0, 0, 0.5f, 0.5f, 0.5f); + this.drawTexturedModalRect(containerWidth, containerHeight + ContainerEncoder.Y_OFFSET, 0, 0, this.xSize, this.ySize); + drawOutlineRect(containerWidth + 7, containerHeight + 48 + ContainerEncoder.Y_OFFSET, containerWidth + (xSize - 25), containerHeight + 48 + 80 + ContainerEncoder.Y_OFFSET, 0, 0, 0, 0.5f, 0.5f, 0.5f); } public static void drawOutlineRect(int x1, int y1, int x2, int y2, float rR, float rG, float rB, float lR, float lG, float lB) diff --git a/src/minecraft/assemblyline/client/render/RenderCrate.java b/src/minecraft/assemblyline/client/render/RenderCrate.java index 8f5daf1ac..ed44b9492 100644 --- a/src/minecraft/assemblyline/client/render/RenderCrate.java +++ b/src/minecraft/assemblyline/client/render/RenderCrate.java @@ -18,7 +18,6 @@ import net.minecraftforge.common.ForgeDirection; import org.lwjgl.opengl.GL11; import assemblyline.common.block.TileEntityCrate; -import assemblyline.common.machine.imprinter.ItemImprinter; public class RenderCrate extends TileEntitySpecialRenderer { diff --git a/src/minecraft/assemblyline/client/render/RenderImprintable.java b/src/minecraft/assemblyline/client/render/RenderImprintable.java index 34974afe4..6894044ee 100644 --- a/src/minecraft/assemblyline/client/render/RenderImprintable.java +++ b/src/minecraft/assemblyline/client/render/RenderImprintable.java @@ -9,7 +9,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MovingObjectPosition; import assemblyline.common.machine.imprinter.ItemImprinter; -import assemblyline.common.machine.imprinter.TileEntityImprintable; +import assemblyline.common.machine.imprinter.TileEntityFilterable; /** * @author Briman0094 @@ -21,9 +21,9 @@ public abstract class RenderImprintable extends TileEntitySpecialRenderer { if (tileEntity != null) { - if (tileEntity instanceof TileEntityImprintable) + if (tileEntity instanceof TileEntityFilterable) { - TileEntityImprintable tileFilterable = (TileEntityImprintable) tileEntity; + TileEntityFilterable tileFilterable = (TileEntityFilterable) tileEntity; ItemStack filter = tileFilterable.getFilter(); @@ -39,7 +39,7 @@ public abstract class RenderImprintable extends TileEntitySpecialRenderer ArrayList filters = ItemImprinter.getFilters(filter); for (int i = 0; i < filters.size(); i++) { - if (((TileEntityImprintable) tileEntity).isInverted()) + if (((TileEntityFilterable) tileEntity).isInverted()) { RenderHelper.renderFloatingText(filters.get(i).getTooltip(player, Minecraft.getMinecraft().gameSettings.advancedItemTooltips).get(0).toString(), (float) x + 0.5f, ((float) y + (i * 0.25f)) - 1f, (float) z + 0.5f, 0xFF8888); } diff --git a/src/minecraft/assemblyline/common/block/TileEntityCrate.java b/src/minecraft/assemblyline/common/block/TileEntityCrate.java index f9a1034b8..780a6c113 100644 --- a/src/minecraft/assemblyline/common/block/TileEntityCrate.java +++ b/src/minecraft/assemblyline/common/block/TileEntityCrate.java @@ -13,7 +13,6 @@ import universalelectricity.prefab.network.IPacketReceiver; import universalelectricity.prefab.network.PacketManager; import universalelectricity.prefab.tile.TileEntityAdvanced; import assemblyline.common.AssemblyLine; -import assemblyline.common.machine.imprinter.ItemImprinter; import com.google.common.io.ByteArrayDataInput; diff --git a/src/minecraft/assemblyline/common/machine/TileEntityManipulator.java b/src/minecraft/assemblyline/common/machine/TileEntityManipulator.java index f02cd25c1..1bcb85ed8 100644 --- a/src/minecraft/assemblyline/common/machine/TileEntityManipulator.java +++ b/src/minecraft/assemblyline/common/machine/TileEntityManipulator.java @@ -15,12 +15,12 @@ import universalelectricity.core.vector.Vector3; import universalelectricity.prefab.implement.IRedstoneReceptor; import universalelectricity.prefab.network.PacketManager; import assemblyline.api.IManipulator; -import assemblyline.common.machine.imprinter.TileEntityImprintable; +import assemblyline.common.machine.imprinter.TileEntityFilterable; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.network.PacketDispatcher; import cpw.mods.fml.relauncher.Side; -public class TileEntityManipulator extends TileEntityImprintable implements IRedstoneReceptor, IManipulator +public class TileEntityManipulator extends TileEntityFilterable implements IRedstoneReceptor, IManipulator { public boolean selfPulse = false; diff --git a/src/minecraft/assemblyline/common/machine/TileEntityRejector.java b/src/minecraft/assemblyline/common/machine/TileEntityRejector.java index c3d27f450..3665b4e56 100644 --- a/src/minecraft/assemblyline/common/machine/TileEntityRejector.java +++ b/src/minecraft/assemblyline/common/machine/TileEntityRejector.java @@ -11,14 +11,14 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraftforge.common.ForgeDirection; import universalelectricity.core.vector.Vector3; import universalelectricity.prefab.network.PacketManager; -import assemblyline.common.machine.imprinter.TileEntityImprintable; +import assemblyline.common.machine.imprinter.TileEntityFilterable; /** * * @author Darkguardsman * */ -public class TileEntityRejector extends TileEntityImprintable +public class TileEntityRejector extends TileEntityFilterable { /** * should the piston fire, or be extended diff --git a/src/minecraft/assemblyline/common/machine/detector/TileEntityDetector.java b/src/minecraft/assemblyline/common/machine/detector/TileEntityDetector.java index 5b9e8e3c2..3d21bff7f 100644 --- a/src/minecraft/assemblyline/common/machine/detector/TileEntityDetector.java +++ b/src/minecraft/assemblyline/common/machine/detector/TileEntityDetector.java @@ -10,9 +10,9 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraftforge.common.ForgeDirection; import universalelectricity.prefab.network.PacketManager; import assemblyline.common.AssemblyLine; -import assemblyline.common.machine.imprinter.TileEntityImprintable; +import assemblyline.common.machine.imprinter.TileEntityFilterable; -public class TileEntityDetector extends TileEntityImprintable +public class TileEntityDetector extends TileEntityFilterable { private boolean powering = false; diff --git a/src/minecraft/assemblyline/common/machine/encoder/ContainerEncoder.java b/src/minecraft/assemblyline/common/machine/encoder/ContainerEncoder.java index 0b195cdfa..b8ddb6382 100644 --- a/src/minecraft/assemblyline/common/machine/encoder/ContainerEncoder.java +++ b/src/minecraft/assemblyline/common/machine/encoder/ContainerEncoder.java @@ -5,22 +5,22 @@ import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import universalelectricity.core.vector.Vector3; public class ContainerEncoder extends Container { + public static final int Y_OFFSET = 9; + private ItemStack[] containingItems = new ItemStack[1]; private InventoryPlayer inventoryPlayer; - private TileEntityEncoder encoder; + private TileEntityEncoder tileEntity; public ContainerEncoder(InventoryPlayer inventoryPlayer, TileEntityEncoder encoder) { this.inventoryPlayer = inventoryPlayer; - this.encoder = encoder; + this.tileEntity = encoder; // Disk - this.addSlotToContainer(new Slot(encoder, 0, 80, 17)); + this.addSlotToContainer(new Slot(encoder, 0, 80, 24 + Y_OFFSET)); int var3; @@ -28,20 +28,20 @@ public class ContainerEncoder extends Container { for (int var4 = 0; var4 < 9; ++var4) { - this.addSlotToContainer(new Slot(inventoryPlayer, var4 + var3 * 9 + 9, 8 + var4 * 18, 155 + var3 * 18)); + this.addSlotToContainer(new Slot(inventoryPlayer, var4 + var3 * 9 + 9, 8 + var4 * 18, 155 + var3 * 18 + Y_OFFSET)); } } for (var3 = 0; var3 < 9; ++var3) { - this.addSlotToContainer(new Slot(inventoryPlayer, var3, 8 + var3 * 18, 213)); + this.addSlotToContainer(new Slot(inventoryPlayer, var3, 8 + var3 * 18, 213 + Y_OFFSET)); } } @Override public boolean canInteractWith(EntityPlayer player) { - return encoder.isUseableByPlayer(player); + return this.tileEntity.isUseableByPlayer(player); } /** diff --git a/src/minecraft/assemblyline/common/machine/encoder/TileEntityEncoder.java b/src/minecraft/assemblyline/common/machine/encoder/TileEntityEncoder.java index eebd932b0..66a7138a6 100644 --- a/src/minecraft/assemblyline/common/machine/encoder/TileEntityEncoder.java +++ b/src/minecraft/assemblyline/common/machine/encoder/TileEntityEncoder.java @@ -153,6 +153,7 @@ public class TileEntityEncoder extends TileEntityAdvanced implements IPacketRece { this.disk = ItemStack.loadItemStackFromNBT(diskNBT); } + } @Override @@ -160,25 +161,28 @@ public class TileEntityEncoder extends TileEntityAdvanced implements IPacketRece { try { - /** - * Only the server receives this from the client's button click action. - */ - String newCommand = dataStream.readUTF(); - - if (Command.getCommand(newCommand) != null && this.disk != null) + if (!this.worldObj.isRemote) { - ArrayList tempCmds = ItemDisk.getCommands(this.disk); + /** + * New command action + */ + String newCommand = dataStream.readUTF(); - if (dataStream.readBoolean()) + if (Command.getCommand(newCommand) != null && this.disk != null) { - tempCmds.add(newCommand); - } - else - { - tempCmds.remove(newCommand); - } + ArrayList tempCmds = ItemDisk.getCommands(this.disk); - ItemDisk.setCommands(this.disk, tempCmds); + if (dataStream.readBoolean()) + { + tempCmds.add(newCommand); + } + else + { + tempCmds.remove(newCommand); + } + + ItemDisk.setCommands(this.disk, tempCmds); + } } } catch (Exception e) diff --git a/src/minecraft/assemblyline/common/machine/imprinter/BlockImprintable.java b/src/minecraft/assemblyline/common/machine/imprinter/BlockImprintable.java index a9a368301..b239173a4 100644 --- a/src/minecraft/assemblyline/common/machine/imprinter/BlockImprintable.java +++ b/src/minecraft/assemblyline/common/machine/imprinter/BlockImprintable.java @@ -77,9 +77,9 @@ public abstract class BlockImprintable extends BlockMachine if (tileEntity != null) { - if (tileEntity instanceof TileEntityImprintable) + if (tileEntity instanceof TileEntityFilterable) { - ((TileEntityImprintable) tileEntity).toggleInversion(); + ((TileEntityFilterable) tileEntity).toggleInversion(); world.markBlockForRenderUpdate(x, y, z); } } diff --git a/src/minecraft/assemblyline/common/machine/imprinter/TileEntityImprintable.java b/src/minecraft/assemblyline/common/machine/imprinter/TileEntityFilterable.java similarity index 96% rename from src/minecraft/assemblyline/common/machine/imprinter/TileEntityImprintable.java rename to src/minecraft/assemblyline/common/machine/imprinter/TileEntityFilterable.java index cc7166dc0..3609643d4 100644 --- a/src/minecraft/assemblyline/common/machine/imprinter/TileEntityImprintable.java +++ b/src/minecraft/assemblyline/common/machine/imprinter/TileEntityFilterable.java @@ -24,7 +24,7 @@ import com.google.common.io.ByteArrayDataInput; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.relauncher.Side; -public abstract class TileEntityImprintable extends TileEntityAssemblyNetwork implements IRotatable, IFilterable, IPacketReceiver +public abstract class TileEntityFilterable extends TileEntityAssemblyNetwork implements IRotatable, IFilterable, IPacketReceiver { private ItemStack filterItem; private boolean inverted;