summaryrefslogtreecommitdiff
path: root/src/main/java/gmail
diff options
context:
space:
mode:
authorLance5057 <Lance5057@gmail.com>2015-09-01 02:37:19 -0500
committerLance5057 <Lance5057@gmail.com>2015-09-01 02:37:19 -0500
commit21c92007da84b33e44afcac5eecd48760cf1b107 (patch)
tree1bd30b6e1c373b714f67d9043f99012b6ef70d87 /src/main/java/gmail
parent8aebbe3f2cabe013bc2bbdf400e084629d58a672 (diff)
Experimented with model rendering for armor.
Diffstat (limited to 'src/main/java/gmail')
-rw-r--r--src/main/java/gmail/Lance5057/TinkersDefense.java8
-rw-r--r--src/main/java/gmail/Lance5057/armor/items/Sheath.java6
-rw-r--r--src/main/java/gmail/Lance5057/armor/renderers/ModelSheath.java23
-rw-r--r--src/main/java/gmail/Lance5057/armor/tools/Item_Cloth.java52
-rw-r--r--src/main/java/gmail/Lance5057/armor/tools/Item_Glowthread.java52
-rw-r--r--src/main/java/gmail/Lance5057/armor/tools/Item_Thread.java52
-rw-r--r--src/main/java/gmail/Lance5057/gui/Gui_FinishingAnvil.java62
-rw-r--r--src/main/java/gmail/Lance5057/items/Injector.java116
-rw-r--r--src/main/java/gmail/Lance5057/network/Handler_FinishingAnvil.java26
-rw-r--r--src/main/java/gmail/Lance5057/network/Message_FinishingAnvil.java56
-rw-r--r--src/main/java/gmail/Lance5057/network/PacketHandler.java1
11 files changed, 257 insertions, 197 deletions
diff --git a/src/main/java/gmail/Lance5057/TinkersDefense.java b/src/main/java/gmail/Lance5057/TinkersDefense.java
index 99bbd3b..6a184ce 100644
--- a/src/main/java/gmail/Lance5057/TinkersDefense.java
+++ b/src/main/java/gmail/Lance5057/TinkersDefense.java
@@ -3,13 +3,13 @@ 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 parts.Item_Cloth;
+import parts.Item_Glowthread;
+import parts.Item_Thread;
import gmail.Lance5057.armor.items.ChainArmor;
import gmail.Lance5057.armor.items.ClothArmor;
import gmail.Lance5057.armor.items.Sheath;
import gmail.Lance5057.armor.items.TinkerArmor;
-import gmail.Lance5057.armor.tools.Item_Cloth;
-import gmail.Lance5057.armor.tools.Item_Glowthread;
-import gmail.Lance5057.armor.tools.Item_Thread;
import gmail.Lance5057.blocks.AeonSteelBlock;
import gmail.Lance5057.blocks.CrestMount;
import gmail.Lance5057.blocks.DogbeariumBlock;
@@ -597,7 +597,7 @@ public class TinkersDefense {
TConstructRegistry.getItemStack("swordBladeCast"), 50);
TConstructRegistry.instance.getTableCasting().addCastingRecipe(
new ItemStack(TinkerTools.fullGuard, 1, ID),
- new FluidStack(fluid, (int) (144 * 1.0D)),
+ new FluidStack(fluid, (int) (144 * 3.0D)),
TConstructRegistry.getItemStack("fullGuardCast"), 50);
TConstructRegistry.instance.getTableCasting().addCastingRecipe(
new ItemStack(TinkerTools.wideGuard, 1, ID),
diff --git a/src/main/java/gmail/Lance5057/armor/items/Sheath.java b/src/main/java/gmail/Lance5057/armor/items/Sheath.java
index c3563f1..92b5695 100644
--- a/src/main/java/gmail/Lance5057/armor/items/Sheath.java
+++ b/src/main/java/gmail/Lance5057/armor/items/Sheath.java
@@ -15,7 +15,7 @@ public class Sheath extends AccessoryCore implements IAccessoryModel
{
public Sheath() {
- super("tinkersdefense:textures/armor/Sheath");
+ super("tinkersdefense:textures/armor/Sheath/_sheath_base");
}
@Override
@@ -34,10 +34,10 @@ public class Sheath extends AccessoryCore implements IAccessoryModel
@Override
public String getArmorTexture(ItemStack stack, Entity entity, int slot,
String type) {
- return "tinkersdefense:textures/armor/Sheath.png";
+ return "tinkersdefense:textures/armor/Sheath/_sheath_base.png";
}
- ResourceLocation texture = new ResourceLocation("tinkersdefense", "textures/armor/Sheath.png");
+ ResourceLocation texture = new ResourceLocation("tinkersdefense", "textures/armor/Sheath/_sheath_base.png");
@Override
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/gmail/Lance5057/armor/renderers/ModelSheath.java b/src/main/java/gmail/Lance5057/armor/renderers/ModelSheath.java
index 3ca4395..3a1760c 100644
--- a/src/main/java/gmail/Lance5057/armor/renderers/ModelSheath.java
+++ b/src/main/java/gmail/Lance5057/armor/renderers/ModelSheath.java
@@ -3,8 +3,12 @@ package gmail.Lance5057.armor.renderers;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
import org.lwjgl.opengl.GL11;
+import cpw.mods.fml.client.FMLClientHandler;
+
/**
* ModelBiped - Either Mojang or a mod author
* Created using Tabula 4.1.1
@@ -28,8 +32,25 @@ public class ModelSheath extends ModelBiped {
@Override
public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+
+ GL11.glPushMatrix();
this.shape10.render(f5);
GL11.glPushMatrix();
+ GL11.glColor3d(0, 0, 1.0);
+ GL11.glTranslatef(this.shape9.offsetX, this.shape9.offsetY, this.shape9.offsetZ);
+ GL11.glTranslatef(this.shape9.rotationPointX * f5, this.shape9.rotationPointY * f5, this.shape9.rotationPointZ * f5);
+ GL11.glScaled(0.65D, 0.65D, 0.5D);
+ GL11.glTranslatef(-this.shape9.offsetX, -this.shape9.offsetY, -this.shape9.offsetZ);
+ GL11.glTranslatef(-this.shape9.rotationPointX * f5, -this.shape9.rotationPointY * f5, -this.shape9.rotationPointZ * f5);
+ this.shape9.render(f5);
+ GL11.glPopMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/armor/Sheath/_sheath_filigree.png"));
+ GL11.glPushMatrix();
+
+
+ GL11.glColor3d(1.0, 1.0, 0);
+ this.shape10.render(f5);
GL11.glTranslatef(this.shape9.offsetX, this.shape9.offsetY, this.shape9.offsetZ);
GL11.glTranslatef(this.shape9.rotationPointX * f5, this.shape9.rotationPointY * f5, this.shape9.rotationPointZ * f5);
GL11.glScaled(0.65D, 0.65D, 0.5D);
@@ -37,6 +58,8 @@ public class ModelSheath extends ModelBiped {
GL11.glTranslatef(-this.shape9.rotationPointX * f5, -this.shape9.rotationPointY * f5, -this.shape9.rotationPointZ * f5);
this.shape9.render(f5);
GL11.glPopMatrix();
+
+ GL11.glPopMatrix();
}
/**
diff --git a/src/main/java/gmail/Lance5057/armor/tools/Item_Cloth.java b/src/main/java/gmail/Lance5057/armor/tools/Item_Cloth.java
deleted file mode 100644
index d236ac7..0000000
--- a/src/main/java/gmail/Lance5057/armor/tools/Item_Cloth.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package gmail.Lance5057.armor.tools;
-
-import gmail.Lance5057.TinkersDefense;
-
-import java.util.List;
-
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-
-public class Item_Cloth extends Item
-{
- public IIcon[] icons = new IIcon[16];
- public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
-
- public Item_Cloth()
- {
- super();
- this.setHasSubtypes(true);
- this.setUnlocalizedName("Cloth");
- this.setCreativeTab(TinkersDefense.tabName);
- }
-
- @Override
- public void registerIcons(IIconRegister reg) {
- for (int i = 0; i < 16; i ++) {
- this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_cloth" );
- }
- }
-
- @Override
- public IIcon getIconFromDamage(int meta) {
- if (meta > 15)
- meta = 0;
-
- return this.icons[meta];
- }
-
- @Override
- public void getSubItems(Item item, CreativeTabs tab, List list) {
- for (int i = 0; i < 16; i ++) {
- list.add(new ItemStack(item, 1, i));
- }
- }
-
- @Override
- public String getUnlocalizedName(ItemStack stack) {
- return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
- }
-}
diff --git a/src/main/java/gmail/Lance5057/armor/tools/Item_Glowthread.java b/src/main/java/gmail/Lance5057/armor/tools/Item_Glowthread.java
deleted file mode 100644
index 7fbed32..0000000
--- a/src/main/java/gmail/Lance5057/armor/tools/Item_Glowthread.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package gmail.Lance5057.armor.tools;
-
-import gmail.Lance5057.TinkersDefense;
-
-import java.util.List;
-
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-
-public class Item_Glowthread extends Item
-{
- public IIcon[] icons = new IIcon[16];
- public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
-
- public Item_Glowthread()
- {
- super();
- this.setHasSubtypes(true);
- this.setUnlocalizedName("GlowThread");
- this.setCreativeTab(TinkersDefense.tabName);
- }
-
- @Override
- public void registerIcons(IIconRegister reg) {
- for (int i = 0; i < 16; i ++) {
- this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_glowthread" );
- }
- }
-
- @Override
- public IIcon getIconFromDamage(int meta) {
- if (meta > 15)
- meta = 0;
-
- return this.icons[meta];
- }
-
- @Override
- public void getSubItems(Item item, CreativeTabs tab, List list) {
- for (int i = 0; i < 16; i ++) {
- list.add(new ItemStack(item, 1, i));
- }
- }
-
- @Override
- public String getUnlocalizedName(ItemStack stack) {
- return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
- }
-}
diff --git a/src/main/java/gmail/Lance5057/armor/tools/Item_Thread.java b/src/main/java/gmail/Lance5057/armor/tools/Item_Thread.java
deleted file mode 100644
index dda0d14..0000000
--- a/src/main/java/gmail/Lance5057/armor/tools/Item_Thread.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package gmail.Lance5057.armor.tools;
-
-import gmail.Lance5057.TinkersDefense;
-
-import java.util.List;
-
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-
-public class Item_Thread extends Item
-{
- public IIcon[] icons = new IIcon[16];
- public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
-
- public Item_Thread()
- {
- super();
- this.setHasSubtypes(true);
- this.setUnlocalizedName("Thread");
- this.setCreativeTab(TinkersDefense.tabName);
- }
-
- @Override
- public void registerIcons(IIconRegister reg) {
- for (int i = 0; i < 16; i ++) {
- this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_thread" );
- }
- }
-
- @Override
- public IIcon getIconFromDamage(int meta) {
- if (meta > 15)
- meta = 0;
-
- return this.icons[meta];
- }
-
- @Override
- public void getSubItems(Item item, CreativeTabs tab, List list) {
- for (int i = 0; i < 16; i ++) {
- list.add(new ItemStack(item, 1, i));
- }
- }
-
- @Override
- public String getUnlocalizedName(ItemStack stack) {
- return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
- }
-}
diff --git a/src/main/java/gmail/Lance5057/gui/Gui_FinishingAnvil.java b/src/main/java/gmail/Lance5057/gui/Gui_FinishingAnvil.java
index a083b71..0e16dd8 100644
--- a/src/main/java/gmail/Lance5057/gui/Gui_FinishingAnvil.java
+++ b/src/main/java/gmail/Lance5057/gui/Gui_FinishingAnvil.java
@@ -4,11 +4,13 @@ import gmail.Lance5057.TinkersDefense;
import gmail.Lance5057.containers.Container_CrestMount;
import gmail.Lance5057.containers.Container_FinishingAnvil;
import gmail.Lance5057.network.Message_CrestMount;
+import gmail.Lance5057.network.Message_FinishingAnvil;
import gmail.Lance5057.tileentities.TileEntity_CrestMount;
import gmail.Lance5057.tileentities.TileEntity_FinishingAnvil;
import org.lwjgl.opengl.GL11;
+import tconstruct.library.TConstructRegistry;
import tconstruct.library.tools.ToolCore;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.inventory.GuiContainer;
@@ -47,12 +49,22 @@ public class Gui_FinishingAnvil extends GuiContainer
private int xRIcon_two, yRIcon_two;
private int xRIcon_three, yRIcon_three;
+ String[] renders;
+
+ NBTTagCompound tags;
+
private static final ResourceLocation iconLocation = new ResourceLocation("tinkersdefense", "textures/gui/finishinganvil.png");
public Gui_FinishingAnvil(InventoryPlayer invPlayer, TileEntity_FinishingAnvil te)
{
super(new Container_FinishingAnvil(invPlayer, te));
this.inventory = te;
+
+ renders = new String[4];
+ renders[0] = "Head";
+ renders[1] = "Accessory";
+ renders[2] = "Handle";
+ renders[3] = "Extra";
}
@Override
@@ -79,63 +91,61 @@ public class Gui_FinishingAnvil extends GuiContainer
@Override
protected void actionPerformed(GuiButton button)
{
- NBTTagCompound tags = bigCopy.getTagCompound().getCompoundTag("InfiTool");
+ if(tags != null)
switch(button.id)
{
case 1: if(this.leftButtonPosX > 0) this.leftButtonPosX--; break;
- case 2: this.leftButtonPosX++; break;
+ case 2: if(this.leftButtonPosX+2 < ((ToolCore)bigCopy.getItem()).getPartAmount() - 1) this.leftButtonPosX++; break;
case 3:
- inventory.inventory[0] = null;
- inventory.inventory[0] = bigCopy;
+ TinkersDefense.INSTANCE.sendToServer(new Message_FinishingAnvil(inventory.xCoord, inventory.yCoord, inventory.zCoord, this.bigCopy));
break;
- case 4: leftSelect = 0; break;
- case 5: leftSelect = 1; break;
- case 6: leftSelect = 2; break;
+ case 4: leftSelect = 0; rightButtonPosY = 2; break;
+ case 5: leftSelect = 1; rightButtonPosY = 3; break;
+ case 6: leftSelect = 2; rightButtonPosY = 4; break;
case 7: if(this.rightButtonPosX > 0) this.rightButtonPosX--; break;
case 8: this.rightButtonPosX++; break;
case 9:
- if(bigCopy.getTagCompound().getCompoundTag("InfiTool").hasKey("RenderHead"))
+ if(tags.hasKey("Render"+renders[leftSelect]))
{
- bigCopy.getTagCompound().getCompoundTag("InfiTool").setInteger("RenderHead", bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger("Head") * rightButtonPosX + 1);
+ tags.setInteger("Render"+renders[leftSelect], bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger(renders[leftSelect]) + ((rightButtonPosX) * TinkersDefense.config.MaterialIndex));
+ if(rightButtonPosX > 0)
+ tags.setInteger(renders[leftSelect]+"Color", TConstructRegistry.getMaterial(tags.getInteger(renders[leftSelect])).primaryColor());
+ else
+ tags.removeTag(renders[leftSelect]+"Color");
}
break;
case 10:
- if(tags.hasKey("RenderHead"))
+ if(tags.hasKey("Render"+renders[leftSelect]))
{
- int test = tags.getInteger("Head");
- int test2 = test + ((rightButtonPosX + 1) * TinkersDefense.config.MaterialIndex);
- //bigCopy.getTagCompound().getCompoundTag("InfiTool").setInteger("Head", bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger("Head") + ((rightButtonPosX + 1) * TinkersDefense.config.MaterialIndex));
- bigCopy.getTagCompound().getCompoundTag("InfiTool").setInteger("RenderHead", bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger("Head") + ((rightButtonPosX + 1) * TinkersDefense.config.MaterialIndex));
+ tags.setInteger("Render"+renders[leftSelect], bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger(renders[leftSelect]) + ((rightButtonPosX + 1) * TinkersDefense.config.MaterialIndex));
+ tags.setInteger(renders[leftSelect]+"Color", TConstructRegistry.getMaterial(tags.getInteger(renders[leftSelect])).primaryColor());
}
break;
case 11:
- if(tags.hasKey("RenderHead"))
+ if(tags.hasKey("Render"+renders[leftSelect]))
{
- tags.setInteger("RenderHead", tags.getInteger("Head") * (rightButtonPosX + 3));
- tags.setInteger("Head", tags.getInteger("Head") * (rightButtonPosX + 3));
-
+ tags.setInteger("Render"+renders[leftSelect], bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger(renders[leftSelect]) + ((rightButtonPosX + 2) * TinkersDefense.config.MaterialIndex));
+ tags.setInteger(renders[leftSelect]+"Color", TConstructRegistry.getMaterial(tags.getInteger(renders[leftSelect])).primaryColor());
}
break;
}
}
public void drawScreen(int par1, int par2, float par3)
{
- if(bigCopy != null)
- if(bigCopy.getTagCompound().getCompoundTag("InfiTool").hasKey("RenderHead"))
- {
- ((GuiButton)this.buttonList.get(2)).displayString = Integer.toString(bigCopy.getTagCompound().getCompoundTag("InfiTool").getInteger("RenderHead"));
- }
+
if(inventory.getStackInSlot(0) != null && isNull == true
/*inventory.getStackInSlot(0).getItem() != this.bigCopy*/)
{
this.bigCopy = inventory.getStackInSlot(0).copy();
+ if(bigCopy.hasTagCompound() && bigCopy.getTagCompound().hasKey("InfiTool"))
+ tags = bigCopy.getTagCompound().getCompoundTag("InfiTool");
isNull = false;
}
else if(inventory.getStackInSlot(0) == null)
@@ -143,6 +153,7 @@ public class Gui_FinishingAnvil extends GuiContainer
this.bigCopy = null;
isNull = true;
}
+
super.drawScreen(par1, par2, par3);
this.xSize_lo = (float)par1;
this.ySize_lo = (float)par2;
@@ -216,4 +227,9 @@ public class Gui_FinishingAnvil extends GuiContainer
int l = (this.height - this.ySize) / 2;
this.drawTexturedModalRect(k, l, 0, 0, this.xSize+80, this.ySize);
}
+
+ protected void injectIcons()
+ {
+
+ }
}
diff --git a/src/main/java/gmail/Lance5057/items/Injector.java b/src/main/java/gmail/Lance5057/items/Injector.java
index fc979fa..a95a260 100644
--- a/src/main/java/gmail/Lance5057/items/Injector.java
+++ b/src/main/java/gmail/Lance5057/items/Injector.java
@@ -2,7 +2,9 @@ package gmail.Lance5057.items;
import gmail.Lance5057.TinkersDefense;
+import java.util.HashMap;
import java.util.Map;
+import java.util.Map.Entry;
import tconstruct.library.crafting.PatternBuilder;
import tconstruct.library.crafting.PatternBuilder.MaterialSet;
@@ -10,6 +12,7 @@ import tconstruct.library.tools.ToolCore;
import tconstruct.tools.TinkerTools;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.Item;
+import net.minecraft.util.IIcon;
public class Injector extends ToolCore
{
@@ -25,32 +28,117 @@ public class Injector extends ToolCore
protected void loadHeads(IIconRegister iconRegister)
{
- heads = new String[6];
+ heads = new String[9];
+ accessorys = new String[10];
+ handles = new String[2];
heads[0] = "_tapered_blade";
-// heads[1] = "_dull_blade";
-// heads[2] = "_glass_blade";
-// heads[3] = "_plumed_blade";
-// heads[4] = "_widebase_blade";
-// heads[5] = "_tapered_blade";
+ heads[1] = "_dull_blade";
+ heads[2] = "_glass_blade";
+ heads[3] = "_plumed_blade";
+ heads[4] = "_spiked_blade";
+ heads[5] = "_widebase_blade";
+ heads[6] = "_mace_blade";
+ heads[7] = "_elusive_blade";
+ heads[8] = "_repulsive_blade";
+
+ accessorys[0] = "_straight_guard";
+ accessorys[1] = "_basket_guard";
+ accessorys[2] = "_curved_guard";
+ accessorys[3] = "_extended_guard";
+ accessorys[4] = "_legendary_guard";
+ accessorys[5] = "_queens_guard";
+ accessorys[6] = "_square_guard";
+ accessorys[7] = "_no_guard";
+ accessorys[8] = "_elusive_guard";
+ accessorys[9] = "_repulsive_guard";
+
+ handles[0] = "_ornate_handle";
+ handles[1] = "_thick_handle";
+
+ IIcon origHead = TinkerTools.broadsword.headIcons.get(-1);
+ IIcon origAccessory = TinkerTools.broadsword.accessoryIcons.get(-1);
+ IIcon origHandle = TinkerTools.broadsword.handleIcons.get(-1);
+
for(int i = 0; i<heads.length; i++)
{
PatternBuilder pb = PatternBuilder.instance;
for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
{
- String test = entry.getKey();
- String icon = "tinker:";
- icon += TinkerTools.broadsword.getDefaultFolder() + "/";
- icon += test + heads[i];
+ String icon = "tinkersdefense:";
+ icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + heads[i];
//toolIcons[i] = icon;
- headStrings.put(entry.getValue().materialID+TinkersDefense.config.MaterialIndex, icon);
+ headStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
}
addIcons(headStrings, headIcons, iconRegister, heads[i], false);
+
+ for(int j = (i+1)*TinkersDefense.config.MaterialIndex; j<TinkersDefense.config.MaterialIndex + ((i+1)*TinkersDefense.config.MaterialIndex); j++)
+ {
+ if(!headIcons.containsKey(j))
+ {
+ headIcons.put(j, headIcons.get(-1));
+ }
+ }
+
TinkerTools.broadsword.headStrings.putAll(headStrings);
TinkerTools.broadsword.headIcons.putAll(headIcons);
}
+
+ for(int i = 0; i<accessorys.length; i++)
+ {
+ PatternBuilder pb = PatternBuilder.instance;
+ for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
+ {
+ String icon = "tinkersdefense:";
+ icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + accessorys[i];
+ //toolIcons[i] = icon;
+ accessoryStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
+ }
+
+ addIcons(accessoryStrings, accessoryIcons, iconRegister, accessorys[i], false);
+
+ for(int j = (i+1)*TinkersDefense.config.MaterialIndex; j<TinkersDefense.config.MaterialIndex + ((i+1)*TinkersDefense.config.MaterialIndex); j++)
+ {
+ if(!accessoryIcons.containsKey(j))
+ {
+ accessoryIcons.put(j, accessoryIcons.get(-1));
+ }
+ }
+
+ TinkerTools.broadsword.accessoryStrings.putAll(accessoryStrings);
+ TinkerTools.broadsword.accessoryIcons.putAll(accessoryIcons);
+ }
+
+ for(int i = 0; i<handles.length; i++)
+ {
+ PatternBuilder pb = PatternBuilder.instance;
+ for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
+ {
+ String icon = "tinkersdefense:";
+ icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + handles[i];
+ //toolIcons[i] = icon;
+ handleStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
+ }
+
+ addIcons(handleStrings, handleIcons, iconRegister, handles[i], false);
+
+ for(int j = (i+1)*TinkersDefense.config.MaterialIndex; j<TinkersDefense.config.MaterialIndex + ((i+1)*TinkersDefense.config.MaterialIndex); j++)
+ {
+ if(!handleIcons.containsKey(j))
+ {
+ handleIcons.put(j, handleIcons.get(-1));
+ }
+ }
+
+ TinkerTools.broadsword.handleStrings.putAll(handleStrings);
+ TinkerTools.broadsword.handleIcons.putAll(handleIcons);
+ }
+
+ TinkerTools.broadsword.headIcons.put(-1, origHead);
+ TinkerTools.broadsword.accessoryIcons.put(-1, origAccessory);
+ TinkerTools.broadsword.handleIcons.put(-1, origHandle);
}
@Override
@@ -58,6 +146,12 @@ public class Injector extends ToolCore
{
loadHeads(iconRegister);
}
+
+ @Override
+ public String getDefaultTexturePath()
+ {
+ return "tinkersdefense:" + getDefaultFolder();
+ }
@Override
public Item getAccessoryItem() {
diff --git a/src/main/java/gmail/Lance5057/network/Handler_FinishingAnvil.java b/src/main/java/gmail/Lance5057/network/Handler_FinishingAnvil.java
new file mode 100644
index 0000000..125a514
--- /dev/null
+++ b/src/main/java/gmail/Lance5057/network/Handler_FinishingAnvil.java
@@ -0,0 +1,26 @@
+package gmail.Lance5057.network;
+
+import ibxm.Player;
+import gmail.Lance5057.tileentities.TileEntity_FinishingAnvil;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.tileentity.TileEntity;
+import cpw.mods.fml.common.network.simpleimpl.IMessage;
+import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
+import cpw.mods.fml.common.network.simpleimpl.MessageContext;
+
+public class Handler_FinishingAnvil implements IMessageHandler<Message_FinishingAnvil, IMessage>
+{
+ @Override
+ public IMessage onMessage(Message_FinishingAnvil message, MessageContext ctx)
+ {
+ TileEntity te = ctx.getServerHandler().playerEntity.worldObj.getTileEntity(message.x, message.y, message.z);
+ if (te instanceof TileEntity_FinishingAnvil)
+ {
+ //((TileEntity_FinishingAnvil) te).flip = message.flip;
+ ((TileEntity_FinishingAnvil) te).inventory[0] = message.item;
+ }
+ return null;
+ }
+}
+
diff --git a/src/main/java/gmail/Lance5057/network/Message_FinishingAnvil.java b/src/main/java/gmail/Lance5057/network/Message_FinishingAnvil.java
new file mode 100644
index 0000000..1145f13
--- /dev/null
+++ b/src/main/java/gmail/Lance5057/network/Message_FinishingAnvil.java
@@ -0,0 +1,56 @@
+package gmail.Lance5057.network;
+
+import gmail.Lance5057.tileentities.TileEntity_CrestMount;
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.ByteBufUtil;
+import net.minecraft.client.Minecraft;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import cpw.mods.fml.common.network.ByteBufUtils;
+import cpw.mods.fml.common.network.simpleimpl.IMessage;
+import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
+import cpw.mods.fml.common.network.simpleimpl.MessageContext;
+
+public class Message_FinishingAnvil implements IMessage
+{
+ ByteBufUtils bbu = new ByteBufUtils();
+
+ public int x, y, z;
+ public ItemStack item;
+
+ public Message_FinishingAnvil()
+ {
+
+ }
+
+ public Message_FinishingAnvil(int x, int y, int z, ItemStack item)
+ {
+ this.x = x;
+ this.y = y;
+ this.z = z;
+
+ this.item = item;
+ }
+
+
+
+
+ @Override
+ public void fromBytes(ByteBuf buf) {
+ this.x = buf.readInt();
+ this.y = buf.readInt();
+ this.z = buf.readInt();
+
+ this.item = bbu.readItemStack(buf);
+ }
+
+ @Override
+ public void toBytes(ByteBuf buf) {
+ buf.writeInt(x);
+ buf.writeInt(y);
+ buf.writeInt(z);
+
+ bbu.writeItemStack(buf, item);
+ }
+
+} \ No newline at end of file
diff --git a/src/main/java/gmail/Lance5057/network/PacketHandler.java b/src/main/java/gmail/Lance5057/network/PacketHandler.java
index 79c3d6f..ebf860a 100644
--- a/src/main/java/gmail/Lance5057/network/PacketHandler.java
+++ b/src/main/java/gmail/Lance5057/network/PacketHandler.java
@@ -9,6 +9,7 @@ public class PacketHandler {
public static void init()
{
TinkersDefense.INSTANCE.registerMessage(Handler_CrestMount.class, Message_CrestMount.class,id++,Side.SERVER);
+ TinkersDefense.INSTANCE.registerMessage(Handler_FinishingAnvil.class, Message_FinishingAnvil.class,id++,Side.SERVER);
}
}