diff --git a/resources/assets/tinker/lang/en_US.lang b/resources/assets/tinker/lang/en_US.lang index d7b95f1a..c15ef361 100644 --- a/resources/assets/tinker/lang/en_US.lang +++ b/resources/assets/tinker/lang/en_US.lang @@ -389,6 +389,7 @@ item.tconstruct.Fletching.blueslime.name=Slime Fletching item.tconstruct.manual.beginner.name=Materials and You item.tconstruct.manual.toolstation.name=Materials and You item.tconstruct.manual.smeltery.name=Mighty Smelting +item.tconstruct.manual.diary.name=Diary of a Tinker item.tconstruct.bucket.Iron.name=Molten Iron Bucket item.tconstruct.bucket.Gold.name=Molten Gold Bucket @@ -594,9 +595,9 @@ achievement.tconstruct.enemySlayer.desc=Slay a mob achievement.tconstruct.dualConvenience.desc=Kill a mob with a frying pan, and then cook their meat in it knapsack.tooltip=A Knapsack to hold your things. -strangefood1.tooltip=\u00a7b\u00a7oIt smells terrible, but if you= -strangefood2.tooltip=\u00a7b\u00a7ohave nothing else to eat...= -hambone1.tooltip=\u00A74Hambone! +strangefood1.tooltip=It smells terrible, but if you +strangefood2.tooltip=have nothing else to eat... +hambone1.tooltip=Hambone! hambone2.tooltip=Usable for Beacon bases metalblock.tooltip=Usable for Beacon bases craftedsoil1.tooltip=Heals Undead @@ -617,9 +618,9 @@ speedblock1.tooltip=You run pretty fast on it speedblock2.tooltip=You run a bit faster on it speedblock.slab1.tooltip=You run pretty fast on it speedblock.slab2.tooltip=You run a bit faster on it -manual1.tooltip=\u00a7oBy: Skyla -manual2.tooltip=\u00a7oBy: Skyla -manual3.tooltip=\u00a7oBy: Thruul M'gon +manual1.tooltip=By: Skyla +manual2.tooltip=By: Skyla +manual3.tooltip=By: Thruul M'gon searedtank1.tooltip=Contains searedtank2.tooltip=Keeps any fluids it has when harvested oreberries1.tooltip=Sweet Irony @@ -637,8 +638,8 @@ landmine1.tooltip=everything landmine2.tooltip=mobs, players and redstone landmine3.tooltip=players and redstone landmine4.tooltip=redstone only -goldenhead1.tooltip=\u00a75\u00a7oSome say consuming the head of a -goldenhead2.tooltip=\u00a75\u00a7ofallen foe strengthens the blood +goldenhead1.tooltip=Some say consuming the head of a +goldenhead2.tooltip=fallen foe strengthens the blood oreberrybush1.tooltip=Sweet Irony oreberrybush2.tooltip=Pure Luster oreberrybush3.tooltip=Tastes like metal @@ -649,3 +650,8 @@ barricade.tooltip=Stacks up to 4 times pattern1.tooltip=Material Cost: pattern2.tooltip=Material Cost: potionlauncher.tooltip=Test Item +smeltery.controller.tooltip=Brain of the Smeltery +smeltery.drain.tooltip1=Works both as input and output for +smeltery.drain.tooltip2=fluids in the Smeltery +smeltery.brick.tooltip1=Smeltery structure block +smeltery.brick.tooltip2=(Safe for decoration) diff --git a/resources/assets/tinker/manuals/firstday.xml b/resources/assets/tinker/manuals/firstday.xml index 5f069fa4..c7055513 100644 --- a/resources/assets/tinker/manuals/firstday.xml +++ b/resources/assets/tinker/manuals/firstday.xml @@ -37,19 +37,6 @@ You can then shape a material in a part builder with the pattern, then combine p Together these make the Tool Workshop. It is recommended you keep all of these nearby when using any of them. - -Oreberry Bushes - -Sometime in your travels you will happen upon the bush known as the Oreberry. They grow underground in dark areas, and require close to complete darkness to produce anything. - -The berries can be melted down into nuggets and ingots, making them an invaluable source of metals. - - - -Oreberries in their natural environment -tinker:manuals/oreberries.png - - Blank Pattern @@ -98,6 +85,49 @@ The berries can be melted down into nuggets and ingots, making them an invaluabl + +Drying Rack + + dryingrack + three + + + + +Oreberry Bushes + +Sometime in your travels you will happen upon the bush known as the Oreberry. They grow underground in dark areas, and require close to complete darkness to produce anything. + +The berries can be melted down into nuggets and ingots, making them an invaluable source of metals. + + + +Oreberries in their natural environment +tinker:manuals/oreberries.png + + + +Slime Channels + +Slime channels are useful for moving items or entities around. They are used as a sort of easily placeable water and can be paired with bounce pads for best effect. + + + +Slime Channel + + slimechannel + two + + + + +Bounce Pad + + bouncepad + two + + + A few traps or blockades may help with your early survival experience diff --git a/resources/assets/tinker/manuals/materials.xml b/resources/assets/tinker/manuals/materials.xml index 24f65b00..b2bf4097 100644 --- a/resources/assets/tinker/manuals/materials.xml +++ b/resources/assets/tinker/manuals/materials.xml @@ -673,13 +673,27 @@ Class: Ranged Projectile Launcher Steel steelsword -An Iron alloy. The method for obtaining this is unknown. Enemy chainmail seems to be made of it. +An Iron alloy. The method for obtaining this is unknown. - Requires the Smeltery
steelingot
+ +Pig Iron +pigironsword +PigIron +An Iron alloy. It seems to be made of blood, iron, and emeralds. +- Requires the Smeltery + +
pigironingot
+
+
+ + + + Diamond Adding a diamond to the edge of a tool seems to make it more resilient. diff --git a/resources/assets/tinker/manuals/smeltery.xml b/resources/assets/tinker/manuals/smeltery.xml index 17af75c5..6137ea9c 100644 --- a/resources/assets/tinker/manuals/smeltery.xml +++ b/resources/assets/tinker/manuals/smeltery.xml @@ -48,6 +48,10 @@ The main structure for melting metals is called the Smeltery. It is larger than When working with the Smeltery, there are a few things to keep in mind: +* The Smeltery functions as a large liquid tank. It is capable of melting metals and mixing various things. + +* Drains function as input/output for the tank. If you need to get liquids back into the structure, simply pour them into a drain. + * Ores naturally have more material than processed versions, such as ingots. The Smeltery will preserve the full value of the ores - roughly twice as much as a regular furnace would provide. * Mixing two or more metals in the Smeltery may result in an alloy. The process happens automatically. @@ -127,6 +131,34 @@ Other liquid removal objects will work, but are frowned upon. An example picture Alumite, made from Aluminum(5), Iron(2), and Obsidian(2) alumiteingot + + Pig Iron, made from Iron(1), Blood(1), and Emeralds(1) + pigironingot + + + + +There exist a few liquids that are gained through strange means. Currently known liquids are: + + Blood, damaging entities in the Smeltery + bloodbucket + + + Liquified Emeralds, melting down emeralds or villagers + emeraldbucket + + + Glue, melting down horses in the Smeltery + gluebucket + + + Slime, found on slime islands. It functions as a spawner + slimebucket + + + Ender, either melting down ender pearls or endermen + enderbucket + @@ -253,4 +285,10 @@ Part casts must be created by pouring metal around existing parts, like a pickax endstone + +Glueball +glueball + + + diff --git a/resources/assets/tinker/textures/items/materials/cast_nugget.png b/resources/assets/tinker/textures/items/materials/cast_nugget.png new file mode 100644 index 00000000..6a00ef4f Binary files /dev/null and b/resources/assets/tinker/textures/items/materials/cast_nugget.png differ diff --git a/src/tconstruct/client/TProxyClient.java b/src/tconstruct/client/TProxyClient.java index 1254f325..f83344d4 100644 --- a/src/tconstruct/client/TProxyClient.java +++ b/src/tconstruct/client/TProxyClient.java @@ -337,6 +337,7 @@ public class TProxyClient extends TProxyCommon TConstructClientRegistry.registerManualIcon("arditeingot", new ItemStack(TContent.materials, 1, 4)); TConstructClientRegistry.registerManualIcon("copperingot", new ItemStack(TContent.materials, 1, 9)); TConstructClientRegistry.registerManualIcon("steelingot", new ItemStack(TContent.materials, 1, 16)); + TConstructClientRegistry.registerManualIcon("pigironingot", new ItemStack(TContent.materials, 1, 34)); // Tool parts TConstructClientRegistry.registerManualIcon("pickhead", new ItemStack(TContent.pickaxeHead, 1, 2)); @@ -368,6 +369,12 @@ public class TProxyClient extends TProxyCommon TConstructClientRegistry.registerManualIcon("bowstring", new ItemStack(TContent.bowstring, 1, 0)); TConstructClientRegistry.registerManualIcon("arrowhead", new ItemStack(TContent.arrowhead, 1, 2)); TConstructClientRegistry.registerManualIcon("fletching", new ItemStack(TContent.fletching, 1, 0)); + + TConstructClientRegistry.registerManualIcon("bloodbucket", new ItemStack(TContent.buckets, 1, 16)); + TConstructClientRegistry.registerManualIcon("emeraldbucket", new ItemStack(TContent.buckets, 1, 15)); + TConstructClientRegistry.registerManualIcon("gluebucket", new ItemStack(TContent.buckets, 1, 25)); + TConstructClientRegistry.registerManualIcon("slimebucket", new ItemStack(TContent.buckets, 1, 24)); + TConstructClientRegistry.registerManualIcon("enderbucket", new ItemStack(TContent.buckets, 1, 23)); // ToolIcons TConstructClientRegistry.registerManualIcon("pickicon", @@ -412,6 +419,7 @@ public class TProxyClient extends TProxyCommon ItemStack stick = new ItemStack(Item.stick, 1, 0); ItemStack plank = new ItemStack(Block.planks, 1, 0); + ItemStack plankSlab = new ItemStack(Block.woodSingleSlab, 1, 0); ItemStack workbench = new ItemStack(Block.workbench, 1, 0); ItemStack chest = new ItemStack(Block.chest, 1, 0); ItemStack log = new ItemStack(Block.wood, 1, 0); @@ -451,6 +459,8 @@ public class TProxyClient extends TProxyCommon TConstructClientRegistry.registerManualSmallRecipe("partcrafter", new ItemStack(TContent.toolStationWood, 1, 1), null, pattern, null, log); TConstructClientRegistry.registerManualSmallRecipe("patternchest", new ItemStack(TContent.toolStationWood, 1, 5), null, pattern, null, chest); TConstructClientRegistry.registerManualSmallRecipe("stenciltable", new ItemStack(TContent.toolStationWood, 1, 10), null, pattern, null, plank); + TConstructClientRegistry.registerManualSmallRecipe("slimechannel", new ItemStack(TContent.slimeChannel, 1, 0), new ItemStack(TContent.slimeGel, 1, 0), new ItemStack(Item.redstone), null, null); + TConstructClientRegistry.registerManualSmallRecipe("bouncepad", new ItemStack(TContent.slimePad, 1, 0), new ItemStack(TContent.slimeChannel), new ItemStack(Item.slimeBall), null, null); TConstructClientRegistry.registerManualLargeRecipe("toolforge", new ItemStack(TContent.toolForge, 1, 0), searedbrickBlock, searedbrickBlock, searedbrickBlock, ironblock, new ItemStack( TContent.toolStationWood, 1, 0), ironblock, ironblock, null, ironblock); @@ -473,6 +483,8 @@ public class TProxyClient extends TProxyCommon TConstructClientRegistry.registerManualSmallRecipe("searedbricks", new ItemStack(TContent.smeltery, 1, 2), searedbrick, searedbrick, searedbrick, searedbrick); TConstructClientRegistry.registerManualLargeRecipe("smelterycontroller", new ItemStack(TContent.smeltery, 1, 0), searedbrick, searedbrick, searedbrick, searedbrick, null, searedbrick, searedbrick, searedbrick, searedbrick); + TConstructClientRegistry.registerManualLargeRecipe("dryingrack", new ItemStack(TContent.dryingRack, 1, 0), null, null, null, plankSlab, plankSlab, plankSlab, null, null, + null); TConstructClientRegistry.registerManualLargeRecipe("smelterydrain", new ItemStack(TContent.smeltery, 1, 1), searedbrick, null, searedbrick, searedbrick, null, searedbrick, searedbrick, null, searedbrick); @@ -535,6 +547,7 @@ public class TProxyClient extends TProxyCommon TConstructClientRegistry.registerManualSmeltery("clearglass", new ItemStack(TContent.clearGlass), new ItemStack(TContent.moltenGlass, 1), null); TConstructClientRegistry.registerManualSmeltery("searedstone", new ItemStack(TContent.smeltery, 1, 4), new ItemStack(TContent.moltenStone, 1), null); TConstructClientRegistry.registerManualSmeltery("endstone", new ItemStack(Block.whiteStone), new ItemStack(TContent.moltenEnder, 1), new ItemStack(Block.obsidian)); + TConstructClientRegistry.registerManualSmeltery("glueball", new ItemStack(TContent.materials, 1, 36), new ItemStack(TContent.glueFluidBlock, 1), null); } diff --git a/src/tconstruct/common/TContent.java b/src/tconstruct/common/TContent.java index f2bac884..b24059f5 100644 --- a/src/tconstruct/common/TContent.java +++ b/src/tconstruct/common/TContent.java @@ -1211,6 +1211,7 @@ public class TContent implements IFuelHandler GameRegistry.addShapelessRecipe(new ItemStack(manualBook, 2, 1), new ItemStack(manualBook, 1, 1), Item.book); GameRegistry.addShapelessRecipe(new ItemStack(manualBook, 1, 2), new ItemStack(manualBook, 1, 1)); GameRegistry.addShapelessRecipe(new ItemStack(manualBook, 2, 2), new ItemStack(manualBook, 1, 2), Item.book); + GameRegistry.addShapelessRecipe(new ItemStack(manualBook, 1, 3), new ItemStack(manualBook, 1, 2)); // alternativ Vanilla Book Recipe GameRegistry.addShapelessRecipe(new ItemStack(Item.book), Item.paper, Item.paper, Item.paper, Item.silk, blankPattern, blankPattern); // Paperstack Recipe @@ -1234,8 +1235,6 @@ public class TContent implements IFuelHandler GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(materials, 1, 25), patSurround, 'm', "nuggetGold", '#', new ItemStack(Item.silk))); // Silky Jewel Recipes GameRegistry.addRecipe(new ItemStack(materials, 1, 26), " c ", "cec", " c ", 'c', new ItemStack(materials, 1, 25), 'e', new ItemStack(Item.emerald)); - // Ender Stuff - GameRegistry.addRecipe(new ItemStack(Item.enderPearl, 4), "m", 'm', new ItemStack(metalBlock.blockID, 1, 10)); // Wooden Armor Recipes GameRegistry.addRecipe(new ShapedOreRecipe(helmetWood, new Object[] { "www", "w w", 'w', "logWood" })); GameRegistry.addRecipe(new ShapedOreRecipe(chestplateWood, new Object[] { "w w", "www", "www", 'w', "logWood" })); @@ -1426,7 +1425,7 @@ public class TContent implements IFuelHandler GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(slimeExplosive, 1, 0), "slimeball", Block.tnt)); GameRegistry.addShapelessRecipe(new ItemStack(slimeChannel, 1, 0), new ItemStack(slimeGel, 1, Short.MAX_VALUE), new ItemStack(Item.redstone)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(slimePad, 1, 0), slimeChannel, new ItemStack(slimeGel, 1, Short.MAX_VALUE), "slimeBall")); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(slimePad, 1, 0), slimeChannel, "slimeBall")); } private void addRecipesForFurnace () diff --git a/src/tconstruct/items/GoldenHead.java b/src/tconstruct/items/GoldenHead.java index 647ef6a3..0e7b3ee2 100644 --- a/src/tconstruct/items/GoldenHead.java +++ b/src/tconstruct/items/GoldenHead.java @@ -75,7 +75,7 @@ public class GoldenHead extends ItemFood @SideOnly(Side.CLIENT) public void addInformation (ItemStack stack, EntityPlayer player, List list, boolean par4) { - list.add(StatCollector.translateToLocal("goldenhead1.tooltip")); - list.add(StatCollector.translateToLocal("goldenhead2.tooltip")); + list.add("\u00a75\u00a7o"+StatCollector.translateToLocal("goldenhead1.tooltip")); + list.add("\u00a75\u00a7o"+StatCollector.translateToLocal("goldenhead2.tooltip")); } } diff --git a/src/tconstruct/items/Manual.java b/src/tconstruct/items/Manual.java index 14a3d14e..b4a71253 100644 --- a/src/tconstruct/items/Manual.java +++ b/src/tconstruct/items/Manual.java @@ -15,8 +15,8 @@ import cpw.mods.fml.relauncher.SideOnly; public class Manual extends CraftingItem { - static String[] name = new String[] { "beginner", "toolstation", "smeltery" }; - static String[] textureName = new String[] { "tinkerbook_diary", "tinkerbook_toolstation", "tinkerbook_smeltery" }; + static String[] name = new String[] { "beginner", "toolstation", "smeltery", "diary" }; + static String[] textureName = new String[] { "tinkerbook_diary", "tinkerbook_toolstation", "tinkerbook_smeltery", "tinkerbook_blue" }; public Manual(int id) { @@ -41,13 +41,13 @@ public class Manual extends CraftingItem switch (stack.getItemDamage()) { case 0: - list.add(StatCollector.translateToLocal("manual1.tooltip")); + list.add("\u00a7o"+StatCollector.translateToLocal("manual1.tooltip")); break; case 1: - list.add(StatCollector.translateToLocal("manual2.tooltip")); + list.add("\u00a7o"+StatCollector.translateToLocal("manual2.tooltip")); break; case 2: - list.add(StatCollector.translateToLocal("manual3.tooltip")); + list.add("\u00a7o"+StatCollector.translateToLocal("manual3.tooltip")); break; } } diff --git a/src/tconstruct/items/StrangeFood.java b/src/tconstruct/items/StrangeFood.java index a92e5eaa..7bead988 100644 --- a/src/tconstruct/items/StrangeFood.java +++ b/src/tconstruct/items/StrangeFood.java @@ -19,7 +19,7 @@ public class StrangeFood extends SpecialFood @SideOnly(Side.CLIENT) public void addInformation (ItemStack stack, EntityPlayer player, List list, boolean par4) { - list.add(StatCollector.translateToLocal("strangefood1.tooltip")); - list.add(StatCollector.translateToLocal("strangefood2.tooltip")); + list.add("\u00a7b\u00a7o"+StatCollector.translateToLocal("strangefood1.tooltip")); + list.add("\u00a7b\u00a7o"+StatCollector.translateToLocal("strangefood2.tooltip")); } } diff --git a/src/tconstruct/items/blocks/HamboneItemBlock.java b/src/tconstruct/items/blocks/HamboneItemBlock.java index 843493de..f74c00fa 100644 --- a/src/tconstruct/items/blocks/HamboneItemBlock.java +++ b/src/tconstruct/items/blocks/HamboneItemBlock.java @@ -39,7 +39,7 @@ public class HamboneItemBlock extends ItemBlock @SideOnly(Side.CLIENT) public void addInformation (ItemStack stack, EntityPlayer player, List list, boolean par4) { - list.add(StatCollector.translateToLocal("hambone1.tooltip")); + list.add("\u00A74"+StatCollector.translateToLocal("hambone1.tooltip")); list.add(StatCollector.translateToLocal("hambone2.tooltip")); } diff --git a/src/tconstruct/items/blocks/SmelteryItemBlock.java b/src/tconstruct/items/blocks/SmelteryItemBlock.java index dfafdd05..ef8bda2b 100644 --- a/src/tconstruct/items/blocks/SmelteryItemBlock.java +++ b/src/tconstruct/items/blocks/SmelteryItemBlock.java @@ -1,8 +1,14 @@ package tconstruct.items.blocks; +import java.util.List; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; import net.minecraft.util.MathHelper; +import net.minecraft.util.StatCollector; public class SmelteryItemBlock extends ItemBlock { @@ -25,4 +31,27 @@ public class SmelteryItemBlock extends ItemBlock int pos = MathHelper.clamp_int(itemstack.getItemDamage(), 0, blockType.length - 1); return (new StringBuilder()).append("Smeltery.").append(blockType[pos]).toString(); } + + @Override + @SideOnly(Side.CLIENT) + public void addInformation (ItemStack stack, EntityPlayer player, List list, boolean par4) + { + switch (stack.getItemDamage()) + { + case 0: + list.add(StatCollector.translateToLocal("smeltery.controller.tooltip")); + break; + case 1: + list.add(StatCollector.translateToLocal("smeltery.drain.tooltip1")); + list.add(StatCollector.translateToLocal("smeltery.drain.tooltip2")); + break; + case 3: + list.add(StatCollector.translateToLocal("smeltery.furnace.tooltip")); + break; + default: + list.add(StatCollector.translateToLocal("smeltery.brick.tooltip1")); + list.add(StatCollector.translateToLocal("smeltery.brick.tooltip2")); + break; + } + } }