diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/InitBooklet.java b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/InitBooklet.java index 351532e58..4543ce866 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/InitBooklet.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/InitBooklet.java @@ -119,6 +119,7 @@ public class InitBooklet{ new BookletChapter("repairer", ActuallyAdditionsAPI.entryFunctionalRF, new ItemStack(InitBlocks.blockItemRepairer), new PageCrafting(1, BlockCrafting.recipeRepairer).addTextReplacement("", TileEntityItemRepairer.ENERGY_USE)); new BookletChapter("longRangeBreaker", ActuallyAdditionsAPI.entryFunctionalRF, new ItemStack(InitBlocks.blockDirectionalBreaker), new PageTextOnly(1).addTextReplacement("", TileEntityDirectionalBreaker.ENERGY_USE).addTextReplacement("", TileEntityDirectionalBreaker.RANGE), new PageCrafting(2, BlockCrafting.recipeDirectionalBreaker).setPageStacksWildcard()); new BookletChapter("playerInterface", ActuallyAdditionsAPI.entryFunctionalRF, new ItemStack(InitBlocks.blockPlayerInterface), new PageTextOnly(1).addTextReplacement("", TileEntityPlayerInterface.DEFAULT_RANGE), new PageCrafting(2, BlockCrafting.recipePlayerInterface).setNoText()).setSpecial(); + new BookletChapter("displayStand", ActuallyAdditionsAPI.entryFunctionalRF, new ItemStack(InitBlocks.blockDisplayStand), new PageTextOnly(1), new PageTextOnly(2), new PageCrafting(3, BlockCrafting.recipeDisplayStand).setNoText()).setSpecial(); //RF Generating Blocks new BookletChapter("solarPanel", ActuallyAdditionsAPI.entryGeneratingRF, new ItemStack(InitBlocks.blockFurnaceSolar), new PageTextOnly(1).addTextReplacement("", TileEntityFurnaceSolar.PRODUCE), new PageCrafting(2, BlockCrafting.recipeSolar).setNoText()); @@ -146,6 +147,7 @@ public class InitBooklet{ } new BookletChapter("potionRings", ActuallyAdditionsAPI.entryItemsNonRF, new ItemStack(InitItems.itemPotionRing), potionRingPages.toArray(new BookletPage[potionRingPages.size()])); new BookletChapter("spawnerChanger", ActuallyAdditionsAPI.entryItemsNonRF, new ItemStack(InitItems.itemSpawnerChanger), new PageTextOnly(1), new PageCrafting(2, ItemCrafting.recipeSpawnerChanger).setNoText()); + new BookletChapter("itemFilter", ActuallyAdditionsAPI.entryFunctionalNonRF, new ItemStack(InitItems.itemFilter), new PageTextOnly(1), new PageCrafting(2, ItemCrafting.recipeFilter).setNoText()).setImportant(); //RF Using Items new BookletChapter("drill", ActuallyAdditionsAPI.entryItemsRF, new ItemStack(InitItems.itemDrill, 1, TheColoredLampColors.LIGHT_BLUE.ordinal()), new PageTextOnly(1), new PageCrafting(2, ItemCrafting.recipeDrill).setNoText(), new PageCrafting(3, ItemCrafting.recipesDrillColoring), new PageCrafting(4, ItemCrafting.recipeDrillCore).setNoText(), new PageCrafting(5, ItemCrafting.recipeDrillSpeedI).setNoText(), new PageCrafting(6, ItemCrafting.recipeDrillSpeedII).setNoText(), new PageCrafting(7, ItemCrafting.recipeDrillSpeedIII).setNoText(), new PageCrafting(8, ItemCrafting.recipeDrillFortuneI).setNoText(), new PageCrafting(9, ItemCrafting.recipeDrillFortuneII).setNoText(), new PageCrafting(10, ItemCrafting.recipeDrillSilk).setNoText(), new PageCrafting(11, ItemCrafting.recipeDrillThree).setNoText(), new PageCrafting(12, ItemCrafting.recipeDrillFive).setNoText(), new PageCrafting(13, ItemCrafting.recipeDrillPlacing).setNoText()).setSpecial(); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigCrafting.java b/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigCrafting.java index 6e730e6a5..e10f087b1 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigCrafting.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigCrafting.java @@ -161,7 +161,9 @@ public enum ConfigCrafting{ FIREWORK_BOX("Firework Box", ConfigCategories.BLOCKS_CRAFTING), ENDER_STAR("Ender Star", ConfigCategories.ITEMS_CRAFTING), SPAWNER_CHANGER("Spawner Changer", ConfigCategories.ITEMS_CRAFTING), - ITEM_INTERFACE("Item Interface", ConfigCategories.BLOCKS_CRAFTING); + ITEM_INTERFACE("Item Interface", ConfigCategories.BLOCKS_CRAFTING), + DISPLAY_STAND("Display Stand", ConfigCategories.BLOCKS_CRAFTING), + FILTER("Item Filter", ConfigCategories.ITEMS_CRAFTING); public final String name; public final String category; diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/BlockCrafting.java b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/BlockCrafting.java index 2c2374221..d4598cf78 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/BlockCrafting.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/BlockCrafting.java @@ -87,6 +87,7 @@ public class BlockCrafting{ public static IRecipe recipeItemInterface; public static IRecipe recipeBookStand; public static IRecipe recipePlayerInterface; + public static IRecipe recipeDisplayStand; public static void init(){ @@ -104,6 +105,16 @@ public class BlockCrafting{ recipeFireworkBox = RecipeUtil.lastIRecipe(); } + //Display Stand + if(ConfigCrafting.DISPLAY_STAND.isEnabled()){ + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockDisplayStand), + " R ", "EEE", "GGG", + 'R', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.COIL_ADVANCED.ordinal()), + 'E', new ItemStack(InitBlocks.blockTestifiBucksGreenWall), + 'G', new ItemStack(InitBlocks.blockTestifiBucksWhiteWall))); + recipeDisplayStand = RecipeUtil.lastIRecipe(); + } + //Miner if(ConfigCrafting.MINER.isEnabled()){ GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockMiner), diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/ItemCrafting.java b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/ItemCrafting.java index 858e31c46..79153cf4f 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/ItemCrafting.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/ItemCrafting.java @@ -85,6 +85,7 @@ public class ItemCrafting{ public static IRecipe recipeEnderStar; public static IRecipe recipeRarmorModuleReconstructor; public static IRecipe recipeSpawnerChanger; + public static IRecipe recipeFilter; public static void init(){ @@ -117,6 +118,15 @@ public class ItemCrafting{ recipeChestToCrateUpgrade = RecipeUtil.lastIRecipe(); } + //Filter + if(ConfigCrafting.FILTER.isEnabled()){ + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitItems.itemFilter), + "III", "IQI", "III", + 'I', new ItemStack(Blocks.IRON_BARS), + 'Q', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.QUARTZ.ordinal()))); + recipeFilter = RecipeUtil.lastIRecipe(); + } + //Crate Keeper if(ConfigCrafting.CRATE_KEEPER.isEnabled()){ GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitItems.itemCrateKeeper), diff --git a/src/main/resources/assets/actuallyadditions/lang/en_US.lang b/src/main/resources/assets/actuallyadditions/lang/en_US.lang index 0c413a3b7..436e1cf78 100644 --- a/src/main/resources/assets/actuallyadditions/lang/en_US.lang +++ b/src/main/resources/assets/actuallyadditions/lang/en_US.lang @@ -892,4 +892,11 @@ booklet.actuallyadditions.chapter.waterBowl.name=Bowl of Water booklet.actuallyadditions.chapter.waterBowl.text.1=The Bowl of Water can be obtained by right-cliking a bowl on water anywhere in the world. When the Bowl of Water is then right-clicked onto a block, the water will be placed, much like a Bucket. This can be used, for example, for early game farms. booklet.actuallyadditions.chapter.playerInterface.name=Player Interface -booklet.actuallyadditions.chapter.playerInterface.text.1=The Player Interface works in a similar way to the Phantomface, except it is connected to a player instead of a block, and the connection is established by placing it down. When inputting items, they will move to the player's inventory. Also, when inputting RF, it will charge the items in the player's inventory. It has a default range of blocks, however, it can be expanded by placing up to 3 Phantom Boosters on top of it. \ No newline at end of file +booklet.actuallyadditions.chapter.playerInterface.text.1=The Player Interface works in a similar way to the Phantomface, except it is connected to a player instead of a block, and the connection is established by placing it down. When inputting items, they will move to the player's inventory. Also, when inputting RF, it will charge the items in the player's inventory. It has a default range of blocks, however, it can be expanded by placing up to 3 Phantom Boosters on top of it. + +booklet.actuallyadditions.chapter.displayStand.name=Display Stand +booklet.actuallyadditions.chapter.displayStand.text.1=The Display Stand is a block that can, for one, display any item or block by right-clicking with it onto the display stand. It will then be floating around on top. To take it out of there again, just right-click with an empty hand. The other feature, however, is that some items can be put onto it, having special effects. This, however, will require the stand to get RF. Read more on the next page. +booklet.actuallyadditions.chapter.displayStand.text.2=The Leaf Blower and Advanced Leaf Blower can be placed onto the display stand, resulting in the grass and leaves around it to be blown away. Potion Rings can be placed onto the display stand. The normal version will give the specified potion effect to only one living entity in a small area, while the advanced version will give a potion effect to all living entities in a big area while using up a significant amount of RF. + +booklet.actuallyadditions.chapter.itemFilter.name=Item Filter +booklet.actuallyadditions.chapter.itemFilter.text.1=The Item Filter can be used in Advanced Item Laser Relays, ESDs and Ranged Collectors to enlargen the size of their whitelist. This can be done by right-clicking with the filter in hand and placing items to be filtered inside of it. The filter can then be placed into any whitelist slot in the desired machine. For more information on this, hover over the whitelist buttons in the GUIs of whitelistable machines! \ No newline at end of file