diff --git a/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java b/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java index 7da01f2e3..280bf24b0 100644 --- a/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java +++ b/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java @@ -56,7 +56,7 @@ public class InitBooklet{ //Getting Started chapterIntro = new BookletChapter("intro", entryGettingStarted, new ItemStack(InitItems.itemLexicon), new PageTextOnly(1), new PageTextOnly(2), new PageTextOnly(3)); new BookletChapter("bookTutorial", entryGettingStarted, new ItemStack(InitItems.itemLexicon), new PageTextOnly(1), new PageTextOnly(2), new PageCrafting(3, ItemCrafting.recipeBook)); - new BookletChapterReconstructor("crystals", entryGettingStarted, new ItemStack(InitBlocks.blockAtomicReconstructor), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.RECONSTRUCTOR_BASE_ENERGY_USE.getValue()), new PageTextOnly(2), new PagePicture(3, "pageAtomicReconstructor", 0).setNoText(), new PageTextOnly(4), new PageCrafting(5, BlockCrafting.recipeAtomicReconstructor).setNoText()).setSpecial(); + new BookletChapterReconstructor("crystals", entryGettingStarted, new ItemStack(InitBlocks.blockAtomicReconstructor), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.RECONSTRUCTOR_BASE_ENERGY_USE.getValue()), new PageTextOnly(2), new PagePicture(3, "pageAtomicReconstructor", 0).setNoText(), new PageTextOnly(4), new PageCrafting(5, BlockCrafting.recipeAtomicReconstructor).setNoText(), new PageCrafting(6, ItemCrafting.recipeLens).setNoText(), new PageReconstructor(7, new ItemStack(InitItems.itemColorLens)).setNoText()).setSpecial(); new BookletChapter("coalGen", entryGettingStarted, new ItemStack(InitBlocks.blockCoalGenerator), new PageCrafting(1, BlockCrafting.recipeCoalGen).addTextReplacement("", ConfigIntValues.COAL_GEN_ENERGY_PRODUCED.getValue())); new BookletChapter("craftingIngs", entryGettingStarted, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.COIL.ordinal()), new PageTextOnly(1), new PageCrafting(2, ItemCrafting.recipeCoil).setNoText(), new PageCrafting(3, ItemCrafting.recipeCoilAdvanced).setNoText(), new PageCrafting(4, BlockCrafting.recipeCase).setNoText(), new PageCrafting(5, BlockCrafting.recipeStoneCase).setNoText(), new PageCrafting(6, BlockCrafting.recipeEnderPearlBlock).setNoText(), new PageCrafting(7, BlockCrafting.recipeEnderCase).setNoText(), new PageCrafting(8, ItemCrafting.recipeRing).setNoText(), new PageCrafting(9, ItemCrafting.recipeKnifeHandle).setNoText(), new PageCrafting(10, ItemCrafting.recipeKnifeBlade).setNoText(), new PageCrafting(11, ItemCrafting.recipeKnife).setNoText(), new PageCrafting(12, ItemCrafting.recipeDough).setNoText(), new PageCrafting(13, ItemCrafting.recipeRiceDough).setNoText(), new PageCrafting(14, BlockCrafting.recipeIronCase).setNoText()).setImportant(); diff --git a/src/main/java/ellpeck/actuallyadditions/crafting/ItemCrafting.java b/src/main/java/ellpeck/actuallyadditions/crafting/ItemCrafting.java index b2d5639c1..04f8dc32d 100644 --- a/src/main/java/ellpeck/actuallyadditions/crafting/ItemCrafting.java +++ b/src/main/java/ellpeck/actuallyadditions/crafting/ItemCrafting.java @@ -77,10 +77,18 @@ public class ItemCrafting{ public static IRecipe recipeLaserWrench; public static IRecipe recipeDrillCore; public static IRecipe recipeBlackDye; + public static IRecipe recipeLens; public static void init(){ - //Black Dye + //Lens + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitItems.itemMisc, 1, TheMiscItems.LENS.ordinal()), + "GGG", "GBG", "GGG", + 'G', "blockGlass", + 'B', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.QUARTZ.ordinal()))); + recipeLens = Util.GetRecipes.lastIRecipe(); + + //Black Dye GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(InitItems.itemMisc, 2, TheMiscItems.BLACK_DYE.ordinal()), new ItemStack(InitBlocks.blockBlackLotus))); recipeBlackDye = Util.GetRecipes.lastIRecipe(); diff --git a/src/main/java/ellpeck/actuallyadditions/items/metalists/TheMiscItems.java b/src/main/java/ellpeck/actuallyadditions/items/metalists/TheMiscItems.java index ae7263c3e..a19fcdb8c 100644 --- a/src/main/java/ellpeck/actuallyadditions/items/metalists/TheMiscItems.java +++ b/src/main/java/ellpeck/actuallyadditions/items/metalists/TheMiscItems.java @@ -31,7 +31,8 @@ public enum TheMiscItems{ CUP("Cup", EnumRarity.uncommon), BAT_WING("BatWing", EnumRarity.rare), DRILL_CORE("DrillCore", EnumRarity.uncommon), - BLACK_DYE("BlackDye", EnumRarity.epic); + BLACK_DYE("BlackDye", EnumRarity.epic), + LENS("Lens", EnumRarity.uncommon); public final String name; public final EnumRarity rarity; diff --git a/src/main/java/ellpeck/actuallyadditions/ore/InitOreDict.java b/src/main/java/ellpeck/actuallyadditions/ore/InitOreDict.java index 696545d53..9f7fc4714 100644 --- a/src/main/java/ellpeck/actuallyadditions/ore/InitOreDict.java +++ b/src/main/java/ellpeck/actuallyadditions/ore/InitOreDict.java @@ -108,6 +108,9 @@ public class InitOreDict{ addOre(InitBlocks.blockTestifiBucksWhiteWall, "blockWhiteBrick"); addOre(InitBlocks.blockTestifiBucksGreenWall, "blockGreenBrick"); + + addOre(InitItems.itemColorLens, "itemColorLens"); + addOre(InitItems.itemMisc, TheMiscItems.LENS.ordinal(), "itemLens"); } private static void addOre(ItemStack stack, String name){ diff --git a/src/main/java/ellpeck/actuallyadditions/recipe/ReconstructorRecipeHandler.java b/src/main/java/ellpeck/actuallyadditions/recipe/ReconstructorRecipeHandler.java index 8d0ce622b..e4dddf988 100644 --- a/src/main/java/ellpeck/actuallyadditions/recipe/ReconstructorRecipeHandler.java +++ b/src/main/java/ellpeck/actuallyadditions/recipe/ReconstructorRecipeHandler.java @@ -10,6 +10,7 @@ package ellpeck.actuallyadditions.recipe; +import ellpeck.actuallyadditions.blocks.metalists.TheColoredLampColors; import ellpeck.actuallyadditions.config.values.ConfigCrafting; import ellpeck.actuallyadditions.util.AssetUtil; import ellpeck.actuallyadditions.util.Util; @@ -26,6 +27,7 @@ public class ReconstructorRecipeHandler{ public static final int RECIPES_FOR_BOOKLET_PAGE = 12; public static void init(){ + //Crystal Blocks addRecipe("blockRedstone", "blockCrystalRed", 400); addRecipe("blockLapis", "blockCrystalBlue", 400); addRecipe("blockDiamond", "blockCrystalLightBlue", 6000); @@ -33,6 +35,7 @@ public class ReconstructorRecipeHandler{ addRecipe("blockCoal", "blockCrystalBlack", 600); addRecipe("blockIron", "blockCrystalWhite", 800); + //Crystal Items addRecipe("dustRedstone", "crystalRed", 40); addRecipe("gemLapis", "crystalBlue", 40); addRecipe("gemDiamond", "crystalLightBlue", 600); @@ -40,10 +43,21 @@ public class ReconstructorRecipeHandler{ addRecipe("coal", "crystalBlack", 60); addRecipe("ingotIron", "crystalWhite", 80); + //Lenses + addRecipe("itemLens", "itemColorLens", 5000); + addRecipe("itemColorLens", "itemLens", 5000); + + //Misc if(ConfigCrafting.RECONSTRUCTOR_MISC.isEnabled()){ addRecipe("sand", "soulSand", 20000); addRecipe("blockQuartz", "blockWhiteBrick", 10); addRecipe("blockQuartz", "blockGreenBrick", 10, LensType.COLOR); + + //Colors + for(int i = 0; i < TheColoredLampColors.values().length-1; i++){ + addRecipe("dye"+TheColoredLampColors.values()[i].name, "dye"+TheColoredLampColors.values()[i+1].name, 2000); + } + addRecipe("dye"+TheColoredLampColors.values()[15].name, "dye"+TheColoredLampColors.values()[0].name, 2000); } } diff --git a/src/main/resources/assets/actuallyadditions/lang/en_US.lang b/src/main/resources/assets/actuallyadditions/lang/en_US.lang index 394e58993..d21167ac4 100644 --- a/src/main/resources/assets/actuallyadditions/lang/en_US.lang +++ b/src/main/resources/assets/actuallyadditions/lang/en_US.lang @@ -305,6 +305,8 @@ item.actuallyadditions.itemCrystalLightBlue.name=Diamatine Crystal item.actuallyadditions.itemCrystalGreen.name=Emeradic Crystal item.actuallyadditions.itemCrystalBlack.name=Void Crystal item.actuallyadditions.itemCrystalWhite.name=Enori Crystal +item.actuallyadditions.itemMiscLens.name=Lens +item.actuallyadditions.itemColorLens.name=Lens: Color #Tooltips tooltip.actuallyadditions.onSuffix.desc=On @@ -596,8 +598,8 @@ booklet.actuallyadditions.chapter.blackLotus.text.1=Think of this: You need t booklet.actuallyadditions.chapter.blackLotus.text.2=No, not that one, Vaz booklet.actuallyadditions.chapter.crystals.name=Crystals and Reconstructor -booklet.actuallyadditions.chapter.crystals.text.1=For many Crafting Operations in Actually Additions, you will need Crystals or Crystal Blocks. These can be made using an Atomic Reconstructor. Just place one down facing in any direction and it will shoot out a red laser. When placing some of the blocks shown on the following pages in front of the laser, they will be converted into Crystals. During the shooting of a laser and one conversion, it uses at least RF, but the rate varies depending on the converted block. -booklet.actuallyadditions.chapter.crystals.text.2=When hitting a block with the Laser, it will convert the other blocks around it, too. This includes items on the ground. When trying to power the Reconstructor, you will notice that many generators require crystals. Not to worry, though, as you can use Coal Generators to create your first couple of crystals before you can upgrade to better sources. For additional Reconstructor Recipes, see the "Useful Reconstructor Recipes" Entry. +booklet.actuallyadditions.chapter.crystals.text.1=The Atomic Reconstructor is used to craft Crystals, which are the main crafting ingredient in most items from Actually Additions. Upon being supplied with power, it shoots out a Laser. When the Laser hits a block, it will convert all surrounding items and blocks, provided they can be converted. When shooting a laser, it uses RF, but additional rates vary depending on the conversion. +booklet.actuallyadditions.chapter.crystals.text.2=The Reconstructor can be upgraded, however, by the use of Lenses. They can be applied to the Reconstructor by right-clicking with one in hand, and taken out again when right-clicking with an empty hand. When looking at Recipes, the Lens needed for the operation will also be shown. The Crafting Recipes for the Lenses can also be found on the following pages. booklet.actuallyadditions.chapter.crystals.text.4=When you have crafted a couple of items, you might want to find a way to automate this. There is a very simple way to do accomplish this: Place the Atomic Reconstructor down facing into a Precision Dropper (to find it, look it up in the All Items and Search Entry!). Next, place a Ranged Collector in the area that has the converted items set as a whitelist. Now you can just chuck your raw materials into the Dropper to convert them! booklet.actuallyadditions.chapter.bookTutorial.name=Intro to the Manual diff --git a/src/main/resources/assets/actuallyadditions/textures/items/itemColorLens.png b/src/main/resources/assets/actuallyadditions/textures/items/itemColorLens.png index bdf3018a6..2c95b5d07 100644 Binary files a/src/main/resources/assets/actuallyadditions/textures/items/itemColorLens.png and b/src/main/resources/assets/actuallyadditions/textures/items/itemColorLens.png differ diff --git a/src/main/resources/assets/actuallyadditions/textures/items/itemMiscLens.png b/src/main/resources/assets/actuallyadditions/textures/items/itemMiscLens.png new file mode 100644 index 000000000..ab7855613 Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/items/itemMiscLens.png differ