From cd270875b6b9b5f26e444a0e683fefa3495e2784 Mon Sep 17 00:00:00 2001 From: OnyxDarkKnight Date: Sun, 15 Dec 2013 23:17:49 +0200 Subject: More Molds and Molder stuff --- .../darkknight/jewelrycraft/block/BlockMolder.java | 15 ++-- .../jewelrycraft/block/BlockSmelter.java | 1 + .../renders/TileEntityMolderRender.java | 77 +++++++++++++++------ .../jewelrycraft/tileentity/TileEntityMolder.java | 1 + .../jewelrycraft/textures/items/necklaceMold.png | Bin 0 -> 615 bytes .../jewelrycraft/textures/items/ringMold.png | Bin 0 -> 638 bytes 6 files changed, 65 insertions(+), 29 deletions(-) create mode 100644 resources/assets/jewelrycraft/textures/items/necklaceMold.png create mode 100644 resources/assets/jewelrycraft/textures/items/ringMold.png diff --git a/common/darkknight/jewelrycraft/block/BlockMolder.java b/common/darkknight/jewelrycraft/block/BlockMolder.java index d982cfe..36a48f7 100644 --- a/common/darkknight/jewelrycraft/block/BlockMolder.java +++ b/common/darkknight/jewelrycraft/block/BlockMolder.java @@ -48,6 +48,12 @@ public class BlockMolder extends BlockContainer te.hasMold = true; --item.stackSize; } + if(te != null && te.hasMold && entityPlayer.isSneaking()) + { + entityPlayer.inventory.addItemStackToInventory(new ItemStack(te.mold.itemID, 1, te.mold.getItemDamage())); + te.mold = new ItemStack(0, 0, 0); + te.hasMold = false; + } return true; } @@ -99,19 +105,12 @@ public class BlockMolder extends BlockContainer public void onBlockClicked(World world, int i, int j, int k, EntityPlayer player) { - TileEntityMolder me = (TileEntityMolder) world.getBlockTileEntity(i, j, k); + TileEntityMolder me = (TileEntityMolder) world.getBlockTileEntity(i, j, k); if(me != null && me.hasJewelBase) { player.inventory.addItemStackToInventory(new ItemStack(me.jewelBase.itemID, 1, me.jewelBase.getItemDamage())); me.jewelBase = new ItemStack(0, 0, 0); me.hasJewelBase = false; - } - if(me != null && me.hasMold) - { - player.addChatMessage(me.mold.getDisplayName()); - player.inventory.addItemStackToInventory(new ItemStack(me.mold.itemID, 1, me.mold.getItemDamage())); - me.mold = new ItemStack(0, 0, 0); - me.hasMold = false; } } diff --git a/common/darkknight/jewelrycraft/block/BlockSmelter.java b/common/darkknight/jewelrycraft/block/BlockSmelter.java index 03019fc..cf9782d 100644 --- a/common/darkknight/jewelrycraft/block/BlockSmelter.java +++ b/common/darkknight/jewelrycraft/block/BlockSmelter.java @@ -115,6 +115,7 @@ public class BlockSmelter extends BlockContainer { me.moltenMetal = te.moltenMetal; me.hasMoltenMetal = true; + me.cooling = 2000; te.moltenMetal = new ItemStack(0, 0, 0); te.hasMoltenMetal = false; } diff --git a/common/darkknight/jewelrycraft/renders/TileEntityMolderRender.java b/common/darkknight/jewelrycraft/renders/TileEntityMolderRender.java index 91cdd88..3a91770 100644 --- a/common/darkknight/jewelrycraft/renders/TileEntityMolderRender.java +++ b/common/darkknight/jewelrycraft/renders/TileEntityMolderRender.java @@ -34,30 +34,65 @@ public class TileEntityMolderRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); modelMolder.render((Entity)null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F); - if(me != null && me.hasMold) + if(me != null) { - ResourceLocation lava = new ResourceLocation("jewelrycraft", "textures/items/ingotMold.png"); - Minecraft.getMinecraft().renderEngine.bindTexture(lava); - me.mold.getIconIndex().getInterpolatedU(0); - double minu = me.mold.getIconIndex().getInterpolatedU(0); - double minv = me.mold.getIconIndex().getInterpolatedV(0); - double maxu = me.mold.getIconIndex().getInterpolatedU(256); - double maxv = me.mold.getIconIndex().getInterpolatedV(256); - GL11.glPushMatrix(); - GL11.glScalef(1f/16f, 1f/16f, 1f/16f); - GL11.glDisable(GL11.GL_LIGHTING); - - for(float f = 0; f <= 1; f+=0.05) + if(me.hasJewelBase) { - tessellator.startDrawingQuads(); - tessellator.addVertexWithUV(5, 21+f, 5, minu, minv); - tessellator.addVertexWithUV(-5, 21+f, 5, maxu, minv); - tessellator.addVertexWithUV(-5, 21+f, -5, maxu, maxv); - tessellator.addVertexWithUV(5, 21+f, -5, minu, maxv); - tessellator.draw(); + String texture = "textures/items/" + me.jewelBase.getDisplayName() + ".png"; + ResourceLocation lava = new ResourceLocation(null, "textures/items/iron_ingot.png"); + Minecraft.getMinecraft().renderEngine.bindTexture(lava); + me.jewelBase.getIconIndex().getInterpolatedU(0); + int decal = 32; + double minu = me.jewelBase.getIconIndex().getInterpolatedU(0); + double minv = me.jewelBase.getIconIndex().getInterpolatedV(0); + double maxu = me.jewelBase.getIconIndex().getInterpolatedU(16); + double maxv = me.jewelBase.getIconIndex().getInterpolatedV(16); + GL11.glPushMatrix(); + GL11.glScalef(1f/16f, 1f/16f, 1f/16f); + GL11.glDisable(GL11.GL_LIGHTING); + + for(float f = 0; f <= 1; f+=0.05) + { + tessellator.startDrawingQuads(); + tessellator.addVertexWithUV(5, 21+f, 5, minu, minv); + tessellator.addVertexWithUV(-5, 21+f, 5, maxu, minv); + tessellator.addVertexWithUV(-5, 21+f, -5, maxu, maxv); + tessellator.addVertexWithUV(5, 21+f, -5, minu, maxv); + tessellator.draw(); + } + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glPopMatrix(); + } + if(me.hasMold) + { + String name = me.mold.getDisplayName().substring(0, 1).toLowerCase() + me.mold.getDisplayName().trim().substring(1).replace(" M", "M"); + String texture = "textures/items/" + name + ".png"; + ResourceLocation lava = new ResourceLocation("jewelrycraft", texture); + Minecraft.getMinecraft().renderEngine.bindTexture(lava); + me.mold.getIconIndex().getInterpolatedU(0); + int decal = 0; + if(me.mold.getItemDamage() == 0) decal = 32; + else if(me.mold.getItemDamage() > 0) decal = 64; + double minu = me.mold.getIconIndex().getInterpolatedU(16); + double minv = me.mold.getIconIndex().getInterpolatedV(-decal); + double maxu = me.mold.getIconIndex().getInterpolatedU(256+16); + double maxv = me.mold.getIconIndex().getInterpolatedV(256-decal); + GL11.glPushMatrix(); + GL11.glScalef(1f/16f, 1f/16f, 1f/16f); + GL11.glDisable(GL11.GL_LIGHTING); + + for(float f = 0; f <= 1; f+=0.05) + { + tessellator.startDrawingQuads(); + tessellator.addVertexWithUV(5, 21+f, 5, minu, minv); + tessellator.addVertexWithUV(-5, 21+f, 5, maxu, minv); + tessellator.addVertexWithUV(-5, 21+f, -5, maxu, maxv); + tessellator.addVertexWithUV(5, 21+f, -5, minu, maxv); + tessellator.draw(); + } + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glPopMatrix(); } - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glPopMatrix(); } GL11.glPopMatrix(); GL11.glPopMatrix(); diff --git a/common/darkknight/jewelrycraft/tileentity/TileEntityMolder.java b/common/darkknight/jewelrycraft/tileentity/TileEntityMolder.java index 302a36f..092bb47 100644 --- a/common/darkknight/jewelrycraft/tileentity/TileEntityMolder.java +++ b/common/darkknight/jewelrycraft/tileentity/TileEntityMolder.java @@ -78,6 +78,7 @@ public class TileEntityMolder extends TileEntity this.hasJewelBase = true; } } + System.out.print(hasJewelBase); } public void onDataPacket(INetworkManager net, Packet132TileEntityData pkt) diff --git a/resources/assets/jewelrycraft/textures/items/necklaceMold.png b/resources/assets/jewelrycraft/textures/items/necklaceMold.png new file mode 100644 index 0000000..28041f8 Binary files /dev/null and b/resources/assets/jewelrycraft/textures/items/necklaceMold.png differ diff --git a/resources/assets/jewelrycraft/textures/items/ringMold.png b/resources/assets/jewelrycraft/textures/items/ringMold.png new file mode 100644 index 0000000..d955382 Binary files /dev/null and b/resources/assets/jewelrycraft/textures/items/ringMold.png differ -- cgit v1.2.3