From 91c6b6de6d20361156f444a8e28801966030078d Mon Sep 17 00:00:00 2001 From: pahimar Date: Mon, 23 Mar 2015 11:07:47 -0400 Subject: [PATCH] Another whack of stuff with varying levels of won't break --- .../com/pahimar/ee3/api/AlchemyArray.java | 2 +- .../ee3/array/TransmutationAlchemyArray.java | 254 +++++++++++++++++- .../pahimar/ee3/block/BlockAlchemyArray.java | 2 +- .../gui/inventory/GuiTransmutationArray.java | 65 +++++ .../ee3/client/util/ClientParticleHelper.java | 2 +- .../ee3/handler/ConfigurationHandler.java | 2 +- .../com/pahimar/ee3/handler/GuiHandler.java | 10 + .../ContainerTransmutationArray.java | 122 +++++++++ .../com/pahimar/ee3/proxy/ClientProxy.java | 2 +- .../java/com/pahimar/ee3/reference/GUIs.java | 3 +- .../com/pahimar/ee3/reference/Textures.java | 3 + .../tileentity/TileEntityAlchemyArray.java | 34 ++- .../TileEntityTransmutationTablet.java | 25 +- .../ee3/util/CommonParticleHelper.java | 13 + .../ee3/textures/gui/transmutationArray_1.png | Bin 0 -> 20662 bytes .../ee3/textures/gui/transmutationArray_3.png | Bin 0 -> 20095 bytes .../ee3/textures/gui/transmutationArray_5.png | Bin 0 -> 17123 bytes .../textures/xcf/gui/transmutationArray.xcf | Bin 0 -> 98552 bytes 18 files changed, 505 insertions(+), 34 deletions(-) create mode 100644 src/main/java/com/pahimar/ee3/client/gui/inventory/GuiTransmutationArray.java create mode 100644 src/main/java/com/pahimar/ee3/inventory/ContainerTransmutationArray.java create mode 100644 src/main/resources/assets/ee3/textures/gui/transmutationArray_1.png create mode 100644 src/main/resources/assets/ee3/textures/gui/transmutationArray_3.png create mode 100644 src/main/resources/assets/ee3/textures/gui/transmutationArray_5.png create mode 100644 src/main/resources/assets/ee3/textures/xcf/gui/transmutationArray.xcf diff --git a/src/main/java/com/pahimar/ee3/api/AlchemyArray.java b/src/main/java/com/pahimar/ee3/api/AlchemyArray.java index d2f1917c..3be0a67c 100644 --- a/src/main/java/com/pahimar/ee3/api/AlchemyArray.java +++ b/src/main/java/com/pahimar/ee3/api/AlchemyArray.java @@ -177,7 +177,7 @@ public class AlchemyArray implements Comparable } - public void onUpdate(World world, int arrayX, int arrayY, int arrayZ) + public void onUpdate(World world, int arrayX, int arrayY, int arrayZ, int tickCount) { } diff --git a/src/main/java/com/pahimar/ee3/array/TransmutationAlchemyArray.java b/src/main/java/com/pahimar/ee3/array/TransmutationAlchemyArray.java index e32c68b0..2a5245d0 100644 --- a/src/main/java/com/pahimar/ee3/array/TransmutationAlchemyArray.java +++ b/src/main/java/com/pahimar/ee3/array/TransmutationAlchemyArray.java @@ -1,23 +1,29 @@ package com.pahimar.ee3.array; +import com.pahimar.ee3.EquivalentExchange3; import com.pahimar.ee3.api.AlchemyArray; import com.pahimar.ee3.init.ModBlocks; -import com.pahimar.ee3.network.PacketHandler; -import com.pahimar.ee3.network.message.MessageSingleParticleEvent; -import com.pahimar.ee3.reference.Names; -import com.pahimar.ee3.reference.Particles; -import com.pahimar.ee3.reference.Sounds; -import com.pahimar.ee3.reference.Textures; +import com.pahimar.ee3.reference.*; import com.pahimar.ee3.tileentity.TileEntityAlchemyArray; import com.pahimar.ee3.tileentity.TileEntityTransmutationTablet; +import com.pahimar.ee3.util.CommonParticleHelper; import com.pahimar.ee3.util.CommonSoundHelper; -import cpw.mods.fml.common.network.NetworkRegistry; +import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class TransmutationAlchemyArray extends AlchemyArray +import java.util.Random; + +public class TransmutationAlchemyArray extends AlchemyArray implements IInventory { + private ItemStack[] inventory = new ItemStack[25]; + public TransmutationAlchemyArray() { super(Textures.AlchemyArray.TRANSMUTATION_ALCHEMY_ARRAY, Names.AlchemyArrays.TRANSMUTATION_ALCHEMY_ARRAY); @@ -26,11 +32,21 @@ public class TransmutationAlchemyArray extends AlchemyArray @Override public void onArrayActivated(World world, int eventX, int eventY, int eventZ, int arrayX, int arrayY, int arrayZ, EntityPlayer entityPlayer, int sideHit, float hitX, float hitY, float hitZ) { - if (!world.isRemote) + if (!entityPlayer.isSneaking()) { + entityPlayer.openGui(EquivalentExchange3.instance, GUIs.TRANSMUTATION_ARRAY.ordinal(), world, arrayX, arrayY, arrayZ); + return; + } + + if (!world.isRemote && entityPlayer.isSneaking()) + { + boolean successFlag = false; + if (world.getTileEntity(arrayX, arrayY, arrayZ) instanceof TileEntityAlchemyArray) { TileEntityAlchemyArray tileEntityAlchemyArray = (TileEntityAlchemyArray) world.getTileEntity(arrayX, arrayY, arrayZ); + + // First, see if we can make a Transmutation Tablet if (tileEntityAlchemyArray.getOrientation() == ForgeDirection.UP && tileEntityAlchemyArray.getSize() == 2 && areBlocksValidForTransmutationTablet(world, arrayX, arrayY, arrayZ)) { world.setBlock(arrayX - 1, arrayY - 1, arrayZ - 1, ModBlocks.ashInfusedStoneSlab, 1, 3); @@ -50,8 +66,39 @@ public class TransmutationAlchemyArray extends AlchemyArray ((TileEntityTransmutationTablet) world.getTileEntity(arrayX, arrayY - 1, arrayZ)).setOrientation(tileEntityAlchemyArray.getOrientation()); } + ejectInventory(world, arrayX, arrayY, arrayZ); + + successFlag = true; + } + + if (successFlag) + { CommonSoundHelper.playSoundAtLocation(world.provider.dimensionId, arrayX, arrayY, arrayZ, Sounds.TRANSMUTE, 1f, 1f); - PacketHandler.INSTANCE.sendToAllAround(new MessageSingleParticleEvent(Particles.LARGE_EXPLODE, arrayX + 0.5d, arrayY + 0.625d, arrayZ + 0.5d, 0d, 0d, 0d), new NetworkRegistry.TargetPoint(world.provider.dimensionId, (double) arrayX, (double) arrayY, (double) arrayZ, 128d)); + + if (tileEntityAlchemyArray.getSize() == 1) + { + CommonParticleHelper.spawnParticleAtLocation(Particles.LARGE_SMOKE, world.provider.dimensionId, arrayX + 0.5d, arrayY, arrayZ + 0.5d, 0d, 0.1d, 0d); + } + else if (tileEntityAlchemyArray.getSize() == 2) + { + for (int i = -1; i <= 1; i++) + { + for (int j = -1; j <= 1; j++) + { + CommonParticleHelper.spawnParticleAtLocation(Particles.LARGE_SMOKE, world.provider.dimensionId, arrayX + i + 0.5d, arrayY, arrayZ + j + 0.5d, 0d, 0.1d, 0d); + } + } + } + else if (tileEntityAlchemyArray.getSize() == 3) + { + for (int i = -2; i <= 2; i++) + { + for (int j = -2; j <= 2; j++) + { + CommonParticleHelper.spawnParticleAtLocation(Particles.LARGE_SMOKE, world.provider.dimensionId, arrayX + i + 0.5d, arrayY, arrayZ + j + 0.5d, 0d, 0.1d, 0d); + } + } + } } } } @@ -74,4 +121,191 @@ public class TransmutationAlchemyArray extends AlchemyArray return areBlocksValid; } + + @Override + public int getSizeInventory() + { + return inventory.length; + } + + @Override + public ItemStack getStackInSlot(int slotIndex) + { + if (slotIndex < getSizeInventory()) + { + return inventory[slotIndex]; + } + + return null; + } + + @Override + public ItemStack decrStackSize(int slotIndex, int decrementAmount) + { + ItemStack itemStack = getStackInSlot(slotIndex); + if (itemStack != null) + { + if (itemStack.stackSize <= decrementAmount) + { + setInventorySlotContents(slotIndex, null); + } + else + { + itemStack = itemStack.splitStack(decrementAmount); + if (itemStack.stackSize == 0) + { + setInventorySlotContents(slotIndex, null); + } + } + } + + return itemStack; + } + + @Override + public ItemStack getStackInSlotOnClosing(int slotIndex) + { + ItemStack itemStack = getStackInSlot(slotIndex); + if (itemStack != null) + { + setInventorySlotContents(slotIndex, null); + } + return itemStack; + } + + @Override + public void setInventorySlotContents(int slotIndex, ItemStack itemStack) + { + if (slotIndex < getSizeInventory()) + { + inventory[slotIndex] = itemStack; + if (itemStack != null && itemStack.stackSize > getInventoryStackLimit()) + { + itemStack.stackSize = getInventoryStackLimit(); + } + } + } + + @Override + public String getInventoryName() + { + return Names.AlchemyArrays.TRANSMUTATION_ALCHEMY_ARRAY; + } + + @Override + public boolean hasCustomInventoryName() + { + return false; + } + + @Override + public int getInventoryStackLimit() + { + return 1; + } + + @Override + public void markDirty() + { + // NOOP + } + + @Override + public boolean isUseableByPlayer(EntityPlayer entityPlayer) + { + return true; + } + + @Override + public void openInventory() + { + // NOOP + } + + @Override + public void closeInventory() + { + // NOOP + } + + @Override + public boolean isItemValidForSlot(int slotIndex, ItemStack itemStack) + { + if (slotIndex < getSizeInventory()) + { + return itemStack.getItem() instanceof ItemBlock; + } + + return false; + } + + @Override + public void readFromNBT(NBTTagCompound nbtTagCompound) + { + super.readFromNBT(nbtTagCompound); + + // Read in the ItemStacks in the inventory from NBT + NBTTagList tagList = nbtTagCompound.getTagList(Names.NBT.ITEMS, 10); + inventory = new ItemStack[this.getSizeInventory()]; + for (int i = 0; i < tagList.tagCount(); ++i) + { + NBTTagCompound tagCompound = tagList.getCompoundTagAt(i); + byte slotIndex = tagCompound.getByte("Slot"); + if (slotIndex >= 0 && slotIndex < inventory.length) + { + inventory[slotIndex] = ItemStack.loadItemStackFromNBT(tagCompound); + } + } + } + + @Override + public void writeToNBT(NBTTagCompound nbtTagCompound) + { + super.writeToNBT(nbtTagCompound); + + // Write the ItemStacks in the inventory to NBT + NBTTagList tagList = new NBTTagList(); + for (int currentIndex = 0; currentIndex < getSizeInventory(); ++currentIndex) + { + if (getStackInSlot(currentIndex) != null) + { + NBTTagCompound tagCompound = new NBTTagCompound(); + tagCompound.setByte("Slot", (byte) currentIndex); + getStackInSlot(currentIndex).writeToNBT(tagCompound); + tagList.appendTag(tagCompound); + } + } + nbtTagCompound.setTag(Names.NBT.ITEMS, tagList); + } + + protected void ejectInventory(World world, int x, int y, int z) + { + for (int i = 0; i < getSizeInventory(); i++) + { + ItemStack itemStack = getStackInSlot(i); + + if (itemStack != null && itemStack.stackSize > 0) + { + Random rand = new Random(); + + float dX = rand.nextFloat() * 0.8F + 0.1F; + float dY = rand.nextFloat() * 0.8F + 0.1F; + float dZ = rand.nextFloat() * 0.8F + 0.1F; + + EntityItem entityItem = new EntityItem(world, x + dX, y + dY, z + dZ, itemStack.copy()); + + if (itemStack.hasTagCompound()) + { + entityItem.getEntityItem().setTagCompound((NBTTagCompound) itemStack.getTagCompound().copy()); + } + + float factor = 0.05F; + entityItem.motionX = rand.nextGaussian() * factor; + entityItem.motionY = rand.nextGaussian() * factor + 0.2F; + entityItem.motionZ = rand.nextGaussian() * factor; + world.spawnEntityInWorld(entityItem); + itemStack.stackSize = 0; + } + } + } } diff --git a/src/main/java/com/pahimar/ee3/block/BlockAlchemyArray.java b/src/main/java/com/pahimar/ee3/block/BlockAlchemyArray.java index b197e887..5c3c8076 100644 --- a/src/main/java/com/pahimar/ee3/block/BlockAlchemyArray.java +++ b/src/main/java/com/pahimar/ee3/block/BlockAlchemyArray.java @@ -235,7 +235,7 @@ public class BlockAlchemyArray extends BlockEE implements ITileEntityProvider @Override public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer entityPlayer, int sideHit, float hitX, float hitY, float hitZ) { - if (world.getTileEntity(x, y, z) instanceof TileEntityAlchemyArray && !entityPlayer.isSneaking()) + if (world.getTileEntity(x, y, z) instanceof TileEntityAlchemyArray) { ((TileEntityAlchemyArray) world.getTileEntity(x, y, z)).onBlockActivated(world, x, y, z, entityPlayer, sideHit, hitX, hitY, hitZ); } diff --git a/src/main/java/com/pahimar/ee3/client/gui/inventory/GuiTransmutationArray.java b/src/main/java/com/pahimar/ee3/client/gui/inventory/GuiTransmutationArray.java new file mode 100644 index 00000000..eacc5a0e --- /dev/null +++ b/src/main/java/com/pahimar/ee3/client/gui/inventory/GuiTransmutationArray.java @@ -0,0 +1,65 @@ +package com.pahimar.ee3.client.gui.inventory; + +import com.pahimar.ee3.inventory.ContainerTransmutationArray; +import com.pahimar.ee3.reference.Textures; +import com.pahimar.ee3.tileentity.TileEntityAlchemyArray; +import com.pahimar.repackage.cofh.lib.gui.GuiBase; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.InventoryPlayer; +import org.lwjgl.opengl.GL11; + +@SideOnly(Side.CLIENT) +public class GuiTransmutationArray extends GuiBase +{ + private TileEntityAlchemyArray tileEntityAlchemyArray; + + public GuiTransmutationArray(InventoryPlayer inventoryPlayer, TileEntityAlchemyArray tileEntityAlchemyArray) + { + super(new ContainerTransmutationArray(inventoryPlayer, tileEntityAlchemyArray)); + this.tileEntityAlchemyArray = tileEntityAlchemyArray; + xSize = 256; + ySize = 256; + } + + @Override + public void initGui() + { + super.initGui(); + + this.drawTitle = false; + this.drawInventory = false; + } + + @Override + protected void drawGuiContainerForegroundLayer(int x, int y) + { + super.drawGuiContainerForegroundLayer(x, y); + } + + @Override + protected void drawGuiContainerBackgroundLayer(float partialTicks, int x, int y) + { + mouseX = x - guiLeft; + mouseY = y - guiTop; + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + if (tileEntityAlchemyArray.getSize() == 1) + { + bindTexture(Textures.Gui.TRANSMUTATION_ARRAY_1); + } + else if (tileEntityAlchemyArray.getSize() == 2) + { + bindTexture(Textures.Gui.TRANSMUTATION_ARRAY_3); + } + else if (tileEntityAlchemyArray.getSize() == 3) + { + bindTexture(Textures.Gui.TRANSMUTATION_ARRAY_5); + } + drawSizedTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize, 256f, 256f); + GL11.glPushMatrix(); + GL11.glTranslatef(guiLeft, guiTop, 0.0F); + drawElements(partialTicks, false); + drawTabs(partialTicks, false); + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/pahimar/ee3/client/util/ClientParticleHelper.java b/src/main/java/com/pahimar/ee3/client/util/ClientParticleHelper.java index b7f702e2..d3752677 100644 --- a/src/main/java/com/pahimar/ee3/client/util/ClientParticleHelper.java +++ b/src/main/java/com/pahimar/ee3/client/util/ClientParticleHelper.java @@ -4,7 +4,7 @@ import cpw.mods.fml.client.FMLClientHandler; public class ClientParticleHelper { - public static void spawnParticle(String particleName, double xCoord, double yCoord, double zCoord, double xVelocity, double yVelocity, double zVelocity) + public static void spawnParticleAtLocation(String particleName, double xCoord, double yCoord, double zCoord, double xVelocity, double yVelocity, double zVelocity) { FMLClientHandler.instance().getWorldClient().spawnParticle(particleName, xCoord, yCoord, zCoord, xVelocity, yVelocity, zVelocity); } diff --git a/src/main/java/com/pahimar/ee3/handler/ConfigurationHandler.java b/src/main/java/com/pahimar/ee3/handler/ConfigurationHandler.java index b23c9fff..2d3f9b7d 100644 --- a/src/main/java/com/pahimar/ee3/handler/ConfigurationHandler.java +++ b/src/main/java/com/pahimar/ee3/handler/ConfigurationHandler.java @@ -30,7 +30,7 @@ public class ConfigurationHandler Settings.General.syncThreshold = configuration.getInt(Messages.Configuration.GENERAL_SYNC_THRESHOLD, Configuration.CATEGORY_GENERAL, 5, 0, Short.MAX_VALUE, StatCollector.translateToLocal(Messages.Configuration.GENERAL_SYNC_THRESHOLD_COMMENT), Messages.Configuration.GENERAL_SYNC_THRESHOLD_LABEL); Settings.Sounds.soundMode = ConfigurationHelper.getString(configuration, Messages.Configuration.SOUND_MODE, Configuration.CATEGORY_GENERAL, "All", StatCollector.translateToLocal(Messages.Configuration.SOUND_MODE_COMMENT), new String[]{"All", "Self", "None"}, Messages.Configuration.SOUND_MODE_LABEL); Settings.Abilities.onlyLoadFile = configuration.getBoolean(Messages.Configuration.ABILITIES_ONLY_LOAD_FILE, Configuration.CATEGORY_GENERAL, false, StatCollector.translateToLocal(Messages.Configuration.ABILITIES_ONLY_LOAD_FILE_COMMENT), Messages.Configuration.ABILITIES_ONLY_LOAD_FILE_LABEL); - Settings.DynamicEnergyValueGeneration.regenerateEnergyValuesWhen = ConfigurationHelper.getString(configuration, Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN, Configuration.CATEGORY_GENERAL, "When Mods Change", StatCollector.translateToLocal(Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN_COMMENT), new String[]{"Never", "When Mods Change"}, Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN_LABEL); + Settings.DynamicEnergyValueGeneration.regenerateEnergyValuesWhen = ConfigurationHelper.getString(configuration, Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN, Configuration.CATEGORY_GENERAL, "When Mods Change", StatCollector.translateToLocal(Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN_COMMENT), new String[]{"Never", "When Mods Change", "Always"}, Messages.Configuration.REGENERATE_ENERGYVALUES_WHEN_LABEL); if (configuration.hasChanged()) { diff --git a/src/main/java/com/pahimar/ee3/handler/GuiHandler.java b/src/main/java/com/pahimar/ee3/handler/GuiHandler.java index 999a6d0c..405e6853 100644 --- a/src/main/java/com/pahimar/ee3/handler/GuiHandler.java +++ b/src/main/java/com/pahimar/ee3/handler/GuiHandler.java @@ -56,6 +56,11 @@ public class GuiHandler implements IGuiHandler TileEntityTransmutationTablet tileEntityTransmutationTablet = (TileEntityTransmutationTablet) world.getTileEntity(x, y, z); return new ContainerTransmutationTablet(entityPlayer.inventory, tileEntityTransmutationTablet); } + else if (id == GUIs.TRANSMUTATION_ARRAY.ordinal()) + { + TileEntityAlchemyArray tileEntityAlchemyArray = (TileEntityAlchemyArray) world.getTileEntity(x, y, z); + return new ContainerTransmutationArray(entityPlayer.inventory, tileEntityAlchemyArray); + } else if (id == GUIs.SYMBOL_SELECTION.ordinal()) { return new ContainerSymbolSelection(); @@ -110,6 +115,11 @@ public class GuiHandler implements IGuiHandler TileEntityTransmutationTablet tileEntityTransmutationTablet = (TileEntityTransmutationTablet) world.getTileEntity(x, y, z); return new GuiTransmutationTablet(entityPlayer.inventory, tileEntityTransmutationTablet); } + else if (id == GUIs.TRANSMUTATION_ARRAY.ordinal()) + { + TileEntityAlchemyArray tileEntityAlchemyArray = (TileEntityAlchemyArray) world.getTileEntity(x, y, z); + return new GuiTransmutationArray(entityPlayer.inventory, tileEntityAlchemyArray); + } else if (id == GUIs.SYMBOL_SELECTION.ordinal()) { return new GuiSymbolSelection(); diff --git a/src/main/java/com/pahimar/ee3/inventory/ContainerTransmutationArray.java b/src/main/java/com/pahimar/ee3/inventory/ContainerTransmutationArray.java new file mode 100644 index 00000000..d442b292 --- /dev/null +++ b/src/main/java/com/pahimar/ee3/inventory/ContainerTransmutationArray.java @@ -0,0 +1,122 @@ +package com.pahimar.ee3.inventory; + +import com.pahimar.ee3.tileentity.TileEntityAlchemyArray; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; + +public class ContainerTransmutationArray extends ContainerEE +{ + private TileEntityAlchemyArray tileEntityAlchemyArray; + + public ContainerTransmutationArray(InventoryPlayer inventoryPlayer, TileEntityAlchemyArray tileEntityAlchemyArray) + { + this.tileEntityAlchemyArray = tileEntityAlchemyArray; + + int maxArrayRowCount = (2 * (tileEntityAlchemyArray.getSize() - 1)) + 1; + int maxArrayColumnCount = maxArrayRowCount; + + for (int rowIndex = 0; rowIndex < maxArrayRowCount; rowIndex++) + { + for (int columnIndex = 0; columnIndex < maxArrayColumnCount; columnIndex++) + { + if (tileEntityAlchemyArray.getSize() == 1) + { + this.addSlotToContainer(new Slot(tileEntityAlchemyArray, columnIndex + rowIndex * maxArrayRowCount, 120 + columnIndex * 18, 69 + rowIndex * 18) + { + @Override + public boolean isItemValid(ItemStack itemStack) + { + return itemStack.getItem() instanceof ItemBlock; + } + }); + } + else if (tileEntityAlchemyArray.getSize() == 2) + { + this.addSlotToContainer(new Slot(tileEntityAlchemyArray, columnIndex + rowIndex * maxArrayRowCount, 102 + columnIndex * 18, 51 + rowIndex * 18) + { + @Override + public boolean isItemValid(ItemStack itemStack) + { + return itemStack.getItem() instanceof ItemBlock; + } + }); + } + else if (tileEntityAlchemyArray.getSize() == 3) + { + this.addSlotToContainer(new Slot(tileEntityAlchemyArray, columnIndex + rowIndex * maxArrayRowCount, 84 + columnIndex * 18, 33 + rowIndex * 18) + { + @Override + public boolean isItemValid(ItemStack itemStack) + { + return itemStack.getItem() instanceof ItemBlock; + } + }); + } + } + } + + // Add the player's inventory slots to the container + for (int inventoryRowIndex = 0; inventoryRowIndex < PLAYER_INVENTORY_ROWS; ++inventoryRowIndex) + { + for (int inventoryColumnIndex = 0; inventoryColumnIndex < PLAYER_INVENTORY_COLUMNS; ++inventoryColumnIndex) + { + this.addSlotToContainer(new Slot(inventoryPlayer, inventoryColumnIndex + inventoryRowIndex * 9 + 9, 47 + inventoryColumnIndex * 18, 173 + inventoryRowIndex * 18)); + } + } + + // Add the player's action bar slots to the container + for (int actionBarSlotIndex = 0; actionBarSlotIndex < PLAYER_INVENTORY_COLUMNS; ++actionBarSlotIndex) + { + this.addSlotToContainer(new Slot(inventoryPlayer, actionBarSlotIndex, 47 + actionBarSlotIndex * 18, 231)); + } + } + + @Override + public ItemStack transferStackInSlot(EntityPlayer entityPlayer, int slotIndex) + { + ItemStack itemStack = null; + Slot slot = (Slot) inventorySlots.get(slotIndex); + int inventorySize = ((2 * (this.tileEntityAlchemyArray.getSize() - 1)) + 1); + inventorySize *= inventorySize; + + if (slot != null && slot.getHasStack()) + { + ItemStack slotItemStack = slot.getStack(); + itemStack = slotItemStack.copy(); + + /** + * If we are shift-clicking an item out of the container, + * attempt to put it in the first available slot in the entityPlayer's + * inventory + */ + if (slotIndex < inventorySize) + { + if (!this.mergeItemStack(slotItemStack, inventorySize, inventorySlots.size(), false)) + { + return null; + } + } + else + { + if (!this.mergeItemStack(slotItemStack, 0, inventorySize, false)) + { + return null; + } + } + + if (slotItemStack.stackSize == 0) + { + slot.putStack(null); + } + else + { + slot.onSlotChanged(); + } + } + + return itemStack; + } +} diff --git a/src/main/java/com/pahimar/ee3/proxy/ClientProxy.java b/src/main/java/com/pahimar/ee3/proxy/ClientProxy.java index 8b5561a3..c076eefc 100644 --- a/src/main/java/com/pahimar/ee3/proxy/ClientProxy.java +++ b/src/main/java/com/pahimar/ee3/proxy/ClientProxy.java @@ -52,7 +52,7 @@ public class ClientProxy extends CommonProxy @Override public void spawnParticle(String particleName, double xCoord, double yCoord, double zCoord, double xVelocity, double yVelocity, double zVelocity) { - ClientParticleHelper.spawnParticle(particleName, xCoord, yCoord, zCoord, xVelocity, yVelocity, zVelocity); + ClientParticleHelper.spawnParticleAtLocation(particleName, xCoord, yCoord, zCoord, xVelocity, yVelocity, zVelocity); } @Override diff --git a/src/main/java/com/pahimar/ee3/reference/GUIs.java b/src/main/java/com/pahimar/ee3/reference/GUIs.java index 1f5b7dc1..2fc575e9 100644 --- a/src/main/java/com/pahimar/ee3/reference/GUIs.java +++ b/src/main/java/com/pahimar/ee3/reference/GUIs.java @@ -12,5 +12,6 @@ public enum GUIs AUGMENTATION_TABLE, ALCHEMICAL_TOME, TRANSMUTATION_TABLET, - SYMBOL_SELECTION + SYMBOL_SELECTION, + TRANSMUTATION_ARRAY } diff --git a/src/main/java/com/pahimar/ee3/reference/Textures.java b/src/main/java/com/pahimar/ee3/reference/Textures.java index 802ac9db..8a7f5f2a 100644 --- a/src/main/java/com/pahimar/ee3/reference/Textures.java +++ b/src/main/java/com/pahimar/ee3/reference/Textures.java @@ -45,6 +45,9 @@ public final class Textures public static final ResourceLocation AUGMENTATION_TABLE = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "augmentationTable.png"); public static final ResourceLocation PORTABLE_CRAFTING = new ResourceLocation("textures/gui/container/crafting_table.png"); public static final ResourceLocation ALCHEMICAL_TOME = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "alchemicalTome.png"); + public static final ResourceLocation TRANSMUTATION_ARRAY_1 = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "transmutationArray_1.png"); + public static final ResourceLocation TRANSMUTATION_ARRAY_3 = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "transmutationArray_3.png"); + public static final ResourceLocation TRANSMUTATION_ARRAY_5 = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "transmutationArray_5.png"); public static final ResourceLocation TRANSMUTATION_TABLET = ResourceLocationHelper.getResourceLocation(GUI_TEXTURE_LOCATION + "transmutationTablet.png"); public static final class Elements diff --git a/src/main/java/com/pahimar/ee3/tileentity/TileEntityAlchemyArray.java b/src/main/java/com/pahimar/ee3/tileentity/TileEntityAlchemyArray.java index 0cdc87ee..e7990d93 100644 --- a/src/main/java/com/pahimar/ee3/tileentity/TileEntityAlchemyArray.java +++ b/src/main/java/com/pahimar/ee3/tileentity/TileEntityAlchemyArray.java @@ -9,6 +9,7 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.Packet; @@ -17,12 +18,12 @@ import net.minecraft.world.Explosion; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityAlchemyArray extends TileEntityEE implements IInventory +public class TileEntityAlchemyArray extends TileEntityEE implements ISidedInventory { private AlchemyArray alchemyArray; private ForgeDirection rotation; private int size; - private int ticksSinceSync; + private int tickCount; public TileEntityAlchemyArray() { @@ -214,8 +215,8 @@ public class TileEntityAlchemyArray extends TileEntityEE implements IInventory if (!worldObj.isRemote) { - ++ticksSinceSync; - if (ticksSinceSync % 100 == 0) + ++tickCount; + if (tickCount % 100 == 0) { if (!areDummyBlocksValid()) { @@ -224,7 +225,7 @@ public class TileEntityAlchemyArray extends TileEntityEE implements IInventory } } - onUpdate(worldObj, xCoord, yCoord, zCoord); + onUpdate(worldObj, xCoord, yCoord, zCoord, tickCount); } } @@ -329,11 +330,11 @@ public class TileEntityAlchemyArray extends TileEntityEE implements IInventory } } - public void onUpdate(World world, int x, int y, int z) + public void onUpdate(World world, int x, int y, int z, int tickCount) { if (alchemyArray != null) { - alchemyArray.onUpdate(world, x, y, z); + alchemyArray.onUpdate(world, x, y, z, tickCount); } } @@ -358,6 +359,7 @@ public class TileEntityAlchemyArray extends TileEntityEE implements IInventory { Class clazz = Class.forName(alchemyArray.getClassName()); alchemyArray = (AlchemyArray) clazz.getConstructor().newInstance(); + alchemyArray.readFromNBT(alchemyArrayTagCompound); } catch (Exception e) { @@ -579,4 +581,22 @@ public class TileEntityAlchemyArray extends TileEntityEE implements IInventory return false; } + + @Override + public int[] getAccessibleSlotsFromSide(int slotIndex) + { + return new int[0]; + } + + @Override + public boolean canInsertItem(int slotIndex, ItemStack itemStack, int side) + { + return false; + } + + @Override + public boolean canExtractItem(int slotIndex, ItemStack itemStack, int side) + { + return false; + } } diff --git a/src/main/java/com/pahimar/ee3/tileentity/TileEntityTransmutationTablet.java b/src/main/java/com/pahimar/ee3/tileentity/TileEntityTransmutationTablet.java index 4ca15028..b1d83693 100644 --- a/src/main/java/com/pahimar/ee3/tileentity/TileEntityTransmutationTablet.java +++ b/src/main/java/com/pahimar/ee3/tileentity/TileEntityTransmutationTablet.java @@ -205,21 +205,24 @@ public class TileEntityTransmutationTablet extends TileEntityEE implements ISide @Override public void setInventorySlotContents(int slotIndex, ItemStack itemStack) { - inventory[slotIndex] = itemStack; - if (itemStack != null && itemStack.stackSize > getInventoryStackLimit()) + if (slotIndex < getSizeInventory()) { - itemStack.stackSize = getInventoryStackLimit(); - } - - float newEnergyValue = 0f; - for (int i = 0; i <= STONE_INDEX; i++) - { - if (inventory[i] != null && EnergyValueRegistry.getInstance().hasEnergyValue(inventory[i])) + inventory[slotIndex] = itemStack; + if (itemStack != null && itemStack.stackSize > getInventoryStackLimit()) { - newEnergyValue += EnergyValueRegistry.getInstance().getEnergyValue(inventory[i]).getEnergyValue() * inventory[i].stackSize; + itemStack.stackSize = getInventoryStackLimit(); } + + float newEnergyValue = 0f; + for (int i = 0; i <= STONE_INDEX; i++) + { + if (inventory[i] != null && EnergyValueRegistry.getInstance().hasEnergyValue(inventory[i])) + { + newEnergyValue += EnergyValueRegistry.getInstance().getEnergyValue(inventory[i]).getEnergyValue() * inventory[i].stackSize; + } + } + this.energyValue = new EnergyValue(newEnergyValue); } - this.energyValue = new EnergyValue(newEnergyValue); } @Override diff --git a/src/main/java/com/pahimar/ee3/util/CommonParticleHelper.java b/src/main/java/com/pahimar/ee3/util/CommonParticleHelper.java index 855b9678..eef11e97 100644 --- a/src/main/java/com/pahimar/ee3/util/CommonParticleHelper.java +++ b/src/main/java/com/pahimar/ee3/util/CommonParticleHelper.java @@ -1,5 +1,18 @@ package com.pahimar.ee3.util; +import com.pahimar.ee3.network.PacketHandler; +import com.pahimar.ee3.network.message.MessageSingleParticleEvent; +import cpw.mods.fml.common.network.NetworkRegistry; + public class CommonParticleHelper { + public static void spawnParticleAtLocation(String particleName, int dimensionId, double xCoord, double yCoord, double zCoord, double xVelocity, double yVelocity, double zVelocity) + { + spawnParticleAtLocation(particleName, dimensionId, xCoord, yCoord, zCoord, xVelocity, yVelocity, zVelocity, 64d); + } + + public static void spawnParticleAtLocation(String particleName, int dimensionId, double xCoord, double yCoord, double zCoord, double xVelocity, double yVelocity, double zVelocity, double range) + { + PacketHandler.INSTANCE.sendToAllAround(new MessageSingleParticleEvent(particleName, xCoord, yCoord, zCoord, xVelocity, yVelocity, zVelocity), new NetworkRegistry.TargetPoint(dimensionId, xCoord, yCoord, zCoord, range)); + } } diff --git a/src/main/resources/assets/ee3/textures/gui/transmutationArray_1.png b/src/main/resources/assets/ee3/textures/gui/transmutationArray_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1612f29d3ed2437378b931b67b3e394d961f7bba GIT binary patch literal 20662 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 {SEw1Bl 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
    |lKc|WqBW`4IBx9RbGiGu|sf8SCbL3gUwviJB( zYb&=F&eZv%?8WNIr5z9c9s-3&+nrR!xGxaE!$65zCF*rL2USwunm%A_rDNxzZeQsG zo?0l)<3%ff60n%*PG$$piE3W==W7qy@oOMs^Yz0n0uZ>6JPRoS%#zrWx6YRWz)<)f z(=0OphmgEAAHX_-gQZx8Sz2EI%VkXHX|{)A=#p8~9bWN-a@*1$V|`Soq%Fxj!Tawd zC)p23B#s7=nL!LWf%|$BX%qyNyBxEa?2$&9m84NT1(=MjZYmM|$OK{SAZE8N&51sv zMtoOj9NTcXs;VlESWr;`FUPdJt$LXsmi;*f|Ezy9PYsRpk(Q#RytZW=LW&b{A?HQqFp!<( zdc4hl+SamU9sFD5`bR$elq_U{V}UO3z<4OJNcyVC#-f5l$ovnRVgEyBOleuyEqsAu zu&B4GsGPIiloYTh10VM7(A=kMvbO(urvD>n{=SA{?-|-n{Z~NXtj9~kw(QT6j|csC z{Ve9}xZ0M<;_*0K^kR9b?^rL7ko*;37yS8uaVGuAiwlsQf=yvOGh*NL=li0T11JVLCOz}gyhfzDmX9#(#@a) zC>_%E0)8n`D`QnLy+o?rL5O z0C)hshYu`+=C&Q(P?nQy;XOI@a#6Yoh`THmE>G{;e6zNs?a=s4^mWJAY|B?0^xzHy zK`-^zPG`%LwDr!Df!E9ut!e8;S+ee7BeEmdE!#%--J{8iZ!!<70w0da_$bQuchC!) zm*^hFh%H6kuftdXV}J+jknUm}XeY3}qoE9l15HGubQ-0@L;yIO2uA`qgR;qR27q7g z>^y6DE0nwX$0rfB1R>z=Rbp9)M^&0P$c0QgFc1(0*@85b5XnGi@$?1IE#IgV9R6Qq zjJ6`63W$-ocmh43AQE&Q+b%P(oINYqRx4@F0Hi(}`R6G;73$+af~Ex$34+Mci9mN2 z@y!zU`n!~Ij$Aj9z4|z`Vz_KpPa(73ldOme(G2!n0aP5He(>b&Jed?55N%T!>kjn{rSPCHgn)I3#n^11J(k z)bKO(=gewHYE-?A;vq-qvSvGBg!*Sl3GT##i*TXgq{Krk03J-kj4 zQw&iQm`%n%gH-Dl)cp3Fl;_lFK;nlXSyYCvQ=nD@p*3FTDfmBKDq@GpcH}Gc>HI`G_TSJ{7a-GgyCE_2 $hwRe5 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 HP6SXo!z%PGdnwK%!J9M6Nil~J)?H* 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 literal 0 HcmV?d00001