diff --git a/src/main/java/tconstruct/client/TClientEvents.java b/src/main/java/tconstruct/client/TClientEvents.java index e8b7b005..42a6c6f5 100644 --- a/src/main/java/tconstruct/client/TClientEvents.java +++ b/src/main/java/tconstruct/client/TClientEvents.java @@ -94,8 +94,8 @@ public class TClientEvents private static final ResourceLocation hearts = new ResourceLocation("tinker", "textures/gui/newhearts.png"); private static final ResourceLocation icons = new ResourceLocation("textures/gui/icons.png"); - public static int left_height = 39; - public static int right_height = 39; + //public static int left_height = 39; + //public static int right_height = 39; Random rand = new Random(); int updateCounter = 0; @@ -137,7 +137,7 @@ public class TClientEvents this.rand.setSeed((long) (updateCounter * 312871)); int left = scaledWidth / 2 - 91; - int top = scaledHeight - left_height; + int top = scaledHeight - GuiIngameForge.left_height; int regen = -1; if (mc.thePlayer.isPotionActive(Potion.regeneration)) diff --git a/src/main/java/tconstruct/client/gui/CraftingStationGui.java b/src/main/java/tconstruct/client/gui/CraftingStationGui.java index 4d99e593..37f0e9e6 100644 --- a/src/main/java/tconstruct/client/gui/CraftingStationGui.java +++ b/src/main/java/tconstruct/client/gui/CraftingStationGui.java @@ -34,8 +34,8 @@ public class CraftingStationGui extends GuiContainer this.logic = logic; //text = new GuiTextField(this.field_146289_q, this.field_146999_f / 2 - 5, 8, 30, 12); //this.text.setText(""); - title = "\u00A7nRepair and Modification"; - body = "The main way to repair or change your tools or armor.\n\nPlace an item and a material on the left to get started."; + title = "\u00A7n" + StatCollector.translateToLocal("gui.toolforge1"); + body = StatCollector.translateToLocal("gui.toolforge2"); toolName = ""; } @@ -217,8 +217,8 @@ public class CraftingStationGui extends GuiContainer offset++; field_146289_q.drawString(StatCollector.translateToLocal("gui.toolstation13"), field_146999_f + 8, base + offset * 10, 0xffffff); offset++; - field_146289_q - .drawString("- " + getHarvestLevelName(tags.getInteger("HarvestLevel")) + ", " + getHarvestLevelName(tags.getInteger("HarvestLevel2")), field_146999_f + 8, base + offset * 10, 0xffffff); + field_146289_q.drawString("- " + getHarvestLevelName(tags.getInteger("HarvestLevel")) + ", " + getHarvestLevelName(tags.getInteger("HarvestLevel2")), field_146999_f + 8, base + offset + * 10, 0xffffff); offset++; offset++; } diff --git a/src/main/java/tconstruct/common/TRecipes.java b/src/main/java/tconstruct/common/TRecipes.java index 519b0495..27b1cfcf 100644 --- a/src/main/java/tconstruct/common/TRecipes.java +++ b/src/main/java/tconstruct/common/TRecipes.java @@ -170,7 +170,7 @@ public class TRecipes public void addOreDictionarySmelteryRecipes () { - List exceptions = Arrays.asList(new FluidType[] { FluidType.Water, FluidType.Stone, FluidType.Ender, FluidType.Glass, FluidType.Slime }); + List exceptions = Arrays.asList(new FluidType[] { FluidType.Water, FluidType.Stone, FluidType.Ender, FluidType.Glass, FluidType.Slime, FluidType.Obsidian }); for (FluidType ft : FluidType.values()) { if (exceptions.contains(ft)) @@ -202,6 +202,34 @@ public class TRecipes registerPatternMaterial("block" + ft.toString(), 18, ft.toString()); } } + //Obsidian, different dust amount + { + FluidType ft = FluidType.Obsidian; + Smeltery.addDictionaryMelting("nugget" + ft.toString(), ft, -100, TConstruct.nuggetLiquidValue); + + // Ingots, Dust + registerIngotCasting(ft); + Smeltery.addDictionaryMelting("ingot" + ft.toString(), ft, -50, TConstruct.ingotLiquidValue); + Smeltery.addDictionaryMelting("dust" + ft.toString(), ft, -75, TConstruct.ingotLiquidValue / 4); + + // Factorization support + Smeltery.addDictionaryMelting("crystalline" + ft.toString(), ft, -50, TConstruct.ingotLiquidValue); + + // Ores + Smeltery.addDictionaryMelting("ore" + ft.toString(), ft, 0, ((int) TConstruct.ingotLiquidValue * (int) PHConstruct.ingotsPerOre)); + + // NetherOres support + Smeltery.addDictionaryMelting("oreNether" + ft.toString(), ft, 75, ((int) TConstruct.ingotLiquidValue * (int) PHConstruct.ingotsPerOre * 2)); + + // Blocks + Smeltery.addDictionaryMelting("block" + ft.toString(), ft, 100, TConstruct.blockLiquidValue); + + if (ft.isToolpart) + { + registerPatternMaterial("ingot" + ft.toString(), 2, ft.toString()); + registerPatternMaterial("block" + ft.toString(), 18, ft.toString()); + } + } //Compressed materials for (int i = 1; i <= 8; i++) @@ -435,7 +463,7 @@ public class TRecipes //FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreSlag, 2, new ItemStack(TRepo.materials, 1, 4), 3f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreSlag, 3), new ItemStack(TRepo.materials, 1, 9), 0.5f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreSlag, 4), new ItemStack(TRepo.materials, 1, 10), 0.5f); - FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreSlag, 5), new ItemStack(TRepo.materials, 1, 12), 0.5f); + FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreSlag, 5), new ItemStack(TRepo.materials, 1, 11), 0.5f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreBerries, 0), new ItemStack(TRepo.materials, 1, 19), 0.2f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreBerries, 1), new ItemStack(Items.gold_nugget), 0.2f); @@ -448,7 +476,7 @@ public class TRecipes FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreGravel, 1), new ItemStack(Items.gold_ingot), 0.2f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreGravel, 2), new ItemStack(TRepo.materials, 1, 9), 0.2f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreGravel, 3), new ItemStack(TRepo.materials, 1, 10), 0.2f); - FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreGravel, 4), new ItemStack(TRepo.materials, 1, 12), 0.2f); + FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.oreGravel, 4), new ItemStack(TRepo.materials, 1, 11), 0.2f); FurnaceRecipes.smelting().func_151394_a(new ItemStack(TRepo.speedBlock, 0), new ItemStack(TRepo.speedBlock, 1, 2), 0.2f); } @@ -554,7 +582,7 @@ public class TRecipes GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 3), patBlock, '#', new ItemStack(TRepo.materials, 1, 9)); // Copper GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 5), patBlock, '#', new ItemStack(TRepo.materials, 1, 10)); // Tin GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 6), patBlock, '#', new ItemStack(TRepo.materials, 1, 11)); // Aluminum - GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 6), patBlock, '#', new ItemStack(TRepo.materials, 1, 12)); // Aluminum + //GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 6), patBlock, '#', new ItemStack(TRepo.materials, 1, 12)); // Aluminum GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 4), patBlock, '#', new ItemStack(TRepo.materials, 1, 13)); // Bronze GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 7), patBlock, '#', new ItemStack(TRepo.materials, 1, 14)); // AluBrass GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 0), patBlock, '#', new ItemStack(TRepo.materials, 1, 3)); // Cobalt @@ -562,11 +590,11 @@ public class TRecipes GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 2), patBlock, '#', new ItemStack(TRepo.materials, 1, 5)); // Manyullyn GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 8), patBlock, '#', new ItemStack(TRepo.materials, 1, 15)); // Alumite GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 9), patBlock, '#', new ItemStack(TRepo.materials, 1, 16)); // Steel - GameRegistry.addRecipe(new ItemStack(TRepo.metalBlock, 1, 11), patBlock, '#', new ItemStack(TRepo.materials, 1, 12)); //Aluminum raw -> ingot + GameRegistry.addRecipe(new ItemStack(TRepo.materials, 1, 11), patBlock, '#', new ItemStack(TRepo.materials, 1, 12)); //Aluminum raw -> ingot GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 9), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 3)); //Copper GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 10), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 5)); //Tin - GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 12), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 6)); //Aluminum + GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 11), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 6)); //Aluminum GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 13), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 4)); //Bronze GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 14), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 7)); //AluBrass GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 3), "m", 'm', new ItemStack(TRepo.metalBlock, 1, 0)); //Cobalt @@ -592,7 +620,7 @@ public class TRecipes GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 20), "m", 'm', new ItemStack(TRepo.materials, 1, 9)); //Copper GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 21), "m", 'm', new ItemStack(TRepo.materials, 1, 10)); //Tin GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 22), "m", 'm', new ItemStack(TRepo.materials, 1, 11)); //Aluminum - GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 22), "m", 'm', new ItemStack(TRepo.materials, 1, 12)); //Aluminum + //GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 22), "m", 'm', new ItemStack(TRepo.materials, 1, 12)); //Aluminum GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 24), "m", 'm', new ItemStack(TRepo.materials, 1, 14)); //Aluminum Brass GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 27), "m", 'm', new ItemStack(TRepo.materials, 1, 18)); //Obsidian GameRegistry.addRecipe(new ItemStack(TRepo.materials, 9, 28), "m", 'm', new ItemStack(TRepo.materials, 1, 3)); //Cobalt @@ -671,7 +699,7 @@ public class TRecipes //Accessories GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(TRepo.heartCanister, 1, 0), "##", "##", '#', "ingotAluminum")); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(TRepo.heartCanister, 1, 0), "##", "##", '#', "ingotAluminium")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(TRepo.heartCanister, 1, 0), "##", "##", '#', "ingotNaturalAluminum")); + //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(TRepo.heartCanister, 1, 0), "##", "##", '#', "ingotNaturalAluminum")); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(TRepo.heartCanister, 1, 0), " # ", "#B#", " # ", '#', "ingotTin", 'B', Items.bone)); GameRegistry.addRecipe(new ItemStack(TRepo.diamondApple), " d ", "d#d", " d ", 'd', new ItemStack(Items.diamond), '#', new ItemStack(Items.apple)); @@ -1106,7 +1134,10 @@ public class TRecipes basinCasting.addCastingRecipe(new ItemStack(Blocks.emerald_block), new FluidStack(TRepo.moltenEmeraldFluid, 640 * 9), null, true, 100); //emerald basinCasting.addCastingRecipe(new ItemStack(TRepo.speedBlock, 1, 0), new FluidStack(TRepo.moltenTinFluid, TConstruct.nuggetLiquidValue), new ItemStack(Blocks.gravel), true, 100); //brownstone if (PHConstruct.craftEndstone) - basinCasting.addCastingRecipe(new ItemStack(Blocks.end_stone), new FluidStack(TRepo.moltenEnderFluid, TConstruct.chunkLiquidValue), new ItemStack(Blocks.obsidian), true, 100); //endstone + { + basinCasting.addCastingRecipe(new ItemStack(Blocks.end_stone), new FluidStack(TRepo.moltenEnderFluid, 50), new ItemStack(Blocks.obsidian), true, 100); + basinCasting.addCastingRecipe(new ItemStack(Blocks.end_stone), new FluidStack(TRepo.moltenEnderFluid, 250), new ItemStack(Blocks.sandstone), true, 100); + } basinCasting.addCastingRecipe(new ItemStack(TRepo.metalBlock, 1, 10), new FluidStack(TRepo.moltenEnderFluid, 1000), null, true, 100); //ender basinCasting.addCastingRecipe(new ItemStack(TRepo.glueBlock), new FluidStack(TRepo.glueFluid, TConstruct.blockLiquidValue), null, true, 100); //glue @@ -1358,13 +1389,15 @@ public class TRecipes if (ores.size() > 0) { tableCasting.addCastingRecipe(ores.get(0), new FluidStack(TRepo.moltenInvarFluid, TConstruct.ingotLiquidValue), ingotcast, 80); - Smeltery.addAlloyMixing(new FluidStack(TRepo.moltenInvarFluid, 24), new FluidStack(TRepo.moltenIronFluid, 16), new FluidStack(TRepo.moltenNickelFluid, 8)); //Invar + Smeltery.addAlloyMixing(new FluidStack(TRepo.moltenInvarFluid, TConstruct.ingotLiquidValue * 3), new FluidStack(TRepo.moltenIronFluid, TConstruct.ingotLiquidValue * 2), new FluidStack( + TRepo.moltenNickelFluid, TConstruct.ingotLiquidValue * 1)); //Invar } ores = OreDictionary.getOres("ingotElectrum"); if (ores.size() > 0) { tableCasting.addCastingRecipe(ores.get(0), new FluidStack(TRepo.moltenElectrumFluid, TConstruct.ingotLiquidValue), ingotcast, 80); - Smeltery.addAlloyMixing(new FluidStack(TRepo.moltenElectrumFluid, 16), new FluidStack(TRepo.moltenGoldFluid, 8), new FluidStack(TRepo.moltenSilverFluid, 8)); //Electrum + Smeltery.addAlloyMixing(new FluidStack(TRepo.moltenElectrumFluid, TConstruct.ingotLiquidValue * 2), new FluidStack(TRepo.moltenGoldFluid, TConstruct.ingotLiquidValue), new FluidStack( + TRepo.moltenSilverFluid, TConstruct.ingotLiquidValue)); //Electrum } ores = OreDictionary.getOres("blockNickel"); diff --git a/src/main/java/tconstruct/inventory/ArmorExtendedContainer.java b/src/main/java/tconstruct/inventory/ArmorExtendedContainer.java index b9901a74..a4b9225b 100644 --- a/src/main/java/tconstruct/inventory/ArmorExtendedContainer.java +++ b/src/main/java/tconstruct/inventory/ArmorExtendedContainer.java @@ -16,14 +16,13 @@ public class ArmorExtendedContainer extends ActiveContainer invPlayer = inventoryplayer; this.armor = armor; - this.addSlotToContainer(new Slot(armor, 0, 80, 17)); - this.addSlotToContainer(new Slot(armor, 1, 80, 35)); - this.addSlotToContainer(new Slot(armor, 2, 116, 17)); - this.addSlotToContainer(new Slot(armor, 3, 116, 35)); - this.addSlotToContainer(new Slot(armor, 4, 152, 17)); - this.addSlotToContainer(new Slot(armor, 5, 152, 35)); - this.addSlotToContainer(new Slot(armor, 6, 152, 53)); - + this.addSlotToContainer(new SlotUnused(armor, 0, 80, 17)); + this.addSlotToContainer(new SlotUnused(armor, 1, 80, 35)); + this.addSlotToContainer(new SlotKnapsack(armor, 2, 116, 17)); + this.addSlotToContainer(new SlotUnused(armor, 3, 116, 35)); + this.addSlotToContainer(new SlotUnused(armor, 4, 152, 17)); + this.addSlotToContainer(new SlotUnused(armor, 5, 152, 35)); + this.addSlotToContainer(new SlotCanister(armor, 6, 152, 53)); /* Player inventory */ for (int playerArmor = 0; playerArmor < 4; ++playerArmor) { diff --git a/src/main/java/tconstruct/inventory/SlotArmorCopy.java b/src/main/java/tconstruct/inventory/SlotArmorCopy.java index f60884d0..18e6c529 100644 --- a/src/main/java/tconstruct/inventory/SlotArmorCopy.java +++ b/src/main/java/tconstruct/inventory/SlotArmorCopy.java @@ -5,6 +5,7 @@ import net.minecraft.inventory.IInventory; import net.minecraft.inventory.Slot; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; +import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import cpw.mods.fml.relauncher.Side; @@ -44,7 +45,12 @@ public class SlotArmorCopy extends Slot public boolean isItemValid (ItemStack par1ItemStack) { Item item = (par1ItemStack == null ? null : par1ItemStack.getItem()); - return item != null;// && item.isValidArmor(par1ItemStack, armorType, parent.thePlayer); + boolean isValidArmor = false; + if (item instanceof ItemArmor) + { + isValidArmor = (((ItemArmor) item).armorType == armorType); + } + return item != null && (isValidArmor || (item instanceof ItemBlock && armorType == 0)); } @SideOnly(Side.CLIENT) diff --git a/src/main/java/tconstruct/inventory/SlotCanister.java b/src/main/java/tconstruct/inventory/SlotCanister.java new file mode 100644 index 00000000..f2b11f21 --- /dev/null +++ b/src/main/java/tconstruct/inventory/SlotCanister.java @@ -0,0 +1,33 @@ +package tconstruct.inventory; + +import tconstruct.items.armor.HeartCanister; +import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Item; + +public class SlotCanister extends Slot +{ + public SlotCanister(IInventory par2IInventory, int par3, int par4, int par5) + { + super(par2IInventory, par3, par4, par5); + } + + /** + * Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1 in the case + * of armor slots) + */ + public int getSlotStackLimit () + { + return 10; + } + + /** + * Check if the stack is a valid item for this slot. Always true beside for the armor slots. + */ + public boolean isItemValid (ItemStack par1ItemStack) + { + Item item = (par1ItemStack == null ? null : par1ItemStack.getItem()); + return item != null && (item instanceof HeartCanister); + } +} \ No newline at end of file diff --git a/src/main/java/tconstruct/inventory/SlotKnapsack.java b/src/main/java/tconstruct/inventory/SlotKnapsack.java new file mode 100644 index 00000000..c6eceec1 --- /dev/null +++ b/src/main/java/tconstruct/inventory/SlotKnapsack.java @@ -0,0 +1,33 @@ +package tconstruct.inventory; + +import tconstruct.items.armor.Knapsack; +import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Item; + +public class SlotKnapsack extends Slot +{ + public SlotKnapsack(IInventory par2IInventory, int par3, int par4, int par5) + { + super(par2IInventory, par3, par4, par5); + } + + /** + * Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1 in the case + * of armor slots) + */ + public int getSlotStackLimit () + { + return 1; + } + + /** + * Check if the stack is a valid item for this slot. Always true beside for the armor slots. + */ + public boolean isItemValid (ItemStack par1ItemStack) + { + Item item = (par1ItemStack == null ? null : par1ItemStack.getItem()); + return item != null && (item instanceof Knapsack); + } +} \ No newline at end of file diff --git a/src/main/java/tconstruct/inventory/SlotUnused.java b/src/main/java/tconstruct/inventory/SlotUnused.java new file mode 100644 index 00000000..e9941251 --- /dev/null +++ b/src/main/java/tconstruct/inventory/SlotUnused.java @@ -0,0 +1,30 @@ +package tconstruct.inventory; + +import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; + +public class SlotUnused extends Slot +{ + public SlotUnused(IInventory par2IInventory, int par3, int par4, int par5) + { + super(par2IInventory, par3, par4, par5); + } + + /** + * Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1 in the case + * of armor slots) + */ + public int getSlotStackLimit () + { + return 0; + } + + /** + * Check if the stack is a valid item for this slot. Always true beside for the armor slots. + */ + public boolean isItemValid (ItemStack par1ItemStack) + { + return false; + } +} \ No newline at end of file diff --git a/src/main/java/tconstruct/items/tools/Arrow.java b/src/main/java/tconstruct/items/tools/Arrow.java index c19a27ee..09beba22 100644 --- a/src/main/java/tconstruct/items/tools/Arrow.java +++ b/src/main/java/tconstruct/items/tools/Arrow.java @@ -105,8 +105,11 @@ public class Arrow extends ToolCore ItemStack tool = ToolBuilder.instance.buildTool(new ItemStack(getHeadItem(), 1, 3), new ItemStack(getHandleItem(), 1, 0), accessoryStack, extraStack, ""); if (tool == null) { - TConstruct.logger.warn("Creative builder failed tool for Vanilla style" + this.getToolName()); - TConstruct.logger.warn("Make sure you do not have item ID conflicts"); + if (!TRepo.supressMissingToolLogs) + { + TConstruct.logger.warn("Creative builder failed tool for Vanilla style" + this.getToolName()); + TConstruct.logger.warn("Make sure you do not have item ID conflicts"); + } } else { @@ -127,8 +130,11 @@ public class Arrow extends ToolCore { if (!TRepo.supressMissingToolLogs) { - TConstruct.logger.warn("Creative builder failed tool for Vanilla style" + this.getToolName()); - TConstruct.logger.warn("Make sure you do not have item ID conflicts"); + if (!TRepo.supressMissingToolLogs) + { + TConstruct.logger.warn("Creative builder failed tool for Vanilla style" + this.getToolName()); + TConstruct.logger.warn("Make sure you do not have item ID conflicts"); + } } } else diff --git a/src/main/java/tconstruct/library/tools/ToolCore.java b/src/main/java/tconstruct/library/tools/ToolCore.java index 46d02693..2ad7039a 100644 --- a/src/main/java/tconstruct/library/tools/ToolCore.java +++ b/src/main/java/tconstruct/library/tools/ToolCore.java @@ -556,8 +556,10 @@ public abstract class ToolCore extends Item implements IEnergyContainerItem, IBa e.printStackTrace(); } if (!supress) + { TConstructRegistry.logger.severe("Creative builder failed tool for " + name + this.getToolName()); - TConstructRegistry.logger.severe("Make sure you do not have item ID conflicts"); + TConstructRegistry.logger.severe("Make sure you do not have item ID conflicts"); + } } else { diff --git a/src/main/java/tconstruct/util/TEventHandler.java b/src/main/java/tconstruct/util/TEventHandler.java index c6d48f31..ffd51464 100644 --- a/src/main/java/tconstruct/util/TEventHandler.java +++ b/src/main/java/tconstruct/util/TEventHandler.java @@ -422,6 +422,7 @@ public class TEventHandler ItemStack dropStack = new ItemStack(Items.skull, 1, 3); NBTTagCompound nametag = new NBTTagCompound(); nametag.setString("SkullOwner", player.getDisplayName()); + dropStack.setTagCompound(nametag); addDrops(event, dropStack); } @@ -439,6 +440,7 @@ public class TEventHandler ItemStack dropStack = new ItemStack(Items.skull, 1, 3); NBTTagCompound nametag = new NBTTagCompound(); nametag.setString("SkullOwner", player.getDisplayName()); + dropStack.setTagCompound(nametag); addDrops(event, dropStack); } }