diff options
Diffstat (limited to 'src/main/java/gmail')
25 files changed, 431 insertions, 50 deletions
diff --git a/src/main/java/gmail/Lance5057/com/Reference.java b/src/main/java/gmail/Lance5057/Reference.java index f76bdcb..f1a44f7 100644 --- a/src/main/java/gmail/Lance5057/com/Reference.java +++ b/src/main/java/gmail/Lance5057/Reference.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057; public class Reference { diff --git a/src/main/java/gmail/Lance5057/com/mod_TinkersDefense.java b/src/main/java/gmail/Lance5057/TinkersDefense.java index da66949..69a5a9a 100644 --- a/src/main/java/gmail/Lance5057/com/mod_TinkersDefense.java +++ b/src/main/java/gmail/Lance5057/TinkersDefense.java @@ -1,18 +1,27 @@ -package gmail.Lance5057.com; +package gmail.Lance5057; import static net.minecraft.util.EnumChatFormatting.DARK_RED; import static net.minecraft.util.EnumChatFormatting.GOLD; import static net.minecraft.util.EnumChatFormatting.LIGHT_PURPLE; import gmail.Lance5057.blocks.AeonSteelBlock; +import gmail.Lance5057.blocks.ArmorAnvil; import gmail.Lance5057.blocks.CrestMount; import gmail.Lance5057.blocks.DogbeariumBlock; +import gmail.Lance5057.blocks.JewelersBench; import gmail.Lance5057.blocks.QueensGoldBlock; import gmail.Lance5057.items.AeonSteelIngot; import gmail.Lance5057.items.DogbeariumIngot; +import gmail.Lance5057.items.HeaterShield; import gmail.Lance5057.items.QueensGoldIngot; +import gmail.Lance5057.items.RoundShield; +import gmail.Lance5057.liquids.moltenAeonsteelFluid; +import gmail.Lance5057.liquids.moltenDogbeariumFluid; +import gmail.Lance5057.liquids.moltenQueensGoldFluid; import gmail.Lance5057.network.PacketHandler; import gmail.Lance5057.proxy.CommonProxy; +import gmail.Lance5057.tileentities.TileEntity_ArmorAnvil; import gmail.Lance5057.tileentities.TileEntity_CrestMount; +import gmail.Lance5057.tileentities.TileEntity_JewelersBench; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; @@ -45,14 +54,14 @@ import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = Reference.MOD_ID, version = Reference.VERSION, name = Reference.MOD_NAME) -public class mod_TinkersDefense +public class TinkersDefense { private static int modGuiIndex = 0; public static final int GUI_ITEM_INV = modGuiIndex++; @Instance(Reference.MOD_ID) -public static mod_TinkersDefense instance = new mod_TinkersDefense(); +public static TinkersDefense instance = new TinkersDefense(); public static CreativeTabs tabName = new CreativeTabs("tabName") { @@ -85,6 +94,8 @@ public static ToolCore tool_roundShield; public static ToolCore tool_heaterShield; public static Block block_CrestMount; +public static Block block_ArmorAnvil; +public static Block block_JewelersBench; public static Item item_TinkerArmor; @@ -99,8 +110,7 @@ public void preInit(FMLPreInitializationEvent e) { PacketHandler.init(); - //Renderers - proxy.registerRenderers(); + block_CrestMount = new CrestMount() .setHardness(4.0F) @@ -110,8 +120,26 @@ public void preInit(FMLPreInitializationEvent e) GameRegistry.registerBlock(block_CrestMount, "Block_CrestMount"); GameRegistry.registerTileEntity(TileEntity_CrestMount.class, "Tile_CrestMount"); + + block_ArmorAnvil = new ArmorAnvil() + .setHardness(4.0F) + .setStepSound(Block.soundTypeAnvil) + .setBlockName("ArmorAnvil") + .setCreativeTab(tabName); + + GameRegistry.registerBlock(block_ArmorAnvil, "Block_ArmorAnvil"); + GameRegistry.registerTileEntity(TileEntity_ArmorAnvil.class, "Tile_ArmorAnvil"); + + block_JewelersBench = new JewelersBench() + .setHardness(4.0F) + .setStepSound(Block.soundTypeWood) + .setBlockName("JewelersBench") + .setCreativeTab(tabName); + + GameRegistry.registerBlock(block_JewelersBench, "Block_JewelersBench"); + GameRegistry.registerTileEntity(TileEntity_JewelersBench.class, "Tile_JewelersBench"); - NetworkRegistry.INSTANCE.registerGuiHandler(mod_TinkersDefense.instance, new CommonProxy()); + NetworkRegistry.INSTANCE.registerGuiHandler(TinkersDefense.instance, new CommonProxy()); MinecraftForge.EVENT_BUS.register(this); //AeonSteel @@ -209,9 +237,10 @@ public void preInit(FMLPreInitializationEvent e) GameRegistry.registerItem(tool_roundShield, "Round Shield"); GameRegistry.registerItem(tool_heaterShield, "Heater Shield"); TConstructRegistry.addItemToDirectory("Round Shield", tool_roundShield); - TConstructRegistry.addItemToDirectory("Heater Shield", tool_heaterShield); + TConstructRegistry.addItemToDirectory("Heater Shield", tool_heaterShield); - + //Renderers + proxy.registerRenderers(); //item_TinkerArmor = new TinkerArmor(ArmorMaterial.IRON, 4, 1).setUnlocalizedName("Tinker_Armor"); diff --git a/src/main/java/gmail/Lance5057/blocks/ArmorAnvil.java b/src/main/java/gmail/Lance5057/blocks/ArmorAnvil.java new file mode 100644 index 0000000..1c9b153 --- /dev/null +++ b/src/main/java/gmail/Lance5057/blocks/ArmorAnvil.java @@ -0,0 +1,47 @@ +package gmail.Lance5057.blocks; + +import gmail.Lance5057.tileentities.TileEntity_ArmorAnvil; +import gmail.Lance5057.tileentities.TileEntity_CrestMount; +import net.minecraft.block.Block; +import net.minecraft.block.ITileEntityProvider; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class ArmorAnvil extends Block implements ITileEntityProvider +{ + + public ArmorAnvil() { + super(Material.iron); + } + + //You don't want the normal render type, or it wont render properly. + @Override + public int getRenderType() { + return -1; + } + + //It's not an opaque cube, so you need this. + @Override + public boolean isOpaqueCube() { + return false; + } + + //It's not a normal block, so you need this too. + public boolean renderAsNormalBlock() { + return false; + } + + //This is the icon to use for showing the block in your hand. + public void registerIcons(IIconRegister icon) { + //TODO fix the icon + this.blockIcon = icon.registerIcon("tinkersdefense:textures/items/QueensGoldIngot.png"); + } + + @Override + public TileEntity createNewTileEntity(World w, int md) { + TileEntity_ArmorAnvil te = new TileEntity_ArmorAnvil(); + return te; + } +} diff --git a/src/main/java/gmail/Lance5057/blocks/CrestMount.java b/src/main/java/gmail/Lance5057/blocks/CrestMount.java index 84749de..d78a216 100644 --- a/src/main/java/gmail/Lance5057/blocks/CrestMount.java +++ b/src/main/java/gmail/Lance5057/blocks/CrestMount.java @@ -4,7 +4,7 @@ import static net.minecraftforge.common.util.ForgeDirection.EAST; import static net.minecraftforge.common.util.ForgeDirection.NORTH; import static net.minecraftforge.common.util.ForgeDirection.SOUTH; import static net.minecraftforge.common.util.ForgeDirection.WEST; -import gmail.Lance5057.com.mod_TinkersDefense; +import gmail.Lance5057.TinkersDefense; import gmail.Lance5057.tileentities.TileEntity_CrestMount; import java.util.Random; @@ -43,7 +43,7 @@ public class CrestMount extends BlockContainer { return false; } //code to open gui explained later - player.openGui(mod_TinkersDefense.instance, mod_TinkersDefense.GUI_ITEM_INV, player.worldObj, x, y, z); + player.openGui(TinkersDefense.instance, TinkersDefense.GUI_ITEM_INV, player.worldObj, x, y, z); return true; } diff --git a/src/main/java/gmail/Lance5057/blocks/JewelersBench.java b/src/main/java/gmail/Lance5057/blocks/JewelersBench.java new file mode 100644 index 0000000..af9ca1c --- /dev/null +++ b/src/main/java/gmail/Lance5057/blocks/JewelersBench.java @@ -0,0 +1,47 @@ +package gmail.Lance5057.blocks; + +import gmail.Lance5057.tileentities.TileEntity_JewelersBench; +import net.minecraft.block.Block; +import net.minecraft.block.ITileEntityProvider; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class JewelersBench extends Block implements ITileEntityProvider +{ + + public JewelersBench() { + super(Material.iron); + } + + //You don't want the normal render type, or it wont render properly. + @Override + public int getRenderType() { + return -1; + } + + //It's not an opaque cube, so you need this. + @Override + public boolean isOpaqueCube() { + return false; + } + + //It's not a normal block, so you need this too. + public boolean renderAsNormalBlock() { + return false; + } + + //This is the icon to use for showing the block in your hand. + public void registerIcons(IIconRegister icon) { + //TODO fix the icon + this.blockIcon = icon.registerIcon("tinkersdefense:textures/items/QueensGoldIngot.png"); + } + + @Override + public TileEntity createNewTileEntity(World w, int md) { + TileEntity_JewelersBench te = new TileEntity_JewelersBench(); + return te; + } + +} diff --git a/src/main/java/gmail/Lance5057/gui/Gui_CrestMount.java b/src/main/java/gmail/Lance5057/gui/Gui_CrestMount.java index ab8b498..cbd3b8d 100644 --- a/src/main/java/gmail/Lance5057/gui/Gui_CrestMount.java +++ b/src/main/java/gmail/Lance5057/gui/Gui_CrestMount.java @@ -1,6 +1,6 @@ package gmail.Lance5057.gui; -import gmail.Lance5057.com.mod_TinkersDefense; +import gmail.Lance5057.TinkersDefense; import gmail.Lance5057.containers.Container_CrestMount; import gmail.Lance5057.network.Message_CrestMount; import gmail.Lance5057.tileentities.TileEntity_CrestMount; @@ -61,7 +61,7 @@ protected void actionPerformed(GuiButton button) else inventory.flip[i-1]=false; - mod_TinkersDefense.INSTANCE.sendToServer(new Message_CrestMount(inventory.xCoord, inventory.yCoord, inventory.zCoord, inventory.flip)); + TinkersDefense.INSTANCE.sendToServer(new Message_CrestMount(inventory.xCoord, inventory.yCoord, inventory.zCoord, inventory.flip)); } } } diff --git a/src/main/java/gmail/Lance5057/com/HeaterShield.java b/src/main/java/gmail/Lance5057/items/HeaterShield.java index 063eb66..fe97305 100644 --- a/src/main/java/gmail/Lance5057/com/HeaterShield.java +++ b/src/main/java/gmail/Lance5057/items/HeaterShield.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.items; import java.util.List; @@ -80,11 +80,6 @@ return 1.4f; } @SideOnly(Side.CLIENT) @Override -public int getRenderPasses (int metadata) -{ -return 10; -} -@Override public int getPartAmount () { return 4; diff --git a/src/main/java/gmail/Lance5057/com/RoundShield.java b/src/main/java/gmail/Lance5057/items/RoundShield.java index ca176a3..59687ef 100644 --- a/src/main/java/gmail/Lance5057/com/RoundShield.java +++ b/src/main/java/gmail/Lance5057/items/RoundShield.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.items; import java.util.List; import java.util.Random; @@ -27,7 +27,7 @@ import net.minecraft.world.World; import net.minecraftforge.event.entity.player.PlayerInteractEvent; import tconstruct.library.tools.*; import tconstruct.tools.TinkerTools; -public class RoundShield extends Shield implements IShield, ISheathed, IArrowCatcher, IArrowDisplay +public class RoundShield extends HarvestTool implements IShield, ISheathed, IArrowCatcher, IArrowDisplay { int induceDamage = 0; public RoundShield() @@ -77,11 +77,6 @@ return 1.4f; } @SideOnly(Side.CLIENT) @Override -public int getRenderPasses (int metadata) -{ -return 10; -} -@Override public int getPartAmount () { return 3; diff --git a/src/main/java/gmail/Lance5057/com/RoyalGuard.java b/src/main/java/gmail/Lance5057/items/RoyalGuard.java index 3510c18..04bce58 100644 --- a/src/main/java/gmail/Lance5057/com/RoyalGuard.java +++ b/src/main/java/gmail/Lance5057/items/RoyalGuard.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.items; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/gmail/Lance5057/com/Shield.java b/src/main/java/gmail/Lance5057/items/Shield.java index 0cfa33c..acf05fb 100644 --- a/src/main/java/gmail/Lance5057/com/Shield.java +++ b/src/main/java/gmail/Lance5057/items/Shield.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.items; import tconstruct.library.tools.ToolCore; import cpw.mods.fml.relauncher.*; diff --git a/src/main/java/gmail/Lance5057/items/TinkerArmor.java b/src/main/java/gmail/Lance5057/items/TinkerArmor.java index 95d776c..0f1aa18 100644 --- a/src/main/java/gmail/Lance5057/items/TinkerArmor.java +++ b/src/main/java/gmail/Lance5057/items/TinkerArmor.java @@ -1,6 +1,6 @@ package gmail.Lance5057.items; -import gmail.Lance5057.com.mod_TinkersDefense; +import gmail.Lance5057.TinkersDefense; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; @@ -41,11 +41,11 @@ public class TinkerArmor extends ItemArmor int type = ((ItemArmor)itemStack.getItem()).armorType; if(type == 1 || type == 3) { - armorModel = mod_TinkersDefense.proxy.getArmorModel(0); + armorModel = TinkersDefense.proxy.getArmorModel(0); } else { - armorModel = mod_TinkersDefense.proxy.getArmorModel(1); + armorModel = TinkersDefense.proxy.getArmorModel(1); } } diff --git a/src/main/java/gmail/Lance5057/com/moltenAeonsteelFluid.java b/src/main/java/gmail/Lance5057/liquids/moltenAeonsteelFluid.java index b18f981..650426e 100644 --- a/src/main/java/gmail/Lance5057/com/moltenAeonsteelFluid.java +++ b/src/main/java/gmail/Lance5057/liquids/moltenAeonsteelFluid.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.liquids; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/gmail/Lance5057/com/moltenDogbeariumFluid.java b/src/main/java/gmail/Lance5057/liquids/moltenDogbeariumFluid.java index b9d91af..d23b24b 100644 --- a/src/main/java/gmail/Lance5057/com/moltenDogbeariumFluid.java +++ b/src/main/java/gmail/Lance5057/liquids/moltenDogbeariumFluid.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.liquids; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/gmail/Lance5057/com/moltenQueensGoldFluid.java b/src/main/java/gmail/Lance5057/liquids/moltenQueensGoldFluid.java index dc55f19..972761d 100644 --- a/src/main/java/gmail/Lance5057/com/moltenQueensGoldFluid.java +++ b/src/main/java/gmail/Lance5057/liquids/moltenQueensGoldFluid.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.com; +package gmail.Lance5057.liquids; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/gmail/Lance5057/models/ModelArmorAnvil.java b/src/main/java/gmail/Lance5057/models/ModelArmorAnvil.java new file mode 100644 index 0000000..3bc064e --- /dev/null +++ b/src/main/java/gmail/Lance5057/models/ModelArmorAnvil.java @@ -0,0 +1,61 @@ +package gmail.Lance5057.models; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +/** + * Armor Anvil - Lance5057 + * Created using Tabula 4.1.1 + */ +public class ModelArmorAnvil extends ModelBase { + public ModelRenderer Log; + public ModelRenderer HammerHead; + public ModelRenderer HammerHandle; + public ModelRenderer AnvilBase; + public ModelRenderer AnvilStem; + public ModelRenderer AnvilTop; + + public ModelArmorAnvil() { + this.textureWidth = 64; + this.textureHeight = 64; + this.AnvilTop = new ModelRenderer(this, 0, 22); + this.AnvilTop.setRotationPoint(-4.0F, 6.0F, -6.0F); + this.AnvilTop.addBox(0.0F, 0.0F, 0.0F, 8, 6, 12, 0.0F); + this.HammerHead = new ModelRenderer(this, 15, 21); + this.HammerHead.setRotationPoint(-1.3F, 4.0F, 0.0F); + this.HammerHead.addBox(0.0F, 0.0F, 0.0F, 3, 2, 2, 0.0F); + this.setRotateAngle(HammerHead, 0.091106186954104F, -0.5462880558742251F, 0.0F); + this.AnvilStem = new ModelRenderer(this, 10, 32); + this.AnvilStem.setRotationPoint(-2.0F, 12.0F, -3.0F); + this.AnvilStem.addBox(0.0F, 0.0F, 0.0F, 4, 2, 6, 0.0F); + this.HammerHandle = new ModelRenderer(this, 17, 47); + this.HammerHandle.setRotationPoint(1.0F, 0.5F, -6.0F); + this.HammerHandle.addBox(0.0F, 0.0F, 0.0F, 1, 1, 6, 0.0F); + this.AnvilBase = new ModelRenderer(this, 2, 28); + this.AnvilBase.setRotationPoint(-4.0F, 14.0F, -5.0F); + this.AnvilBase.addBox(0.0F, 0.0F, 0.0F, 8, 2, 10, 0.0F); + this.Log = new ModelRenderer(this, 0, 40); + this.Log.setRotationPoint(-8.0F, 16.0F, -8.0F); + this.Log.addBox(0.0F, 0.0F, 0.0F, 16, 8, 16, 0.0F); + this.HammerHead.addChild(this.HammerHandle); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + this.AnvilTop.render(f5); + this.HammerHead.render(f5); + this.AnvilStem.render(f5); + this.AnvilBase.render(f5); + this.Log.render(f5); + } + + /** + * This is a helper function from Tabula to set the rotation of model parts + */ + public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } +} diff --git a/src/main/java/gmail/Lance5057/blocks/ModelCrestMount.java b/src/main/java/gmail/Lance5057/models/ModelCrestMount.java index d22158c..8134ee2 100644 --- a/src/main/java/gmail/Lance5057/blocks/ModelCrestMount.java +++ b/src/main/java/gmail/Lance5057/models/ModelCrestMount.java @@ -4,7 +4,7 @@ // Keep in mind that you still need to fill in some blanks // - ZeuX -package gmail.Lance5057.blocks; +package gmail.Lance5057.models; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; diff --git a/src/main/java/gmail/Lance5057/models/ModelJewelersBench.java b/src/main/java/gmail/Lance5057/models/ModelJewelersBench.java new file mode 100644 index 0000000..46c43bd --- /dev/null +++ b/src/main/java/gmail/Lance5057/models/ModelJewelersBench.java @@ -0,0 +1,100 @@ +package gmail.Lance5057.models; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +/** + * JewelersBench - Lance5057 + * Created using Tabula 4.1.1 + */ +public class ModelJewelersBench extends ModelBase { + public ModelRenderer TableSide2; + public ModelRenderer SawBlock1; + public ModelRenderer SawBlock2; + public ModelRenderer SawBlock3; + public ModelRenderer SawBlockClamp; + public ModelRenderer Leg1; + public ModelRenderer Leg2; + public ModelRenderer Leg3; + public ModelRenderer Leg4; + public ModelRenderer TableTop; + public ModelRenderer TableBack; + public ModelRenderer TableSide1; + public ModelRenderer Drawer; + public ModelRenderer Handle; + + public ModelJewelersBench() { + this.textureWidth = 64; + this.textureHeight = 64; + this.SawBlock1 = new ModelRenderer(this, 0, 0); + this.SawBlock1.setRotationPoint(2.0F, 8.2F, -12.0F); + this.SawBlock1.addBox(0.0F, 0.0F, 0.0F, 1, 1, 4, 0.0F); + this.Leg4 = new ModelRenderer(this, 0, 0); + this.Leg4.setRotationPoint(6.0F, 10.0F, 6.0F); + this.Leg4.addBox(0.0F, 0.0F, 0.0F, 2, 14, 2, 0.0F); + this.Drawer = new ModelRenderer(this, 0, 46); + this.Drawer.setRotationPoint(-6.0F, 11.5F, -8.0F); + this.Drawer.addBox(0.0F, 0.0F, 0.0F, 12, 2, 16, 0.0F); + this.TableSide2 = new ModelRenderer(this, 0, 0); + this.TableSide2.setRotationPoint(-8.0F, 7.0F, -7.0F); + this.TableSide2.addBox(0.0F, 0.0F, 0.0F, 1, 1, 14, 0.0F); + this.Leg2 = new ModelRenderer(this, 0, 0); + this.Leg2.setRotationPoint(6.0F, 10.0F, -8.0F); + this.Leg2.addBox(0.0F, 0.0F, 0.0F, 2, 14, 2, 0.0F); + this.TableSide1 = new ModelRenderer(this, 0, 0); + this.TableSide1.setRotationPoint(7.0F, 7.0F, -7.0F); + this.TableSide1.addBox(0.0F, 0.0F, 0.0F, 1, 1, 14, 0.0F); + this.SawBlock3 = new ModelRenderer(this, 0, 0); + this.SawBlock3.setRotationPoint(3.0F, 8.2F, -11.0F); + this.SawBlock3.addBox(0.0F, 0.0F, 0.0F, 1, 1, 3, 0.0F); + this.Handle = new ModelRenderer(this, 55, 0); + this.Handle.setRotationPoint(-2.0F, 12.0F, -9.0F); + this.Handle.addBox(0.0F, 0.0F, 0.0F, 4, 1, 1, 0.0F); + this.Leg1 = new ModelRenderer(this, 0, 0); + this.Leg1.setRotationPoint(-8.0F, 10.0F, -8.0F); + this.Leg1.addBox(0.0F, 0.0F, 0.0F, 2, 14, 2, 0.0F); + this.TableTop = new ModelRenderer(this, 0, 28); + this.TableTop.setRotationPoint(-8.0F, 8.0F, -8.0F); + this.TableTop.addBox(0.0F, 0.0F, 0.0F, 16, 2, 16, 0.0F); + this.TableBack = new ModelRenderer(this, 0, 0); + this.TableBack.setRotationPoint(-8.0F, 7.0F, 7.0F); + this.TableBack.addBox(0.0F, 0.0F, 0.0F, 16, 1, 1, 0.0F); + this.SawBlockClamp = new ModelRenderer(this, 54, 0); + this.SawBlockClamp.setRotationPoint(1.5F, 8.0F, -9.0F); + this.SawBlockClamp.addBox(0.0F, 0.0F, 0.0F, 4, 2, 1, 0.0F); + this.Leg3 = new ModelRenderer(this, 0, 0); + this.Leg3.setRotationPoint(-8.0F, 10.0F, 6.0F); + this.Leg3.addBox(0.0F, 0.0F, 0.0F, 2, 14, 2, 0.0F); + this.SawBlock2 = new ModelRenderer(this, 0, 0); + this.SawBlock2.setRotationPoint(4.0F, 8.2F, -12.0F); + this.SawBlock2.addBox(0.0F, 0.0F, 0.0F, 1, 1, 4, 0.0F); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + this.SawBlock1.render(f5); + this.Leg4.render(f5); + this.Drawer.render(f5); + this.TableSide2.render(f5); + this.Leg2.render(f5); + this.TableSide1.render(f5); + this.SawBlock3.render(f5); + this.Handle.render(f5); + this.Leg1.render(f5); + this.TableTop.render(f5); + this.TableBack.render(f5); + this.SawBlockClamp.render(f5); + this.Leg3.render(f5); + this.SawBlock2.render(f5); + } + + /** + * This is a helper function from Tabula to set the rotation of model parts + */ + public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } +} diff --git a/src/main/java/gmail/Lance5057/models/Renderer_ArmorAnvil.java b/src/main/java/gmail/Lance5057/models/Renderer_ArmorAnvil.java new file mode 100644 index 0000000..be7bd9e --- /dev/null +++ b/src/main/java/gmail/Lance5057/models/Renderer_ArmorAnvil.java @@ -0,0 +1,43 @@ +package gmail.Lance5057.models; + +import org.lwjgl.opengl.GL11; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.entity.Entity; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; + +public class Renderer_ArmorAnvil extends TileEntitySpecialRenderer +{ + private final ModelArmorAnvil model; + + public Renderer_ArmorAnvil() { + this.model = new ModelArmorAnvil(); +} + + @Override + public void renderTileEntityAt(TileEntity te, double x, double y, double z, float scale) + { + + GL11.glPushMatrix(); + + GL11.glTranslatef((float) x + 0.5F, (float) y + 1.5F, (float) z + 0.5F); + + ResourceLocation textures = (new ResourceLocation("tinkersdefense:textures/blocks/ArmorAnvil.png")); + + Minecraft.getMinecraft().renderEngine.bindTexture(textures); + + GL11.glPushMatrix(); + + int meta = te.getBlockMetadata(); + + GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); + + this.model.render((Entity)null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F); + GL11.glPopMatrix(); + GL11.glPopMatrix(); + + } + +} diff --git a/src/main/java/gmail/Lance5057/blocks/Renderer_CrestMount.java b/src/main/java/gmail/Lance5057/models/Renderer_CrestMount.java index 4959e7c..1f4f4ea 100644 --- a/src/main/java/gmail/Lance5057/blocks/Renderer_CrestMount.java +++ b/src/main/java/gmail/Lance5057/models/Renderer_CrestMount.java @@ -1,4 +1,4 @@ -package gmail.Lance5057.blocks; +package gmail.Lance5057.models; import gmail.Lance5057.tileentities.TileEntity_CrestMount; import net.minecraft.block.Block; diff --git a/src/main/java/gmail/Lance5057/models/Renderer_JewelersBench.java b/src/main/java/gmail/Lance5057/models/Renderer_JewelersBench.java new file mode 100644 index 0000000..df13248 --- /dev/null +++ b/src/main/java/gmail/Lance5057/models/Renderer_JewelersBench.java @@ -0,0 +1,41 @@ +package gmail.Lance5057.models; + +import org.lwjgl.opengl.GL11; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.entity.Entity; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; + +public class Renderer_JewelersBench extends TileEntitySpecialRenderer +{ + private final ModelJewelersBench model; + + public Renderer_JewelersBench() { + this.model = new ModelJewelersBench(); +} + + @Override + public void renderTileEntityAt(TileEntity te, double x, double y, double z, float scale) + { + GL11.glPushMatrix(); + GL11.glTranslatef((float) x + 0.5F, (float) y + 1.5F, (float) z + 0.5F); + + ResourceLocation textures = (new ResourceLocation("tinkersdefense:textures/blocks/JewelersBench.png")); + + Minecraft.getMinecraft().renderEngine.bindTexture(textures); + + GL11.glPushMatrix(); + + int meta = te.getBlockMetadata(); + + GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); + + this.model.render((Entity)null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F); + GL11.glPopMatrix(); + GL11.glPopMatrix(); + + } + +} diff --git a/src/main/java/gmail/Lance5057/network/PacketHandler.java b/src/main/java/gmail/Lance5057/network/PacketHandler.java index 002d779..79c3d6f 100644 --- a/src/main/java/gmail/Lance5057/network/PacketHandler.java +++ b/src/main/java/gmail/Lance5057/network/PacketHandler.java @@ -1,6 +1,6 @@ package gmail.Lance5057.network; -import gmail.Lance5057.com.mod_TinkersDefense; +import gmail.Lance5057.TinkersDefense; import cpw.mods.fml.relauncher.Side; public class PacketHandler { @@ -8,7 +8,7 @@ public class PacketHandler { public static void init() { - mod_TinkersDefense.INSTANCE.registerMessage(Handler_CrestMount.class, Message_CrestMount.class,id++,Side.SERVER); + TinkersDefense.INSTANCE.registerMessage(Handler_CrestMount.class, Message_CrestMount.class,id++,Side.SERVER); } } diff --git a/src/main/java/gmail/Lance5057/proxy/ClientProxy.java b/src/main/java/gmail/Lance5057/proxy/ClientProxy.java index a038bb8..843ee1c 100644 --- a/src/main/java/gmail/Lance5057/proxy/ClientProxy.java +++ b/src/main/java/gmail/Lance5057/proxy/ClientProxy.java @@ -1,18 +1,19 @@ package gmail.Lance5057.proxy; -import gmail.Lance5057.blocks.Renderer_CrestMount; -import gmail.Lance5057.containers.Container_CrestMount; -import gmail.Lance5057.gui.Gui_CrestMount; +import gmail.Lance5057.TinkersDefense; import gmail.Lance5057.items.ModelTinkerArmor; +import gmail.Lance5057.items.RoundShield; +import gmail.Lance5057.models.Renderer_ArmorAnvil; +import gmail.Lance5057.models.Renderer_CrestMount; +import gmail.Lance5057.models.Renderer_JewelersBench; +import gmail.Lance5057.tileentities.TileEntity_ArmorAnvil; import gmail.Lance5057.tileentities.TileEntity_CrestMount; -import net.minecraft.client.Minecraft; +import gmail.Lance5057.tileentities.TileEntity_JewelersBench; import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.World; -import cpw.mods.fml.client.FMLClientHandler; +import net.minecraftforge.client.MinecraftForgeClient; +import tconstruct.client.FlexibleToolRenderer; +import tconstruct.library.tools.ToolCore; import cpw.mods.fml.client.registry.ClientRegistry; -import cpw.mods.fml.common.network.simpleimpl.MessageContext; public class ClientProxy extends CommonProxy @@ -21,7 +22,13 @@ public class ClientProxy extends CommonProxy @Override public void registerRenderers() { + FlexibleToolRenderer renderer = new FlexibleToolRenderer(); + MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_roundShield, renderer); + MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_heaterShield, renderer); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_CrestMount.class, new Renderer_CrestMount()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_ArmorAnvil.class, new Renderer_ArmorAnvil()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_JewelersBench.class, new Renderer_JewelersBench()); } @Override diff --git a/src/main/java/gmail/Lance5057/proxy/CommonProxy.java b/src/main/java/gmail/Lance5057/proxy/CommonProxy.java index 4fbfd93..5f21484 100644 --- a/src/main/java/gmail/Lance5057/proxy/CommonProxy.java +++ b/src/main/java/gmail/Lance5057/proxy/CommonProxy.java @@ -1,6 +1,6 @@ package gmail.Lance5057.proxy; -import gmail.Lance5057.com.mod_TinkersDefense; +import gmail.Lance5057.TinkersDefense; import gmail.Lance5057.containers.Container_CrestMount; import gmail.Lance5057.gui.Gui_CrestMount; import gmail.Lance5057.tileentities.TileEntity_CrestMount; @@ -40,7 +40,7 @@ public class CommonProxy implements IGuiHandler { public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { // Hooray, no 'magic' numbers - we know exactly which Gui this refers to - if (ID == mod_TinkersDefense.GUI_ITEM_INV) + if (ID == TinkersDefense.GUI_ITEM_INV) { // Use the player's held item to create the inventory return new Container_CrestMount(player.inventory, (TileEntity_CrestMount)world.getTileEntity(x, y, z)); @@ -52,7 +52,7 @@ public class CommonProxy implements IGuiHandler { public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { - if (ID == mod_TinkersDefense.GUI_ITEM_INV) + if (ID == TinkersDefense.GUI_ITEM_INV) { // We have to cast the new container as our custom class diff --git a/src/main/java/gmail/Lance5057/tileentities/TileEntity_ArmorAnvil.java b/src/main/java/gmail/Lance5057/tileentities/TileEntity_ArmorAnvil.java new file mode 100644 index 0000000..59b823e --- /dev/null +++ b/src/main/java/gmail/Lance5057/tileentities/TileEntity_ArmorAnvil.java @@ -0,0 +1,8 @@ +package gmail.Lance5057.tileentities; + +import net.minecraft.tileentity.TileEntity; + +public class TileEntity_ArmorAnvil extends TileEntity +{ + +} diff --git a/src/main/java/gmail/Lance5057/tileentities/TileEntity_JewelersBench.java b/src/main/java/gmail/Lance5057/tileentities/TileEntity_JewelersBench.java new file mode 100644 index 0000000..7ca36da --- /dev/null +++ b/src/main/java/gmail/Lance5057/tileentities/TileEntity_JewelersBench.java @@ -0,0 +1,8 @@ +package gmail.Lance5057.tileentities; + +import net.minecraft.tileentity.TileEntity; + +public class TileEntity_JewelersBench extends TileEntity +{ + +} |
