diff options
| author | Lance5057 <Lance5057@gmail.com> | 2015-03-13 08:15:33 -0500 |
|---|---|---|
| committer | Lance5057 <Lance5057@gmail.com> | 2015-03-13 08:15:33 -0500 |
| commit | afb474545246da88084a43cae31259c33e63a8d1 (patch) | |
| tree | df0e220a3568546b7c64bf56e00c8d6af24fed64 | |
| parent | 495fc1d710df9f5b98fec0d0f61f105811742d89 (diff) | |
Updated to TiCo 1.8.3 and fixed the rendering issues that followed.
Also refactored some codes.
34 files changed, 543 insertions, 55 deletions
@@ -63,10 +63,10 @@ <classpathentry exported="true" kind="lib" path="C:/Users/T/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/17.0/9c6ef172e8de35fd8d4d8783e4821e57cdef7445/guava-17.0.jar" sourcepath="C:/Users/T/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/17.0/7ca0efbeb87ca845b5d7a0ac9c21a4b7b95f7b28/guava-17.0-sources.jar"/> <classpathentry exported="true" kind="lib" path="C:/Users/T/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.3.2/90a3822c38ec8c996e84c16a3477ef632cbc87a3/commons-lang3-3.3.2.jar" sourcepath="C:/Users/T/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.3.2/d2a489573c0ed2c4942b3660decad5d65087b406/commons-lang3-3.3.2-sources.jar"/> <classpathentry exported="true" kind="lib" path="C:/Users/T/Desktop/Minecraft Modding/1.7.10/Tinkers-Defense/libs/Mantle-1.7.10-0.3.2.DEV.GITBORK-deobf.jar"/> - <classpathentry exported="true" kind="lib" path="C:/Users/T/Desktop/Minecraft Modding/1.7.10/Tinkers-Defense/libs/TConstruct-1.7.10-1.8.2.DEV.GITBORK-deobf.jar"/> - <classpathentry exported="true" kind="lib" path="C:/Users/T/Desktop/Minecraft Modding/1.7.10/Tinkers-Defense/libs/TConstruct-1.7.10-1.8.2.DEV.GITBORK-lib.jar"/> - <classpathentry exported="true" kind="lib" path="C:/Users/T/Desktop/Minecraft Modding/1.7.10/Tinkers-Defense/libs/TConstruct-1.7.10-1.8.2.DEV.GITBORK-sources.jar"/> <classpathentry exported="true" kind="lib" path="C:/Users/T/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.10-10.13.2.1291/start"/> <classpathentry kind="lib" path="libs/1.7.10-Battlegear-Bin-1.0.6.3.jar"/> + <classpathentry kind="lib" path="libs/TConstruct-1.7.10-1.8.3.DEV.GITBORK-deobf.jar"/> + <classpathentry kind="lib" path="libs/TConstruct-1.7.10-1.8.3.DEV.GITBORK-lib.jar"/> + <classpathentry kind="lib" path="libs/TConstruct-1.7.10-1.8.3.DEV.GITBORK-sources.jar"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/src/api/java/dynamicswordskills/api/ISword.java b/src/api/java/dynamicswordskills/api/ISword.java new file mode 100644 index 0000000..d8f309b --- /dev/null +++ b/src/api/java/dynamicswordskills/api/ISword.java @@ -0,0 +1,27 @@ +/** + Copyright (C) <2015> <coolAlias> + This file is part of coolAlias' Dynamic Sword Skills Minecraft Mod; as such, + you can redistribute it and/or modify it under the terms of the GNU + General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +package dynamicswordskills.api; + +/** + * + * For the purpose of using certain skills, this item will be considered a sword. + * + * Skills which require a sword are: + * {@link LeapingBlow}, {@link MortalDraw}, and {@link RisingCut} + * + */ +public interface ISword { + +}
\ No newline at end of file diff --git a/src/api/java/invtweaks/api/container/ChestContainer.java b/src/api/java/invtweaks/api/container/ChestContainer.java new file mode 100644 index 0000000..dc27377 --- /dev/null +++ b/src/api/java/invtweaks/api/container/ChestContainer.java @@ -0,0 +1,38 @@ +package invtweaks.api.container; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * A marker for containers that have a chest-like persistant storage component. Enables the Inventroy Tweaks sorting + * buttons for this container. + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +public @interface ChestContainer { + // Set to true if the Inventory Tweaks sorting buttons should be shown for this container. + boolean showButtons() default true; + + // Size of a chest row + int rowSize() default 9; + + // Uses 'large chest' mode for sorting buttons + // (Renders buttons vertically down the right side of the GUI) + boolean isLargeChest() default false; + + // Annotation for method to get size of a chest row if it is not a fixed size for this container class + // Signature int func() + @Retention(RetentionPolicy.RUNTIME) + @Target(ElementType.METHOD) + public @interface RowSizeCallback { + } + + // Annotation for method to get size of a chest row if it is not a fixed size for this container class + // Signature int func() + @Retention(RetentionPolicy.RUNTIME) + @Target(ElementType.METHOD) + public @interface IsLargeCallback { + } +}
\ No newline at end of file diff --git a/src/api/java/zeldaswordskills/api/item/ISword.java b/src/api/java/zeldaswordskills/api/item/ISword.java new file mode 100644 index 0000000..793c97d --- /dev/null +++ b/src/api/java/zeldaswordskills/api/item/ISword.java @@ -0,0 +1,30 @@ +/** + Copyright (C) <2014> <coolAlias> + + This file is part of coolAlias' Zelda Sword Skills Minecraft Mod; as such, + you can redistribute it and/or modify it under the terms of the GNU + General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +package zeldaswordskills.api.item; + +/** + * + * For the purpose of using certain skills, this item will be considered a sword. + * + * Skills which require a sword are: + * {@link LeapingBlow}, {@link MortalDraw}, {@link RisingCut}, and {@link SwordBeam} + * + */ +public interface ISword { + +} diff --git a/src/api/java/zeldaswordskills/api/item/package-info.java b/src/api/java/zeldaswordskills/api/item/package-info.java new file mode 100644 index 0000000..ee7ca09 --- /dev/null +++ b/src/api/java/zeldaswordskills/api/item/package-info.java @@ -0,0 +1,4 @@ +@API(owner = "zeldaswordskills", provides = "ZeldaItemAPI", apiVersion = "0.3") +package zeldaswordskills.api.item; + +import cpw.mods.fml.common.API; diff --git a/src/api/java/zeldaswordskills/api/package-info.java b/src/api/java/zeldaswordskills/api/package-info.java new file mode 100644 index 0000000..c253cb4 --- /dev/null +++ b/src/api/java/zeldaswordskills/api/package-info.java @@ -0,0 +1,4 @@ +@API(owner = "zeldaswordskills", provides = "ZeldaAPI", apiVersion = "0.3") +package zeldaswordskills.api; + +import cpw.mods.fml.common.API; 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 +{ + +} diff --git a/src/main/resources/assets/tinkersdefense/lang/en_US.lang b/src/main/resources/assets/tinkersdefense/lang/en_US.lang index e7955bc..17fb293 100644 --- a/src/main/resources/assets/tinkersdefense/lang/en_US.lang +++ b/src/main/resources/assets/tinkersdefense/lang/en_US.lang @@ -15,6 +15,10 @@ tile.MoltenDogbearium.name=Molten Dogbearium material.dogbearium=Dogbearium material.dogbearium.ability=Serrated +tile.CrestMount.name=Crest Mount +tile.ArmorAnvil.name=Armor Anvil +tile.JewelersBench.name=Jeweler's Bench + tool.roundshield=Round Shield tool.heatershield=Heater Shield @@ -22,5 +26,5 @@ fluid.moltenAeonsteel.name=Molten Aeon Steel fluid.moltenQueensGold.name=Molten Queen's Gold fluid.moltenDogbearium.name=Molten Dogbearium -gui.toolstation.roundshield.name = "Round Shield" -gui.toolstation.roundshield.desc = "A simple shield with average durability and average defense."
\ No newline at end of file +gui.toolstation.roundshield.name=Round Shield +gui.toolstation.roundshield.desc=A simple shield with average durability and average defense.
\ No newline at end of file diff --git a/src/main/resources/assets/tinkersdefense/textures/blocks/ArmorAnvil.png b/src/main/resources/assets/tinkersdefense/textures/blocks/ArmorAnvil.png Binary files differnew file mode 100644 index 0000000..1849a26 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/textures/blocks/ArmorAnvil.png diff --git a/src/main/resources/assets/tinkersdefense/textures/blocks/JewelersBench.png b/src/main/resources/assets/tinkersdefense/textures/blocks/JewelersBench.png Binary files differnew file mode 100644 index 0000000..043b7fa --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/textures/blocks/JewelersBench.png |
