diff options
| author | Lance5057 <Lance5057@gmail.com> | 2017-08-22 01:35:44 -0500 |
|---|---|---|
| committer | Lance5057 <Lance5057@gmail.com> | 2017-08-22 01:35:44 -0500 |
| commit | 6af565ab07a802518345df7f06772df56f6e205f (patch) | |
| tree | 22583ec6d1b519eba68e0471e90f310f249819f0 /src/main/java | |
| parent | ae504d76e9cc77465978cea71759f85d55c7e0da (diff) | |
1.4.1.1a update
Diffstat (limited to 'src/main/java')
30 files changed, 548 insertions, 506 deletions
diff --git a/src/main/java/lance5057/tDefense/Reference.java b/src/main/java/lance5057/tDefense/Reference.java index 61a1aec..f10db99 100644 --- a/src/main/java/lance5057/tDefense/Reference.java +++ b/src/main/java/lance5057/tDefense/Reference.java @@ -4,7 +4,7 @@ public class Reference { public static final String MOD_ID = "tinkersdefense"; - public static final String VERSION = "1.4.0.8a"; + public static final String VERSION = "1.4.1.1a"; public static final String MOD_NAME = "Tinkers' Defense"; } diff --git a/src/main/java/lance5057/tDefense/TinkersDefense.java b/src/main/java/lance5057/tDefense/TinkersDefense.java index bcd385e..1aae6a1 100644 --- a/src/main/java/lance5057/tDefense/TinkersDefense.java +++ b/src/main/java/lance5057/tDefense/TinkersDefense.java @@ -3,7 +3,6 @@ package lance5057.tDefense; import java.util.Iterator; import java.util.List; -import lance5057.tDefense.baubles.BaublesBase; import lance5057.tDefense.core.CoreBase; import lance5057.tDefense.core.materials.TDMaterials; import lance5057.tDefense.core.parts.TDParts; @@ -42,7 +41,6 @@ public class TinkersDefense { HolidayBase holiday; ModuleBase core; - ModuleBase baubles; //ModuleBase armor; // public static TDEventHandler TDevents; @@ -126,7 +124,6 @@ public class TinkersDefense { core = new CoreBase(); holiday = new HolidayBase(); - baubles = new BaublesBase(); //armor = new ArmorBase(); mats = new TDMaterials(); @@ -334,8 +331,9 @@ public class TinkersDefense { mats.preInit(e); parts.preInit(e); tools.preInit(e); - baubles.preInit(e); proxy.preInit(); + + mats.integrate(mats.materials, mats.materialIntegrations, mats.deferredMaterials); } @EventHandler @@ -355,7 +353,6 @@ public class TinkersDefense { mats.init(e); parts.init(e); tools.init(e); - baubles.init(e); proxy.init(); phandler.init(); diff --git a/src/main/java/lance5057/tDefense/armor/items/straps/StrapsContainer.java b/src/main/java/lance5057/tDefense/armor/items/straps/StrapsContainer.java index 7d5b408..96a2aed 100644 --- a/src/main/java/lance5057/tDefense/armor/items/straps/StrapsContainer.java +++ b/src/main/java/lance5057/tDefense/armor/items/straps/StrapsContainer.java @@ -33,16 +33,7 @@ public class StrapsContainer extends Container // ITEM INVENTORY - you'll need to adjust the slot locations to match your texture file // I have them set vertically in columns of 4 to the right of the player model - for (i = 0; i < ItemStrapsInv.INVSIZE; ++i) - { - // You can make a custom Slot if you need different behavior, - // such as only certain item types can be put into this slot - // We made a custom slot to prevent our inventory-storing item - // from being stored within itself, but if you want to allow that and - // you followed my advice at the end of the above step, then you - // could get away with using the vanilla Slot class - this.addSlotToContainer(new Slot(this.inventory, i, 80 + (18 * (int)(i/4)), 8 + (18*(i%4)))); - } + this.addSlotToContainer(new Slot(this.inventory, 0, 80, 8+23)); // If you want, you can add ARMOR SLOTS here as well, but you need to // make a public version of SlotArmor. I won't be doing that in this tutorial. diff --git a/src/main/java/lance5057/tDefense/armor/items/straps/StrapsGui.java b/src/main/java/lance5057/tDefense/armor/items/straps/StrapsGui.java index acd6868..5cd229e 100644 --- a/src/main/java/lance5057/tDefense/armor/items/straps/StrapsGui.java +++ b/src/main/java/lance5057/tDefense/armor/items/straps/StrapsGui.java @@ -3,6 +3,7 @@ package lance5057.tDefense.armor.items.straps; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; +import lance5057.tDefense.Reference; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.RenderHelper; @@ -24,7 +25,7 @@ public class StrapsGui extends GuiContainer * I have provided a sample texture file that works with this tutorial. Download it * from Forge_Tutorials/textures/gui/ */ - private static final ResourceLocation iconLocation = new ResourceLocation("inventoryitemmod", "textures/gui/inventoryitem.png"); + private static final ResourceLocation iconLocation = new ResourceLocation(Reference.MOD_ID, "textures/gui/straps_helm.png"); /** The inventory to render on screen */ private final ItemStrapsInv inventory; diff --git a/src/main/java/lance5057/tDefense/baubles/BaublesBase.java b/src/main/java/lance5057/tDefense/baubles/BaublesBase.java deleted file mode 100644 index b2af546..0000000 --- a/src/main/java/lance5057/tDefense/baubles/BaublesBase.java +++ /dev/null @@ -1,40 +0,0 @@ -package lance5057.tDefense.baubles; - -import lance5057.tDefense.baubles.tools.TDBaubles; -import lance5057.tDefense.util.ModuleBase; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; - -public class BaublesBase extends ModuleBase -{ - public static BaublesBase instance = new BaublesBase(); - - - public static BaublesItems items; - public static TDBaubles tools; - - @Override - public void preInit(FMLPreInitializationEvent e) - { - items = new BaublesItems(); - tools = new TDBaubles(); - - items.preInit(e); - tools.preInit(e); - } - - @Override - public void init(FMLInitializationEvent e) { - // TODO Auto-generated method stub - items.init(e); - tools.init(e); - } - - @Override - public void postInit(FMLPostInitializationEvent e) { - // TODO Auto-generated method stub - items.postInit(e); - tools.postInit(e); - } -} diff --git a/src/main/java/lance5057/tDefense/baubles/BaublesClientProxy.java b/src/main/java/lance5057/tDefense/baubles/BaublesClientProxy.java deleted file mode 100644 index d5603ff..0000000 --- a/src/main/java/lance5057/tDefense/baubles/BaublesClientProxy.java +++ /dev/null @@ -1,91 +0,0 @@ -package lance5057.tDefense.baubles; - -import java.util.Map; - -import lance5057.tDefense.Reference; -import lance5057.tDefense.baubles.renderers.BaubleRenderer; -import lance5057.tDefense.baubles.renderers.SheatheModel; -import lance5057.tDefense.baubles.tools.TDBaubles; -import lance5057.tDefense.core.tools.TDTools; -import lance5057.tDefense.util.ModuleBase; -import net.minecraft.client.Minecraft; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.entity.RenderPlayer; -import net.minecraft.item.Item; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import slimeknights.tconstruct.common.ModelRegisterUtil; -import slimeknights.tconstruct.library.TinkerRegistryClient; -import slimeknights.tconstruct.library.client.ToolBuildGuiInfo; - -public class BaublesClientProxy { - - public SheatheModel sheathe; - - ToolBuildGuiInfo sheatheGUI; - - public void preInit() { - // TODO Auto-generated method stub - - reloadRenderers(); - } - - public void init() { - // TODO Auto-generated method stub - Map<String, RenderPlayer> skinMap = Minecraft.getMinecraft().getRenderManager().getSkinMap(); - RenderPlayer render; - render = skinMap.get("default"); - render.addLayer(new BaubleRenderer()); - - render = skinMap.get("slim"); - render.addLayer(new BaubleRenderer()); - - createToolGuis(); - setupToolGuis(); - registerToolGuis(); - } - - public void postInit() - { - } - - public void registerToolRenderers() - { - ModelRegisterUtil.registerToolModel(TDBaubles.sheathe); - } - - public void createToolGuis() - { - sheatheGUI = new ToolBuildGuiInfo(TDBaubles.sheathe); - } - - public void setupToolGuis() - { - sheatheGUI.addSlotPosition(34, 15+8); - sheatheGUI.addSlotPosition(34, 33+8); - sheatheGUI.addSlotPosition(34, 51+8); - } - - public void registerToolGuis() - { - TinkerRegistryClient.addToolBuilding(sheatheGUI); - } - - public void reloadRenderers() - { - sheathe = new SheatheModel(); - registerToolRenderers(); - } - - public void setToolGuis() - { - sheatheGUI.positions.clear(); - sheatheGUI.addSlotPosition(34, 15); - sheatheGUI.addSlotPosition(34, 33); - sheatheGUI.addSlotPosition(34, 51); - } - -} diff --git a/src/main/java/lance5057/tDefense/baubles/BaublesItems.java b/src/main/java/lance5057/tDefense/baubles/BaublesItems.java deleted file mode 100644 index 69323bb..0000000 --- a/src/main/java/lance5057/tDefense/baubles/BaublesItems.java +++ /dev/null @@ -1,28 +0,0 @@ -package lance5057.tDefense.baubles; - -import lance5057.tDefense.util.ItemsBase; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; - -public class BaublesItems extends ItemsBase -{ - - @Override - public void preInit(FMLPreInitializationEvent e) { - // TODO Auto-generated method stub - - } - - @Override - public void init(FMLInitializationEvent e) { - // TODO Auto-generated method stub - - } - - @Override - public void postInit(FMLPostInitializationEvent e) { - // TODO Auto-generated method stub - - } -} diff --git a/src/main/java/lance5057/tDefense/baubles/tools/TDBaubles.java b/src/main/java/lance5057/tDefense/baubles/tools/TDBaubles.java deleted file mode 100644 index f06a217..0000000 --- a/src/main/java/lance5057/tDefense/baubles/tools/TDBaubles.java +++ /dev/null @@ -1,99 +0,0 @@ -package lance5057.tDefense.baubles.tools; - -import com.google.common.eventbus.Subscribe; - -import lance5057.tDefense.core.tools.HeaterShield; -import lance5057.tDefense.core.tools.RoundShield; -import lance5057.tDefense.core.tools.TDToolEvents; -import lance5057.tDefense.core.tools.Zweihander; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.registry.GameRegistry; -import slimeknights.tconstruct.library.TinkerRegistry; -import slimeknights.tconstruct.library.tools.ToolCore; - -public class TDBaubles -{ - - TDToolEvents events = new TDToolEvents(); - - // Tools - public static ToolCore sheathe = new Sheathe(); - - // Tool Parts - - // Modifiers - - // Helper stuff -// static List<ToolCore> tools = Lists.newLinkedList(); // contains all tools registered in this pulse -// static List<ToolPart> toolparts = Lists.newLinkedList(); // ^ all toolparts -// static List<IModifier> modifiers = Lists.newLinkedList(); // ^ all modifiers - - // PRE-INITIALIZATION - @Subscribe - public void preInit(FMLPreInitializationEvent event) { - // register items - MinecraftForge.EVENT_BUS.register(events); - - regToolParts(); - regTools(); - registerModifiers(); - - // register blocks - - // register entities - - //proxy.preInit(); - } - - private void regToolParts() { - // The order the items are registered in represents the order in the stencil table GUI too - - } - - private void regTools() { - - regTool(sheathe, "sheathe"); - - TinkerRegistry.registerToolStationCrafting(sheathe); - } - - private void regTool(ToolCore tool, String name) - { - tool.setRegistryName(new ResourceLocation("tinkersdefense:" + name)); - TinkerRegistry.registerTool(tool); - GameRegistry.register(tool); - } - - private void registerModifiers() { - - } - - // INITIALIZATION - @Subscribe - public void init(FMLInitializationEvent event) { - regToolBuilding(); - regRecipies(); - - //proxy.init(); - } - - private void regToolBuilding() { - TinkerRegistry.registerToolCrafting(sheathe); - } - - private void regRecipies() { - - } - - // POST-INITIALIZATION - @Subscribe - public void postInit(FMLPostInitializationEvent event) { - //proxy.postInit(); - } - - -}
\ No newline at end of file diff --git a/src/main/java/lance5057/tDefense/core/CoreItems.java b/src/main/java/lance5057/tDefense/core/CoreItems.java index aa5dede..8b525b1 100644 --- a/src/main/java/lance5057/tDefense/core/CoreItems.java +++ b/src/main/java/lance5057/tDefense/core/CoreItems.java @@ -11,12 +11,6 @@ import net.minecraftforge.fml.common.registry.GameRegistry; public class CoreItems extends ItemsBase { - - - public static Item item_aeonsteelIngot; - public static Item item_queensgoldIngot; - public static Item item_dogbeariumIngot; - public static Item item_straps; public CoreItems() @@ -32,9 +26,6 @@ public class CoreItems extends ItemsBase @Override public void init(FMLInitializationEvent e) { - item_aeonsteelIngot = register("aeonsteelingot", 64, CoreBase.tab); - item_queensgoldIngot = register("queensgoldingot", 64, CoreBase.tab); - item_dogbeariumIngot = register("dogbeariumingot", 64, CoreBase.tab); item_straps = new ItemStraps().setMaxStackSize(1).setUnlocalizedName("straps").setRegistryName(Reference.MOD_ID, "straps"); GameRegistry.register(item_straps); diff --git a/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java b/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java index ac23b79..8121edb 100644 --- a/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java +++ b/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java @@ -1,25 +1,29 @@ package lance5057.tDefense.core.materials; import java.util.Collection; -import java.util.List; +import java.util.Map; import org.apache.commons.lang3.StringUtils; -import com.google.common.collect.Lists; import com.google.common.eventbus.Subscribe; +import gnu.trove.map.hash.THashMap; +import gnu.trove.set.hash.THashSet; import lance5057.tDefense.Reference; import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.armor.materials.MaterialCloth; -import lance5057.tDefense.core.blocks.fluid.TDFluid; +import lance5057.tDefense.core.CoreBase; import lance5057.tDefense.core.blocks.fluid.VibrantFluid; import lance5057.tDefense.core.blocks.fluid.VileFluid; import lance5057.tDefense.core.items.TDOreDictItem; import lance5057.tDefense.core.materials.traits.TraitAxeLover; +import lance5057.tDefense.core.materials.traits.TraitBarbed; +import lance5057.tDefense.core.materials.traits.TraitDogToy; import lance5057.tDefense.core.materials.traits.TraitDulling; import lance5057.tDefense.core.materials.traits.TraitFirestarter; import net.minecraft.block.Block; import net.minecraft.init.Blocks; +import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; @@ -31,6 +35,7 @@ import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.oredict.OreDictionary; import slimeknights.tconstruct.library.MaterialIntegration; import slimeknights.tconstruct.library.TinkerRegistry; +import slimeknights.tconstruct.library.fluid.FluidMolten; import slimeknights.tconstruct.library.materials.BowMaterialStats; import slimeknights.tconstruct.library.materials.ExtraMaterialStats; import slimeknights.tconstruct.library.materials.HandleMaterialStats; @@ -40,18 +45,23 @@ import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.materials.MaterialTypes; import slimeknights.tconstruct.library.traits.AbstractTrait; import slimeknights.tconstruct.library.utils.HarvestLevels; +import slimeknights.tconstruct.shared.TinkerFluids; import slimeknights.tconstruct.smeltery.block.BlockMolten; import slimeknights.tconstruct.tools.TinkerMaterials; public class TDMaterials { - public static final List<Material> materials = Lists.newArrayList(); + // public static final List<Material> materials = Lists.newArrayList(); String SHIELD = ShieldMaterialStats.TYPE; -// public static final Material aeonsteel = mat("aeonsteel", 0xd200d1); -// public static final Material queensgold = mat("queensgold", 0xdede00); -// public static final Material dogbearium = mat("dogbearium", 0x604933); + public static final Map<String, Material> materials = new THashMap<>(); + public static final Map<String, MaterialIntegration> materialIntegrations = new THashMap<>(); + public static final Collection<String> deferredMaterials = new THashSet<>(); + + // public static final Material aeonsteel = mat("aeonsteel", 0xd200d1); + // public static final Material queensgold = mat("queensgold", 0xdede00); + // public static final Material dogbearium = mat("dogbearium", 0x604933); public static Material black; public static Material red; @@ -70,70 +80,72 @@ public class TDMaterials { public static Material orange; public static Material white; - public static TDFluid fluidAeonsteel = new TDFluid("aeonsteel_fluid", 0xa470e0, 1300, 15, 3000, 6000); - public static TDFluid fluidQueensGold = new TDFluid("queensgold_fluid", 0xdcff00, 1300, 15, 3000, 6000); - public static TDFluid fluidDogbearium = new TDFluid("dogbearium_fluid", 0x6d3300, 1300, 15, 3000, 6000); - public static TDFluid fluidRedCandy = new TDFluid("redcandy_fluid", 0xff0000, 1300, 15, 3000, 6000); - public static TDFluid fluidGreenCandy = new TDFluid("greencandy_fluid", 0x00ff00, 1300, 15, 3000, 6000); - public static TDFluid fluidVile = new TDFluid("vile_fluid", 0x111111, 1300, 0, 6000, 600); - public static TDFluid fluidSinisterium = new TDFluid("sinisterium_fluid", 0x210000, 1300, 0, 3000, 600); - public static TDFluid fluidNihilite = new TDFluid("nihilite_fluid", 0x000021, 1300, 0, 3000, 600); - public static TDFluid fluidVibrant = new TDFluid("vibrant_fluid", 0x76ff00, 1300, 15, 6000, 6000); - public static TDFluid fluidOrichalcum = new TDFluid("orichalcum_fluid", 0xffc700, 1300, 15, 3000, 6000); - public static TDFluid fluidPandorium = new TDFluid("pandorium_fluid", 0x7f6a00, 1300, 15, 3000, 6000); - public static TDFluid fluidChorusJuice = new TDFluid("chorusjuice_fluid", 0xd982ff, 0, 0, 3000, 6000); - public static TDFluid fluidDragonsBreath = new TDFluid("dragonsbreath_fluid", 0x7f00b7, 0, 8, 3000, 6000); - public static TDFluid fluidRoseGold = new TDFluid("rosegold_fluid", 0xff9b84, 1300, 15, 3000, 6000); - public static TDFluid fluidPlatinum = new TDFluid("platinum_fluid", 0xe8e8e8, 1300, 15, 3000, 6000); - public static TDFluid fluidBrass = new TDFluid("brass_fluid", 0xdbb332, 1300, 15, 3000, 6000); - public static TDFluid fluidSilver = new TDFluid("silver_fluid", 0x9e9e9e, 1300, 15, 3000, 6000); - public static TDFluid fluidCheese = new TDFluid("cheese_fluid", 0xffe731, 300, 0, 12000, 9000); - - public static TDOreDictItem ingotAeonsteel; - public static TDOreDictItem ingotQueensGold; - public static TDOreDictItem ingotDogbearium; - public static TDOreDictItem ingotRedCandy; - public static TDOreDictItem ingotGreenCandy; - public static TDOreDictItem ingotSinisterium; - public static TDOreDictItem ingotNihilite; - public static TDOreDictItem ingotOrichalcum; - public static TDOreDictItem ingotPandorium; - public static TDOreDictItem ingotRoseGold; - public static TDOreDictItem ingotPlatinum; - public static TDOreDictItem ingotBrass; - public static TDOreDictItem ingotSilver; - public static TDOreDictItem ingotCheese; - - public static TDOreDictItem nuggetAeonsteel; - public static TDOreDictItem nuggetQueensGold; - public static TDOreDictItem nuggetDogbearium; - public static TDOreDictItem nuggetRedCandy; - public static TDOreDictItem nuggetGreenCandy; - public static TDOreDictItem nuggetSinisterium; - public static TDOreDictItem nuggetNihilite; - public static TDOreDictItem nuggetOrichalcum; - public static TDOreDictItem nuggetPandorium; - public static TDOreDictItem nuggetRoseGold; - public static TDOreDictItem nuggetPlatinum; - public static TDOreDictItem nuggetBrass; - public static TDOreDictItem nuggetSilver; - public static TDOreDictItem nuggetCheese; - - public static TDOreDictItem dustAeonsteel; - public static TDOreDictItem dustQueensGold; - public static TDOreDictItem dustDogbearium; - public static TDOreDictItem dustRedCandy; - public static TDOreDictItem dustGreenCandy; - public static TDOreDictItem dustSinisterium; - public static TDOreDictItem dustNihilite; - public static TDOreDictItem dustOrichalcum; - public static TDOreDictItem dustPandorium; - public static TDOreDictItem dustRoseGold; - public static TDOreDictItem dustPlatinum; - public static TDOreDictItem dustBrass; - public static TDOreDictItem dustSilver; - public static TDOreDictItem dustCheese; - + public static FluidMolten fluidAeonsteel = new FluidMolten("aeonsteel", 0xa470e0); + public static FluidMolten fluidQueensGold = new FluidMolten("queensgold", 0xdcff00); + public static FluidMolten fluidDogbearium = new FluidMolten("dogbearium", 0x6d3300); + public static FluidMolten fluidRedCandy = new FluidMolten("redcandy", 0xff0000); + public static FluidMolten fluidGreenCandy = new FluidMolten("greencandy", 0x00ff00); + public static FluidMolten fluidVile = new FluidMolten("vile", 0x111111); + public static FluidMolten fluidSinisterium = new FluidMolten("sinisterium", 0x210000); + //public static FluidMolten fluidNihilite = new FluidMolten("nihilite", 0x000021); + public static FluidMolten fluidVibrant = new FluidMolten("vibrant", 0x76ff00); + public static FluidMolten fluidOrichalcum = new FluidMolten("orichalcum", 0xffc700); + public static FluidMolten fluidPandorium = new FluidMolten("pandorium", 0x7f6a00); + public static FluidMolten fluidChorusJuice = new FluidMolten("chorusjuice", 0xd982ff); + public static FluidMolten fluidDragonsBreath = new FluidMolten("dragonsbreath", 0x7f00b7); + public static FluidMolten fluidRoseGold = new FluidMolten("rosegold", 0xff9b84); + public static FluidMolten fluidPlatinum = new FluidMolten("platinum", 0xe8e8e8); + public static FluidMolten fluidBrass = new FluidMolten("brass", 0xdbb332); + public static FluidMolten fluidSilver = new FluidMolten("silver", 0x9e9e9e); + public static FluidMolten fluidCheese = new FluidMolten("cheese", 0xffe731); + // public static FluidMolten fluidGold = new FluidMolten("gold", 0xffe330); + + public static TDOreDictItem ingotAeonsteel = new TDOreDictItem("ingot", "aeonsteel"); + public static TDOreDictItem ingotQueensGold = new TDOreDictItem("ingot", "queensgold"); + public static TDOreDictItem ingotDogbearium = new TDOreDictItem("ingot", "dogbearium"); + public static TDOreDictItem ingotRedCandy = new TDOreDictItem("ingot", "redcandy"); + public static TDOreDictItem ingotGreenCandy = new TDOreDictItem("ingot", "greencandy"); + public static TDOreDictItem ingotSinisterium = new TDOreDictItem("ingot", "sinisterium"); + public static TDOreDictItem ingotNihilite = new TDOreDictItem("ingot", "nihilite"); + public static TDOreDictItem ingotOrichalcum = new TDOreDictItem("ingot", "orichalcum"); + public static TDOreDictItem ingotPandorium = new TDOreDictItem("ingot", "pandorium"); + public static TDOreDictItem ingotRoseGold = new TDOreDictItem("ingot", "rosegold"); + public static TDOreDictItem ingotPlatinum = new TDOreDictItem("ingot", "platinum"); + public static TDOreDictItem ingotBrass = new TDOreDictItem("ingot", "brass"); + public static TDOreDictItem ingotSilver = new TDOreDictItem("ingot", "silver"); + public static TDOreDictItem ingotCheese = new TDOreDictItem("ingot", "cheese"); + + public static TDOreDictItem nuggetAeonsteel = new TDOreDictItem("nugget", "aeonsteel"); + public static TDOreDictItem nuggetQueensGold = new TDOreDictItem("nugget", "queensgold"); + public static TDOreDictItem nuggetDogbearium = new TDOreDictItem("nugget", "dogbearium"); + public static TDOreDictItem nuggetRedCandy = new TDOreDictItem("nugget", "redcandy"); + public static TDOreDictItem nuggetGreenCandy = new TDOreDictItem("nugget", "greencandy"); + public static TDOreDictItem nuggetSinisterium = new TDOreDictItem("nugget", "sinisterium"); + public static TDOreDictItem nuggetNihilite = new TDOreDictItem("nugget", "nihilite"); + public static TDOreDictItem nuggetOrichalcum = new TDOreDictItem("nugget", "orichalcum"); + public static TDOreDictItem nuggetPandorium = new TDOreDictItem("nugget", "pandorium"); + public static TDOreDictItem nuggetRoseGold = new TDOreDictItem("nugget", "rosegold"); + public static TDOreDictItem nuggetPlatinum = new TDOreDictItem("nugget", "platinum"); + public static TDOreDictItem nuggetBrass = new TDOreDictItem("nugget", "brass"); + public static TDOreDictItem nuggetSilver = new TDOreDictItem("nugget", "silver"); + public static TDOreDictItem nuggetCheese = new TDOreDictItem("nugget", "cheese"); + + public static TDOreDictItem dustAeonsteel = new TDOreDictItem("dust", "aeonsteel"); + public static TDOreDictItem dustQueensGold = new TDOreDictItem("dust", "queensgold"); + public static TDOreDictItem dustDogbearium = new TDOreDictItem("dust", "dogbearium"); + public static TDOreDictItem dustRedCandy = new TDOreDictItem("dust", "redcandy"); + public static TDOreDictItem dustGreenCandy = new TDOreDictItem("dust", "greencandy"); + public static TDOreDictItem dustSinisterium = new TDOreDictItem("dust", "sinisterium"); + public static TDOreDictItem dustNihilite = new TDOreDictItem("dust", "nihilite"); + public static TDOreDictItem dustOrichalcum = new TDOreDictItem("dust", "orichalcum"); + public static TDOreDictItem dustPandorium = new TDOreDictItem("dust", "pandorium"); + public static TDOreDictItem dustRoseGold = new TDOreDictItem("dust", "rosegold"); + public static TDOreDictItem dustPlatinum = new TDOreDictItem("dust", "platinum"); + public static TDOreDictItem dustBrass = new TDOreDictItem("dust", "brass"); + public static TDOreDictItem dustSilver = new TDOreDictItem("dust", "silver"); + public static TDOreDictItem dustCheese = new TDOreDictItem("dust", "cheese"); + public static TDOreDictItem dustGold = new TDOreDictItem("dust", "gold"); + public static Material matAeonsteel = new Material("aeonsteel", 0xa470e0); public static Material matQueensGold = new Material("queensgold", 0xdcff00); public static Material matDogbearium = new Material("dogbearium", 0x6d3300); @@ -149,54 +161,22 @@ public class TDMaterials { public static Material matBrass = new Material("brass", 0xdbb332); public static Material matSilver = new Material("silver", 0x9e9e9e); public static Material matCheese = new Material("cheese", 0xffe731); + public static Material matGold = new Material("gold", 0xffe330); public static final AbstractTrait axelover = new TraitAxeLover(); public static final AbstractTrait dulling = new TraitDulling(); public static final AbstractTrait firestarter = new TraitFirestarter(); + public static final AbstractTrait barbed = new TraitBarbed(); + public static final AbstractTrait dogtoy = new TraitDogToy(); private static Material mat(String name, int color) { Material mat = new Material(name, color); - materials.add(mat); + // materials.add(mat); return mat; } @Subscribe public void preInit(FMLPreInitializationEvent event) { - - addMat("aeonsteel", fluidAeonsteel, nuggetAeonsteel, ingotAeonsteel, dustAeonsteel); - addMat("queensgold", fluidQueensGold, nuggetQueensGold, ingotQueensGold, dustQueensGold); - addMat("dogbearium", fluidDogbearium, nuggetDogbearium, ingotDogbearium, dustDogbearium); - addMat("redcandy", fluidRedCandy, nuggetRedCandy, ingotRedCandy, dustRedCandy); - addMat("greencandy", fluidGreenCandy, nuggetGreenCandy, ingotGreenCandy, dustGreenCandy); - - addMat("sinisterium", fluidSinisterium, nuggetSinisterium, ingotSinisterium, dustSinisterium); - addMat("nihilite", fluidNihilite, nuggetNihilite, ingotNihilite, dustNihilite); - - addMat("orichalcum", fluidOrichalcum, nuggetOrichalcum, ingotOrichalcum, dustOrichalcum); - addMat("pandorium", fluidPandorium, nuggetPandorium, ingotPandorium, dustPandorium); - - addMat("rosegold", fluidRoseGold, nuggetRoseGold, ingotRoseGold, dustRoseGold); - addMat("platinum", fluidPlatinum, nuggetPlatinum, ingotPlatinum, dustPlatinum); - addMat("brass", fluidBrass, nuggetBrass, ingotBrass, dustBrass); - addMat("silver", fluidSilver, nuggetSilver, ingotSilver, dustSilver); - addMat("cheese", fluidCheese, nuggetCheese, ingotCheese, dustCheese); - - addMat("chorusjuice", fluidChorusJuice); - addMat("dragonsbreath", fluidDragonsBreath); - - FluidRegistry.registerFluid(fluidVibrant); - FluidRegistry.addBucketForFluid(fluidVibrant); - addMat("vibrantfluid", fluidVibrant, new VibrantFluid(fluidVibrant)); - - FluidRegistry.registerFluid(fluidVile); - FluidRegistry.addBucketForFluid(fluidVile); - addMat("vilefluid", fluidVile, new VileFluid(fluidVile)); - - - } - - @Subscribe - public void init(FMLInitializationEvent event) { Material.UNKNOWN.addStats(new ShieldMaterialStats(35, 33)); // TinkerRegistry.addMaterialStats(Material.UNKNOWN, @@ -216,7 +196,11 @@ public class TDMaterials { TinkerRegistry.addMaterialTrait(TinkerMaterials.flint, firestarter, SHIELD); TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new ShieldMaterialStats(210, 33)); + TinkerRegistry.addMaterialTrait(TinkerMaterials.cactus, barbed, SHIELD); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new ShieldMaterialStats(200, 33)); + TinkerRegistry.addMaterialTrait(TinkerMaterials.bone, dogtoy, SHIELD); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new ShieldMaterialStats(139, 33)); TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new ShieldMaterialStats(430, 33)); TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new ShieldMaterialStats(420, 33)); @@ -252,11 +236,54 @@ public class TDMaterials { TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new ShieldMaterialStats(50, 33)); TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new ShieldMaterialStats(540, 33)); + + //TinkerRegistry.addMaterialStats(matAeonsteel, new ShieldMaterialStats(540, 33)); registerClothMaterials(); + + addMat("aeonsteel", fluidAeonsteel, nuggetAeonsteel, ingotAeonsteel, dustAeonsteel); + addMat("queensgold", fluidQueensGold, nuggetQueensGold, ingotQueensGold, dustQueensGold); + addMat("dogbearium", fluidDogbearium, nuggetDogbearium, ingotDogbearium, dustDogbearium); + addMat("redcandy", fluidRedCandy, nuggetRedCandy, ingotRedCandy, dustRedCandy); + addMat("greencandy", fluidGreenCandy, nuggetGreenCandy, ingotGreenCandy, dustGreenCandy); + + addMat("sinisterium", fluidSinisterium, nuggetSinisterium, ingotSinisterium, dustSinisterium); + //addMat("nihilite", fluidNihilite, nuggetNihilite, ingotNihilite, dustNihilite); + + addMat("orichalcum", fluidOrichalcum, nuggetOrichalcum, ingotOrichalcum, dustOrichalcum); + addMat("pandorium", fluidPandorium, nuggetPandorium, ingotPandorium, dustPandorium); + + addMat("rosegold", fluidRoseGold, nuggetRoseGold, ingotRoseGold, dustRoseGold); + addMat("platinum", fluidPlatinum, nuggetPlatinum, ingotPlatinum, dustPlatinum); + addMat("brass", fluidBrass, nuggetBrass, ingotBrass, dustBrass); + addMat("silver", fluidSilver, nuggetSilver, ingotSilver, dustSilver); + + addMat("cheese", fluidCheese, nuggetCheese, ingotCheese, dustCheese); + + addMat("chorusjuice", fluidChorusJuice); + addMat("dragonsbreath", fluidDragonsBreath); + + FluidRegistry.registerFluid(fluidVibrant); + FluidRegistry.addBucketForFluid(fluidVibrant); + addMat("vibrantfluid", fluidVibrant, new VibrantFluid(fluidVibrant)); + + FluidRegistry.registerFluid(fluidVile); + FluidRegistry.addBucketForFluid(fluidVile); + addMat("vilefluid", fluidVile, new VileFluid(fluidVile)); + registerMaterials(); -// TinkerRegistry.addMaterialStats(aeonsteel, new HeadMaterialStats(1000, 4.0f, 3.00f, COBALT), -// new HandleMaterialStats(1.10f, 200), new ExtraMaterialStats(500)); + + //integrate(materials, materialIntegrations, deferredMaterials); + + } + + @Subscribe + public void init(FMLInitializationEvent event) { + + // registerMaterials(); + // TinkerRegistry.addMaterialStats(aeonsteel, new + // HeadMaterialStats(1000, 4.0f, 3.00f, COBALT), + // new HandleMaterialStats(1.10f, 200), new ExtraMaterialStats(500)); // iron.addItemIngot("ingotIron"); // iron.setRepresentativeItem(Items.field_151042_j); // iron.addTrait(magnetic2, HEAD); @@ -277,14 +304,14 @@ public class TDMaterials { } } - void addMat(String name, TDFluid fluid) { + void addMat(String name, FluidMolten fluid) { FluidRegistry.registerFluid(fluid); FluidRegistry.addBucketForFluid(fluid); createFluid(name, fluid); } - void addMat(String name, TDFluid fluid, TDOreDictItem nugget, TDOreDictItem ingot, TDOreDictItem dust) { + void addMat(String name, FluidMolten fluid, Item nugget, Item ingot, Item dust) { FluidRegistry.registerFluid(fluid); FluidRegistry.addBucketForFluid(fluid); @@ -292,19 +319,18 @@ public class TDMaterials { createItems(name, nugget, ingot, dust); } - void addMat(String name, TDFluid fluid, Block fluidBlock) { + void addMat(String name, FluidMolten fluid, Block fluidBlock) { createFluid(name, fluid, fluidBlock); } - void addMat(String name, TDFluid fluid, Block fluidBlock, TDOreDictItem nugget, TDOreDictItem ingot, - TDOreDictItem dust) { + void addMat(String name, FluidMolten fluid, Block fluidBlock, Item nugget, Item ingot, Item dust) { createFluid(name, fluid, fluidBlock); createItems(name, nugget, ingot, dust); } - void createFluid(String name, TDFluid fluid) { + void createFluid(String name, FluidMolten fluid) { BlockMolten block = new BlockMolten(fluid); // Sets names block.setUnlocalizedName("molten_" + fluid.getName()); @@ -317,7 +343,7 @@ public class TDMaterials { TinkersDefense.proxy.registerFluidModels(fluid); } - void createFluid(String name, TDFluid fluid, Block fluidBlock) { + void createFluid(String name, FluidMolten fluid, Block fluidBlock) { fluidBlock.setUnlocalizedName("molten_" + fluid.getName()); fluidBlock.setRegistryName(Reference.MOD_ID, "molten_" + fluid.getName()); // Registers the fluid in its block form and its corresponding item @@ -328,35 +354,44 @@ public class TDMaterials { TinkersDefense.proxy.registerFluidModels(fluid); } - void createItems(String name, TDOreDictItem nugget, TDOreDictItem ingot, TDOreDictItem dust) { - nugget = new TDOreDictItem("nugget", name); - ingot = new TDOreDictItem("ingot", name); - dust = new TDOreDictItem("dust", name); + void createItems(String name, Item nugget, Item ingot, Item dust) { + nugget.setCreativeTab(CoreBase.tab); + ingot.setCreativeTab(CoreBase.tab); + dust.setCreativeTab(CoreBase.tab); GameRegistry.register(nugget); GameRegistry.register(ingot); GameRegistry.register(dust); - OreDictionary.registerOre(nugget.getOreDictPrefix() + StringUtils.capitalize(name), nugget); - OreDictionary.registerOre(ingot.getOreDictPrefix() + StringUtils.capitalize(name), ingot); - OreDictionary.registerOre(dust.getOreDictPrefix() + StringUtils.capitalize(name), dust); + if (nugget instanceof TDOreDictItem) + OreDictionary.registerOre(((TDOreDictItem) nugget).getOreDictPrefix() + StringUtils.capitalize(name), + nugget); + if (ingot instanceof TDOreDictItem) + OreDictionary.registerOre(((TDOreDictItem) ingot).getOreDictPrefix() + StringUtils.capitalize(name), ingot); + if (dust instanceof TDOreDictItem) + OreDictionary.registerOre(((TDOreDictItem) dust).getOreDictPrefix() + StringUtils.capitalize(name), dust); } - void createMaterial(String name, Material mat, Fluid fluid, Item item, HeadMaterialStats headstat, HandleMaterialStats handlestat, - ExtraMaterialStats extrastat, BowMaterialStats bowstat, boolean craftable, + void createMaterial(String name, Material mat, Fluid fluid, Item item, HeadMaterialStats headstat, + HandleMaterialStats handlestat, ExtraMaterialStats extrastat, BowMaterialStats bowstat, boolean craftable, boolean castable) { - TinkerRegistry.addMaterial(mat); - mat.setFluid(fluid).setCraftable(craftable).setCastable(castable); + + mat.setFluid(fluid); + mat.setCraftable(craftable).setCastable(castable); mat.addItem(item, 1, Material.VALUE_Ingot); mat.setRepresentativeItem(item); - + TinkerRegistry.addMaterialStats(mat, headstat); TinkerRegistry.addMaterialStats(mat, handlestat); TinkerRegistry.addMaterialStats(mat, extrastat); TinkerRegistry.addMaterialStats(mat, bowstat); - - MaterialIntegration integration = new MaterialIntegration(mat, fluid, name); - integration.integrate(); + TinkerRegistry.addMaterialStats(mat, new ShieldMaterialStats(0, 0)); + + materials.put(name, mat); + + // MaterialIntegration integration = new MaterialIntegration(mat, fluid, + // name); + // integration.integrate(); } private void registerClothMaterials() { @@ -446,30 +481,73 @@ public class TDMaterials { TinkerRegistry.addMaterialStats(orange, new MaterialCloth(100)); TinkerRegistry.addMaterialStats(white, new MaterialCloth(100)); } - - private void registerMaterials() - { - createMaterial("aeonsteel", matAeonsteel, fluidAeonsteel, ingotAeonsteel, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("queensgold", matQueensGold, fluidQueensGold, ingotQueensGold, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("dogbearium", matDogbearium, fluidDogbearium, ingotDogbearium, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("redcandy", matRedCandy, fluidRedCandy, ingotRedCandy, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("greencandy", matGreenCandy, fluidGreenCandy, ingotGreenCandy, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - - createMaterial("sinisterium", matSinisterium, fluidSinisterium, ingotSinisterium, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("nihilite", matNihilite, fluidNihilite, ingotNihilite, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("orichalcum", matOrichalcum, fluidOrichalcum, ingotOrichalcum, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("pandorium", matPandorium, fluidPandorium, ingotPandorium, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - - createMaterial("rosegold", matRoseGold, fluidRoseGold, ingotRoseGold, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("platinum", matPlatinum, fluidPlatinum, ingotPlatinum, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("brass", matBrass, fluidBrass, ingotBrass, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - createMaterial("cheese", matCheese, fluidCheese, ingotCheese, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); - -// public static TDOreDictItem ingotRoseGold; -// public static TDOreDictItem ingotPlatinum; -// public static TDOreDictItem ingotBrass; -// public static TDOreDictItem ingotSilver; -// public static TDOreDictItem ingotCheese; + private void registerMaterials() { + createMaterial("aeonsteel", matAeonsteel, fluidAeonsteel, ingotAeonsteel, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("queensgold", matQueensGold, fluidQueensGold, ingotQueensGold, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("dogbearium", matDogbearium, fluidDogbearium, ingotDogbearium, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("redcandy", matRedCandy, fluidRedCandy, ingotRedCandy, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("greencandy", matGreenCandy, fluidGreenCandy, ingotGreenCandy, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + + createMaterial("sinisterium", matSinisterium, fluidSinisterium, ingotSinisterium, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); +// createMaterial("nihilite", matNihilite, fluidNihilite, ingotNihilite, +// new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), +// new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("orichalcum", matOrichalcum, fluidOrichalcum, ingotOrichalcum, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("pandorium", matPandorium, fluidPandorium, ingotPandorium, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + + createMaterial("rosegold", matRoseGold, fluidRoseGold, ingotRoseGold, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("platinum", matPlatinum, fluidPlatinum, ingotPlatinum, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("brass", matBrass, fluidBrass, ingotBrass, new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), + new HandleMaterialStats(0, 0), new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("cheese", matCheese, fluidCheese, ingotCheese, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + createMaterial("gold", matGold, TinkerFluids.gold, Items.GOLD_INGOT, + new HeadMaterialStats(0, 0, 0, HarvestLevels.COBALT), new HandleMaterialStats(0, 0), + new ExtraMaterialStats(0), new BowMaterialStats(0, 0, 0), false, true); + } + + //PlusTIC to the rescue + public static void integrate(Map<String, Material> materials, + Map<String, MaterialIntegration> materialIntegrations, Collection<String> excludedMaterials) { + materials.forEach((k, v) -> { + if (!materialIntegrations.containsKey(k) && !excludedMaterials.contains(k)) { + MaterialIntegration mi; + if (v.getFluid() != null && v.getFluid() != TinkerFluids.emerald) { + mi = new MaterialIntegration(v, v.getFluid(), StringUtils.capitalize(k)).toolforge(); + } else { + mi = new MaterialIntegration(v); + } + mi.integrate(); + mi.integrateRecipes(); + materialIntegrations.put(k, mi); + } + }); + + // Utils.displace(TinkerMaterials.wood.getIdentifier()); // so that + // natura + // woods are + // prioritized } } diff --git a/src/main/java/lance5057/tDefense/core/materials/traits/TraitBarbed.java b/src/main/java/lance5057/tDefense/core/materials/traits/TraitBarbed.java new file mode 100644 index 0000000..1da3ab0 --- /dev/null +++ b/src/main/java/lance5057/tDefense/core/materials/traits/TraitBarbed.java @@ -0,0 +1,23 @@ +package lance5057.tDefense.core.materials.traits; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.DamageSource; +import net.minecraft.util.text.TextFormatting; +import net.minecraftforge.event.entity.living.LivingHurtEvent; +import slimeknights.tconstruct.library.traits.AbstractTrait; + +public class TraitBarbed extends AbstractTrait { + + public TraitBarbed() { + super("barbed", TextFormatting.GREEN); + } + + @Override + public void onBlock(ItemStack tool, EntityPlayer player, LivingHurtEvent event) { + if (event.getSource() != DamageSource.generic) { + player.attackEntityFrom(DamageSource.generic, 1); + event.getSource().getSourceOfDamage().attackEntityFrom(DamageSource.generic, 1); + } + } +} diff --git a/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java b/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java new file mode 100644 index 0000000..da56768 --- /dev/null +++ b/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java @@ -0,0 +1,77 @@ +package lance5057.tDefense.core.materials.traits; + +import net.minecraft.block.BlockFence; +import net.minecraft.block.state.IBlockState; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLiving; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.IEntityLivingData; +import net.minecraft.entity.passive.EntityWolf; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumDyeColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.text.TextFormatting; +import net.minecraftforge.event.entity.living.LivingHurtEvent; +import slimeknights.tconstruct.library.traits.AbstractTrait; + +public class TraitDogToy extends AbstractTrait { + + public TraitDogToy() { + super("dogtoy", TextFormatting.WHITE); + // TODO Auto-generated constructor stub + } + + @Override + public void onBlock(ItemStack tool, EntityPlayer player, LivingHurtEvent event) { + + if (event.getSource().getSourceOfDamage() instanceof EntityLiving || event.getSource().getEntity() instanceof EntityLiving ) { + BlockPos pos = new BlockPos(player.posX + player.world.rand.nextInt(10) - 5, player.posY, + player.posZ + player.world.rand.nextInt(10) - 5); + IBlockState iblockstate = player.world.getBlockState(pos); + + EnumFacing facing = player.getHorizontalFacing(); + pos = pos.offset(facing); + double d0 = 0.0D; + + if (facing == EnumFacing.UP && iblockstate.getBlock() instanceof BlockFence) // Forge: + // Fix + // Vanilla + // bug + // comparing + // state + // instead + // of + // block + { + d0 = 0.5D; + } + + EntityWolf entWolf = new EntityWolf(player.world); + entWolf.setLocationAndAngles(pos.getX() + 0.5D, (double) pos.getY() + d0, (double) pos.getZ() + 0.5D, + MathHelper.wrapDegrees(player.world.rand.nextFloat() * 360.0F), 0.0F); + entWolf.rotationYawHead = entWolf.rotationYaw; + entWolf.renderYawOffset = entWolf.rotationYaw; + entWolf.onInitialSpawn(player.world.getDifficultyForLocation(new BlockPos(entWolf)), + (IEntityLivingData) null); + + if(event.getSource().getSourceOfDamage() instanceof EntityLiving) + entWolf.setAttackTarget((EntityLivingBase) event.getSource().getSourceOfDamage()); + else + entWolf.setAttackTarget((EntityLivingBase) event.getSource().getEntity()); + + entWolf.setAngry(true); + entWolf.setCollarColor(EnumDyeColor.BLACK); + entWolf.setTamed(true); + player.world.spawnEntity(entWolf); + entWolf.playLivingSound(); + + entWolf.setCustomNameTag("Guard Dog"); + entWolf.setDropItemsWhenDead(false); + + // applyItemEntityDataToEntity(player.world, player, null, entity); + } + } +} diff --git a/src/main/java/lance5057/tDefense/core/parts/TDParts.java b/src/main/java/lance5057/tDefense/core/parts/TDParts.java index ade6805..bccabff 100644 --- a/src/main/java/lance5057/tDefense/core/parts/TDParts.java +++ b/src/main/java/lance5057/tDefense/core/parts/TDParts.java @@ -43,6 +43,12 @@ public class TDParts extends ModuleBase @Override public void preInit(FMLPreInitializationEvent e) { armorPlate = regToolPart(Material.VALUE_Ingot * 4, "armor_plate"); +// armorPlate = new ToolPart(Material.VALUE_Ingot * 4); +// armorPlate.setUnlocalizedName("armor_plate").setRegistryName("tinkersdefense:armor_plate"); +// GameRegistry.register(armorPlate); +// +// TinkerRegistry.registerStencilTableCrafting(Pattern.setTagForPart(new ItemStack(TinkerTools.pattern), armorPlate)); +// chainmail = regToolPart(Material.VALUE_Ingot * 3, "chainmail"); cloth = regToolPart(Material.VALUE_Ingot * 3, "cloth"); rivets = regToolPart(Material.VALUE_Ingot * 1, "rivets"); @@ -79,6 +85,7 @@ public class TDParts extends ModuleBase part.setUnlocalizedName(name).setRegistryName("tinkersdefense:"+name); GameRegistry.register(part); TinkerRegistry.registerStencilTableCrafting(Pattern.setTagForPart(new ItemStack(TinkerTools.pattern), part)); + //TinkerRegistry.registerTableCasting(output, cast, fluid, amount); return part; } diff --git a/src/main/java/lance5057/tDefense/baubles/renderers/BaubleRenderer.java b/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java index 8c6aec3..7f69ff3 100644 --- a/src/main/java/lance5057/tDefense/baubles/renderers/BaubleRenderer.java +++ b/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java @@ -1,7 +1,7 @@ -package lance5057.tDefense.baubles.renderers; +package lance5057.tDefense.core.renderers; -import lance5057.tDefense.core.tools.Shield; -import lance5057.tDefense.core.tools.Zweihander; +import lance5057.tDefense.core.tools.bases.Shield; +import lance5057.tDefense.core.tools.basic.Zweihander; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.OpenGlHelper; diff --git a/src/main/java/lance5057/tDefense/baubles/renderers/SheatheModel.java b/src/main/java/lance5057/tDefense/core/renderers/SheatheModel.java index 88177ef..b2df647 100644 --- a/src/main/java/lance5057/tDefense/baubles/renderers/SheatheModel.java +++ b/src/main/java/lance5057/tDefense/core/renderers/SheatheModel.java @@ -1,7 +1,7 @@ -package lance5057.tDefense.baubles.renderers; +package lance5057.tDefense.core.renderers; -import lance5057.tDefense.core.tools.Shield; -import lance5057.tDefense.core.tools.Zweihander; +import lance5057.tDefense.core.tools.bases.Shield; +import lance5057.tDefense.core.tools.basic.Zweihander; import net.minecraft.client.Minecraft; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; diff --git a/src/main/java/lance5057/tDefense/baubles/tileentities/TileEntity_JewelersBench.java b/src/main/java/lance5057/tDefense/core/tileentities/TileEntity_JewelersBench.java index 5d6e187..1441513 100644 --- a/src/main/java/lance5057/tDefense/baubles/tileentities/TileEntity_JewelersBench.java +++ b/src/main/java/lance5057/tDefense/core/tileentities/TileEntity_JewelersBench.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.baubles.tileentities; +package lance5057.tDefense.core.tileentities; import net.minecraft.tileentity.TileEntity; diff --git a/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java b/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java index 69f5c04..8747d1a 100644 --- a/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java +++ b/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java @@ -1,5 +1,6 @@ package lance5057.tDefense.core.tools; +import lance5057.tDefense.core.tools.bases.Shield; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.DamageSource; diff --git a/src/main/java/lance5057/tDefense/core/tools/TDTools.java b/src/main/java/lance5057/tDefense/core/tools/TDTools.java index ae8a47f..c846f97 100644 --- a/src/main/java/lance5057/tDefense/core/tools/TDTools.java +++ b/src/main/java/lance5057/tDefense/core/tools/TDTools.java @@ -6,6 +6,14 @@ import lance5057.tDefense.armor.items.cloth.TinkersHood; import lance5057.tDefense.armor.items.cloth.TinkersRobe; import lance5057.tDefense.armor.items.cloth.TinkersShawl; import lance5057.tDefense.armor.items.cloth.TinkersShoes; +import lance5057.tDefense.core.tools.basic.FishingRod; +import lance5057.tDefense.core.tools.basic.HeaterShield; +import lance5057.tDefense.core.tools.basic.RoundShield; +import lance5057.tDefense.core.tools.basic.Shears; +import lance5057.tDefense.core.tools.basic.Zweihander; +import lance5057.tDefense.core.tools.baubles.Amulet; +import lance5057.tDefense.core.tools.baubles.Ring; +import lance5057.tDefense.core.tools.baubles.Sheathe; import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.event.FMLInitializationEvent; @@ -27,6 +35,7 @@ public class TDTools { public static ToolCore shears; public static ToolCore fishingRod; + //armor public static ToolCore hood; public static ToolCore shawl; public static ToolCore robe; @@ -41,6 +50,11 @@ public class TDTools { public static ToolCore breastplate; public static ToolCore grieves; public static ToolCore sabatons; + + //baubles + public static ToolCore sheathe; + public static ToolCore ring; + public static ToolCore amulet; // Tool Parts @@ -68,6 +82,10 @@ public class TDTools { shawl = new TinkersShawl(); robe = new TinkersRobe(); shoes = new TinkersShoes(); + + sheathe = new Sheathe(); + ring = new Ring(); + amulet = new Amulet(); MinecraftForge.EVENT_BUS.register(events); @@ -93,6 +111,10 @@ public class TDTools { regTool(shawl, "shawl"); regTool(robe, "robe"); regTool(shoes, "shoes"); + + regTool(sheathe, "sheathe"); + regTool(ring, "ring"); + regTool(amulet, "amulet"); // TinkerRegistry.registerToolStationCrafting(roundshield); // TinkerRegistry.registerToolForgeCrafting(heatershield); @@ -129,6 +151,10 @@ public class TDTools { TinkerRegistry.registerToolCrafting(shawl); TinkerRegistry.registerToolCrafting(robe); TinkerRegistry.registerToolCrafting(shoes); + + TinkerRegistry.registerToolCrafting(sheathe); + TinkerRegistry.registerToolCrafting(ring); + TinkerRegistry.registerToolCrafting(amulet); } private void regRecipies() { diff --git a/src/main/java/lance5057/tDefense/baubles/tools/BaubleTool.java b/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java index b393100..d421dea 100644 --- a/src/main/java/lance5057/tDefense/baubles/tools/BaubleTool.java +++ b/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.baubles.tools; +package lance5057.tDefense.core.tools.bases; import java.util.List; diff --git a/src/main/java/lance5057/tDefense/core/tools/Shield.java b/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java index 2bc8987..53722b1 100644 --- a/src/main/java/lance5057/tDefense/core/tools/Shield.java +++ b/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.bases; import java.util.List; diff --git a/src/main/java/lance5057/tDefense/core/tools/FishingRod.java b/src/main/java/lance5057/tDefense/core/tools/basic/FishingRod.java index 3159b3c..70212c8 100644 --- a/src/main/java/lance5057/tDefense/core/tools/FishingRod.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/FishingRod.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.basic; import java.util.List; diff --git a/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java b/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java index 827aaf0..8893616 100644 --- a/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java @@ -1,6 +1,7 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.basic; import lance5057.tDefense.core.parts.TDParts; +import lance5057.tDefense.core.tools.bases.Shield; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.tools.TinkerTools; diff --git a/src/main/java/lance5057/tDefense/core/tools/RoundShield.java b/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java index 94720b1..544eb02 100644 --- a/src/main/java/lance5057/tDefense/core/tools/RoundShield.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java @@ -1,7 +1,8 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.basic; import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.core.parts.TDParts; +import lance5057.tDefense.core.tools.bases.Shield; import net.minecraft.entity.Entity; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; diff --git a/src/main/java/lance5057/tDefense/core/tools/Shears.java b/src/main/java/lance5057/tDefense/core/tools/basic/Shears.java index cda9f1b..16ef196 100644 --- a/src/main/java/lance5057/tDefense/core/tools/Shears.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/Shears.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.basic; import java.util.List; diff --git a/src/main/java/lance5057/tDefense/core/tools/Zweihander.java b/src/main/java/lance5057/tDefense/core/tools/basic/Zweihander.java index 76b3050..19934db 100644 --- a/src/main/java/lance5057/tDefense/core/tools/Zweihander.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/Zweihander.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.core.tools; +package lance5057.tDefense.core.tools.basic; import java.util.List; diff --git a/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java b/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java new file mode 100644 index 0000000..77c90c4 --- /dev/null +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java @@ -0,0 +1,31 @@ +package lance5057.tDefense.core.tools.baubles; + +import baubles.api.BaubleType; +import lance5057.tDefense.core.parts.TDParts; +import lance5057.tDefense.core.tools.bases.BaubleTool; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import slimeknights.tconstruct.library.tinkering.PartMaterialType; +import slimeknights.tconstruct.tools.TinkerTools; + +public class Amulet extends BaubleTool +{ + public Amulet() + { + super(PartMaterialType.head(TDParts.setting), PartMaterialType.handle(TDParts.chainmail), + PartMaterialType.extra(TDParts.clasp)); + } + + @Override + public BaubleType getBaubleType(ItemStack itemstack) { + // TODO Auto-generated method stub + return BaubleType.RING; + } + + @Override + public void onPlayerBaubleRender(ItemStack stack, EntityPlayer player, RenderType type, float partialTicks) { + // TODO Auto-generated method stub + + } + +} diff --git a/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java b/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java new file mode 100644 index 0000000..08ffa69 --- /dev/null +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java @@ -0,0 +1,31 @@ +package lance5057.tDefense.core.tools.baubles; + +import baubles.api.BaubleType; +import lance5057.tDefense.core.parts.TDParts; +import lance5057.tDefense.core.tools.bases.BaubleTool; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import slimeknights.tconstruct.library.tinkering.PartMaterialType; +import slimeknights.tconstruct.tools.TinkerTools; + +public class Ring extends BaubleTool +{ + public Ring() + { + super(PartMaterialType.head(TDParts.ringShank), PartMaterialType.handle(TDParts.filigree), + PartMaterialType.extra(TDParts.setting)); + } + + @Override + public BaubleType getBaubleType(ItemStack itemstack) { + // TODO Auto-generated method stub + return BaubleType.RING; + } + + @Override + public void onPlayerBaubleRender(ItemStack stack, EntityPlayer player, RenderType type, float partialTicks) { + // TODO Auto-generated method stub + + } + +} diff --git a/src/main/java/lance5057/tDefense/baubles/tools/Sheathe.java b/src/main/java/lance5057/tDefense/core/tools/baubles/Sheathe.java index f9c62cc..f6f2c3b 100644 --- a/src/main/java/lance5057/tDefense/baubles/tools/Sheathe.java +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/Sheathe.java @@ -1,9 +1,8 @@ -package lance5057.tDefense.baubles.tools; +package lance5057.tDefense.core.tools.baubles; import baubles.api.BaubleType; import lance5057.tDefense.Reference; -import lance5057.tDefense.TinkersDefense; -import lance5057.tDefense.baubles.BaublesBase; +import lance5057.tDefense.core.tools.bases.BaubleTool; import lance5057.tDefense.proxy.ClientProxy; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GlStateManager; @@ -18,7 +17,7 @@ public class Sheathe extends BaubleTool { public Sheathe(PartMaterialType... requiredComponents) { super(PartMaterialType.head(TinkerTools.largePlate), PartMaterialType.handle(TinkerTools.toolRod), - PartMaterialType.extra(TinkerTools.bowString)); + PartMaterialType.bowstring(TinkerTools.bowString)); } @@ -29,7 +28,7 @@ public class Sheathe extends BaubleTool { } @Override - public void onPlayerBaubleRender(ItemStack stack, EntityPlayer player, RenderType type, float partialTicks) { + public void onPlayerBaubleRender(ItemStack stack, EntityPlayer player, RenderType type, float partialTicks) { // TODO Auto-generated method stub if (type == RenderType.BODY) { @@ -41,7 +40,7 @@ public class Sheathe extends BaubleTool { Minecraft.getMinecraft().renderEngine.bindTexture(texture); - ClientProxy.baubles.sheathe.render(1f, player.inventory.getStackInSlot(0), player.inventory.getStackInSlot(1), player.getHeldItemMainhand(), player.getHeldItemOffhand()); + ClientProxy.sheathe.render(1f, player.inventory.getStackInSlot(0), player.inventory.getStackInSlot(1), player.getHeldItemMainhand(), player.getHeldItemOffhand()); } } diff --git a/src/main/java/lance5057/tDefense/baubles/tools/TinkersGauntlets.java b/src/main/java/lance5057/tDefense/core/tools/baubles/TinkersGauntlets.java index 688aaa7..8e2db9b 100644 --- a/src/main/java/lance5057/tDefense/baubles/tools/TinkersGauntlets.java +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/TinkersGauntlets.java @@ -1,4 +1,4 @@ -package lance5057.tDefense.baubles.tools; +package lance5057.tDefense.core.tools.baubles; //package lance5057.tDefense.armor.items; // //import lance5057.tDefense.TinkersDefense; diff --git a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java index 9443435..af0a175 100644 --- a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java +++ b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java @@ -1,14 +1,15 @@ package lance5057.tDefense.proxy; +import java.util.Map; + import javax.annotation.Nonnull; import lance5057.tDefense.Reference; import lance5057.tDefense.TD_Commands; -import lance5057.tDefense.baubles.BaublesClientProxy; -import lance5057.tDefense.core.CoreBlocks; import lance5057.tDefense.core.CoreClientProxy; -import lance5057.tDefense.core.CoreItems; -import lance5057.tDefense.core.blocks.TDMetalBlock; +import lance5057.tDefense.core.parts.TDParts; +import lance5057.tDefense.core.renderers.BaubleRenderer; +import lance5057.tDefense.core.renderers.SheatheModel; import lance5057.tDefense.core.tools.TDTools; import lance5057.tDefense.holiday.HolidayClientProxy; import net.minecraft.block.Block; @@ -17,6 +18,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemMeshDefinition; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.client.renderer.block.statemap.StateMapperBase; +import net.minecraft.client.renderer.entity.RenderPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; @@ -24,6 +26,7 @@ import net.minecraftforge.client.ClientCommandHandler; import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.fluids.Fluid; import slimeknights.tconstruct.common.ModelRegisterUtil; +import slimeknights.tconstruct.library.TinkerRegistry; import slimeknights.tconstruct.library.TinkerRegistryClient; import slimeknights.tconstruct.library.client.ToolBuildGuiInfo; @@ -36,8 +39,6 @@ public class ClientProxy extends CommonProxy { // public static ModelTinkersTabard sheath; - public static BaublesClientProxy baubles = new BaublesClientProxy(); - ToolBuildGuiInfo roundshieldGUI; ToolBuildGuiInfo heatershieldGUI; @@ -60,6 +61,12 @@ public class ClientProxy extends CommonProxy { ToolBuildGuiInfo grievesGUI; ToolBuildGuiInfo sabatonsGUI; + ToolBuildGuiInfo sheatheGUI; + ToolBuildGuiInfo ringGUI; + ToolBuildGuiInfo amuletGUI; + + public static SheatheModel sheathe; + public static CoreClientProxy coreProxy = new CoreClientProxy(); public static HolidayClientProxy holiProxy = new HolidayClientProxy(); // public static ArmorClientProxy armorProxy = new ArmorClientProxy(); @@ -68,35 +75,29 @@ public class ClientProxy extends CommonProxy { public void preInit() { ClientCommandHandler.instance.registerCommand(new TD_Commands()); registerToolRenderers(); + registerPartModels(); coreProxy.preInit(); - // armorProxy.preInit(); - baubles.preInit(); } @Override public void init() { - // Minecraft.getMinecraft().getRenderItem().getItemModelMesher() - // .register(TDTools.heatershield, 0, new - // ModelResourceLocation("modid:itemname", "inventory")); - // + Map<String, RenderPlayer> skinMap = Minecraft.getMinecraft().getRenderManager().getSkinMap(); + RenderPlayer render; + render = skinMap.get("default"); + render.addLayer(new BaubleRenderer()); + + render = skinMap.get("slim"); + render.addLayer(new BaubleRenderer()); createToolGuis(); setToolGuis(); registerToolGuis(); - - registerItemRenderer(CoreBlocks.metalItemBlock, TDMetalBlock.EnumMetal.AEONSTEEL.getID(), "aeonsteelblock"); - registerItemRenderer(CoreBlocks.metalItemBlock, TDMetalBlock.EnumMetal.QUEENSGOLD.getID(), "queensgoldblock"); - registerItemRenderer(CoreBlocks.metalItemBlock, TDMetalBlock.EnumMetal.DOGBEARIUM.getID(), "dogbeariumblock"); - - registerItemRenderer(CoreItems.item_aeonsteelIngot, 0, CoreItems.item_aeonsteelIngot.getUnlocalizedName()); - registerItemRenderer(CoreItems.item_dogbeariumIngot, 0, CoreItems.item_dogbeariumIngot.getUnlocalizedName()); - registerItemRenderer(CoreItems.item_queensgoldIngot, 0, CoreItems.item_queensgoldIngot.getUnlocalizedName()); + createToolModels(); coreProxy.init(); // armorProxy.init(); holiProxy.Init(); - baubles.init(); } public void registerToolRenderers() { @@ -111,6 +112,9 @@ public class ClientProxy extends CommonProxy { ModelRegisterUtil.registerToolModel(TDTools.robe); ModelRegisterUtil.registerToolModel(TDTools.shoes); + ModelRegisterUtil.registerToolModel(TDTools.sheathe); + ModelRegisterUtil.registerToolModel(TDTools.ring); + ModelRegisterUtil.registerToolModel(TDTools.amulet); } public void createToolGuis() { @@ -124,6 +128,11 @@ public class ClientProxy extends CommonProxy { shawlGUI = new ToolBuildGuiInfo(TDTools.shawl); robeGUI = new ToolBuildGuiInfo(TDTools.robe); shoesGUI = new ToolBuildGuiInfo(TDTools.shoes); + + sheatheGUI = new ToolBuildGuiInfo(TDTools.sheathe); + ringGUI = new ToolBuildGuiInfo(TDTools.ring); + amuletGUI = new ToolBuildGuiInfo(TDTools.amulet); + } public void setupToolGuis() { @@ -160,6 +169,10 @@ public class ClientProxy extends CommonProxy { shearsGUI.addSlotPosition(34, 15 + 8); shearsGUI.addSlotPosition(43, 33 + 8); shearsGUI.addSlotPosition(34, 51 + 8); + + ringGUI.addSlotPosition(34, 15 + 8); + ringGUI.addSlotPosition(43, 33 + 8); + ringGUI.addSlotPosition(34, 51 + 8); } public void registerToolGuis() { @@ -174,13 +187,26 @@ public class ClientProxy extends CommonProxy { TinkerRegistryClient.addToolBuilding(robeGUI); TinkerRegistryClient.addToolBuilding(shoesGUI); + TinkerRegistryClient.addToolBuilding(sheatheGUI); + TinkerRegistryClient.addToolBuilding(ringGUI); + TinkerRegistryClient.addToolBuilding(amuletGUI); + } + + public void registerPartModels() { + ModelRegisterUtil.registerPartModel(TDParts.armorPlate); + ModelRegisterUtil.registerPartModel(TDParts.chainmail); + ModelRegisterUtil.registerPartModel(TDParts.clasp); + ModelRegisterUtil.registerPartModel(TDParts.cloth); + ModelRegisterUtil.registerPartModel(TDParts.filigree); + ModelRegisterUtil.registerPartModel(TDParts.ringShank); + ModelRegisterUtil.registerPartModel(TDParts.rivets); + ModelRegisterUtil.registerPartModel(TDParts.setting); + ModelRegisterUtil.registerPartModel(TDParts.wire); } @Override public void reloadRenderers() { setToolGuis(); - - baubles.reloadRenderers(); } public void setToolGuis() { @@ -230,6 +256,25 @@ public class ClientProxy extends CommonProxy { fishingRodGUI.addSlotPosition(34, 15 + 8); fishingRodGUI.addSlotPosition(43, 33 + 8); fishingRodGUI.addSlotPosition(34, 51 + 8); + + sheatheGUI.positions.clear(); + sheatheGUI.addSlotPosition(34, 15); + sheatheGUI.addSlotPosition(34, 33); + sheatheGUI.addSlotPosition(34, 51); + + ringGUI.positions.clear(); + ringGUI.addSlotPosition(34, 15); + ringGUI.addSlotPosition(34, 33); + ringGUI.addSlotPosition(34, 51); + + amuletGUI.positions.clear(); + amuletGUI.addSlotPosition(34, 15); + amuletGUI.addSlotPosition(34, 33); + amuletGUI.addSlotPosition(34, 51); + } + + void createToolModels() { + sheathe = new SheatheModel(); } @Override @@ -258,36 +303,36 @@ public class ClientProxy extends CommonProxy { ModelLoader.setCustomStateMapper(block, mapper); } } - + @Override public void registerItemBlockRenderer(Block block, int meta, String file) { - Minecraft.getMinecraft().getRenderItem().getItemModelMesher() - .register(Item.getItemFromBlock(block), meta, new ModelResourceLocation(Reference.MOD_ID + ":" + file, "inventory")); + Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), meta, + new ModelResourceLocation(Reference.MOD_ID + ":" + file, "inventory")); } - - public static class FluidStateMapper extends StateMapperBase implements ItemMeshDefinition { + public static class FluidStateMapper extends StateMapperBase implements ItemMeshDefinition { - public final Fluid fluid; - public final ModelResourceLocation location; + public final Fluid fluid; + public final ModelResourceLocation location; - public FluidStateMapper(Fluid fluid) { - this.fluid = fluid; + public FluidStateMapper(Fluid fluid) { + this.fluid = fluid; - // have each block hold its fluid per nbt? hm - this.location = new ModelResourceLocation(new ResourceLocation(Reference.MOD_ID, "fluid_block"), fluid.getName()); - } + // have each block hold its fluid per nbt? hm + this.location = new ModelResourceLocation(new ResourceLocation(Reference.MOD_ID, "fluid_block"), + fluid.getName()); + } - @Nonnull - @Override - protected ModelResourceLocation getModelResourceLocation(@Nonnull IBlockState state) { - return location; - } + @Nonnull + @Override + protected ModelResourceLocation getModelResourceLocation(@Nonnull IBlockState state) { + return location; + } - @Nonnull - @Override - public ModelResourceLocation getModelLocation(@Nonnull ItemStack stack) { - return location; - } -} + @Nonnull + @Override + public ModelResourceLocation getModelLocation(@Nonnull ItemStack stack) { + return location; + } + } } |
