diff --git a/src/main/java/ellpeck/actuallyadditions/booklet/GuiBooklet.java b/src/main/java/ellpeck/actuallyadditions/booklet/GuiBooklet.java index 63ad7bb75..b12c2b629 100644 --- a/src/main/java/ellpeck/actuallyadditions/booklet/GuiBooklet.java +++ b/src/main/java/ellpeck/actuallyadditions/booklet/GuiBooklet.java @@ -37,10 +37,10 @@ import java.util.List; @SideOnly(Side.CLIENT) public class GuiBooklet extends GuiScreen{ - public static final ResourceLocation resLoc = AssetUtil.getGuiLocation("guiBooklet"); - public static final ResourceLocation resLocHalloween = AssetUtil.getGuiLocation("guiBookletHalloween"); - public static final ResourceLocation resLocChristmas = AssetUtil.getGuiLocation("guiBookletChristmas"); - public static final ResourceLocation resLocValentine = AssetUtil.getGuiLocation("guiBookletValentinesDay"); + public static final ResourceLocation resLoc = AssetUtil.getBookletGuiLocation("guiBooklet"); + public static final ResourceLocation resLocHalloween = AssetUtil.getBookletGuiLocation("guiBookletHalloween"); + public static final ResourceLocation resLocChristmas = AssetUtil.getBookletGuiLocation("guiBookletChristmas"); + public static final ResourceLocation resLocValentine = AssetUtil.getBookletGuiLocation("guiBookletValentinesDay"); public static final int CHAPTER_BUTTONS_AMOUNT = 13; public static final int TOOLTIP_SPLIT_LENGTH = 200; public int xSize; diff --git a/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java b/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java index 228ed371c..4d8b2da75 100644 --- a/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java +++ b/src/main/java/ellpeck/actuallyadditions/booklet/InitBooklet.java @@ -59,8 +59,8 @@ public class InitBooklet{ } new BookletChapter("lamps", entryMisc, new ItemStack(InitBlocks.blockColoredLampOn, 1, TheColoredLampColors.GREEN.ordinal()), lampPages.toArray(new BookletPage[lampPages.size()])); - new BookletChapter("treasureChest", entryMisc, new ItemStack(InitBlocks.blockTreasureChest), new PageTextOnly(1).setStack(new ItemStack(InitBlocks.blockTreasureChest))).setSpecial(); - new BookletChapter("hairBalls", entryMisc, new ItemStack(InitItems.itemHairyBall), new PageTextOnly(1).setStack(new ItemStack(InitItems.itemHairyBall))).setSpecial(); + new BookletChapter("treasureChest", entryMisc, new ItemStack(InitBlocks.blockTreasureChest), new PagePicture(1, "pageTreasureChest", 150).setStack(new ItemStack(InitBlocks.blockTreasureChest)), new PageTextOnly(2)).setSpecial(); + new BookletChapter("hairBalls", entryMisc, new ItemStack(InitItems.itemHairyBall), new PagePicture(1, "pageFurBalls", 110).setStack(new ItemStack(InitItems.itemHairyBall)), new PageTextOnly(2)).setSpecial(); //No RF Using Blocks new BookletChapter("breaker", entryFunctionalNonRF, new ItemStack(InitBlocks.blockBreaker), new PageCrafting(1, BlockCrafting.recipeBreaker), new PageCrafting(2, BlockCrafting.recipePlacer), new PageCrafting(3, BlockCrafting.recipeLiquidPlacer), new PageCrafting(4, BlockCrafting.recipeLiquidCollector)); @@ -77,12 +77,12 @@ public class InitBooklet{ new BookletChapter("rangedCollector", entryFunctionalNonRF, new ItemStack(InitBlocks.blockRangedCollector), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.RANGED_COLLECTOR_RANGE.getValue()), new PageCrafting(2, BlockCrafting.recipeRangedCollector).setNoText()); //RF Using Blocks - new BookletChapter("laserRelays", entryFunctionalRF, new ItemStack(InitBlocks.blockLaserRelay), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.LASER_RELAY_MAX_DISTANCE.getValue()).addTextReplacement("", ConfigIntValues.LASER_RELAY_LOSS.getValue()), new PageCrafting(2, BlockCrafting.recipeLaserRelay).setNoText(), new PageCrafting(3, ItemCrafting.recipeLaserWrench).setNoText()).setImportant(); - new BookletChapterCoffee("coffeeMachine", entryFunctionalRF, new ItemStack(InitBlocks.blockCoffeeMachine), new PageTextOnly(1).setStack(new ItemStack(InitItems.itemCoffeeBean)).addTextReplacement("", ConfigIntValues.COFFEE_MACHINE_ENERGY_USED.getValue()).addTextReplacement("", ConfigIntValues.COFFEE_CACHE_USED_PER_ITEM.getValue()).addTextReplacement("", ConfigIntValues.COFFEE_MACHINE_WATER_USED.getValue()), new PageTextOnly(2).setStack(new ItemStack(InitItems.itemCoffee)), new PageCrafting(3, BlockCrafting.recipeCoffeeMachine).setNoText(), new PageCrafting(4, ItemCrafting.recipeCup).setNoText()).setImportant(); + new BookletChapter("laserRelays", entryFunctionalRF, new ItemStack(InitBlocks.blockLaserRelay), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.LASER_RELAY_MAX_DISTANCE.getValue()).addTextReplacement("", ConfigIntValues.LASER_RELAY_LOSS.getValue()), new PagePicture(2, "pageLaserRelay", 0).setNoText(), new PageCrafting(3, BlockCrafting.recipeLaserRelay).setNoText(), new PageCrafting(4, ItemCrafting.recipeLaserWrench).setNoText()).setImportant(); + new BookletChapterCoffee("coffeeMachine", entryFunctionalRF, new ItemStack(InitBlocks.blockCoffeeMachine), new PageTextOnly(1).setStack(new ItemStack(InitItems.itemCoffeeBean)).addTextReplacement("", ConfigIntValues.COFFEE_MACHINE_ENERGY_USED.getValue()).addTextReplacement("", ConfigIntValues.COFFEE_CACHE_USED_PER_ITEM.getValue()).addTextReplacement("", ConfigIntValues.COFFEE_MACHINE_WATER_USED.getValue()), new PageTextOnly(2).setStack(new ItemStack(InitItems.itemCoffee)), new PagePicture(3, "pageCoffeeMachine", 115), new PageCrafting(4, BlockCrafting.recipeCoffeeMachine).setNoText(), new PageCrafting(5, ItemCrafting.recipeCup).setNoText()).setImportant(); new BookletChapter("crusher", entryFunctionalRF, new ItemStack(InitBlocks.blockGrinderDouble), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.GRINDER_ENERGY_USED.getValue()).addTextReplacement("", ConfigIntValues.GRINDER_DOUBLE_ENERGY_USED.getValue()), new PageCrafting(2, BlockCrafting.recipeCrusher).setNoText(), new PageCrafting(3, BlockCrafting.recipeDoubleCrusher).setNoText(), new PageCrusherRecipe(4, CrusherCrafting.recipeSugar).setNoText(), new PageCrusherRecipe(5, CrusherCrafting.recipeIronHorseArmor).setNoText(), new PageCrusherRecipe(6, CrusherCrafting.recipeGoldHorseArmor).setNoText(), new PageCrusherRecipe(7, CrusherCrafting.recipeDiamondHorseArmor).setNoText()); new BookletChapter("furnaceDouble", entryFunctionalRF, new ItemStack(InitBlocks.blockFurnaceDouble), new PageCrafting(1, BlockCrafting.recipeFurnace).addTextReplacement("", ConfigIntValues.FURNACE_ENERGY_USED.getValue())); new BookletChapter("miner", entryFunctionalRF, new ItemStack(InitBlocks.blockOreMagnet), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.ORE_MAGNET_ENERGY_USE.getValue()).addTextReplacement("", ConfigIntValues.ORE_MAGNET_OIL_USE.getValue()).addTextReplacement("", ConfigIntValues.ORE_MAGNET_RANGE.getValue()), new PageCrafting(2, BlockCrafting.recipeMiner).setNoText(), new PageCrafting(3, BlockCrafting.recipeCasing).setNoText()); - new BookletChapter("lavaFactory", entryFunctionalRF, new ItemStack(InitBlocks.blockLavaFactoryController), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.LAVA_FACTORY_ENERGY_USED.getValue()), new PageCrafting(2, BlockCrafting.recipeLavaFactory).setNoText()); + new BookletChapter("lavaFactory", entryFunctionalRF, new ItemStack(InitBlocks.blockLavaFactoryController), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.LAVA_FACTORY_ENERGY_USED.getValue()), new PagePicture(2, "pageLavaFactory", 0).setNoText(), new PageCrafting(3, BlockCrafting.recipeLavaFactory).setNoText()); new BookletChapter("energizer", entryFunctionalRF, new ItemStack(InitBlocks.blockEnergizer), new PageCrafting(1, BlockCrafting.recipeEnergizer), new PageCrafting(2, BlockCrafting.recipeEnervator)); new BookletChapter("repairer", entryFunctionalRF, new ItemStack(InitBlocks.blockItemRepairer), new PageCrafting(1, BlockCrafting.recipeRepairer).addTextReplacement("", ConfigIntValues.REPAIRER_ENERGY_USED.getValue())); new BookletChapter("longRangeBreaker", entryFunctionalRF, new ItemStack(InitBlocks.blockDirectionalBreaker), new PageTextOnly(1).addTextReplacement("", ConfigIntValues.DIRECTIONAL_BREAKER_RF_PER_BLOCK.getValue()).addTextReplacement("", ConfigIntValues.DIRECTIONAL_BREAKER_RANGE.getValue()), new PageCrafting(2, BlockCrafting.recipeDirectionalBreaker)); diff --git a/src/main/java/ellpeck/actuallyadditions/booklet/page/PagePicture.java b/src/main/java/ellpeck/actuallyadditions/booklet/page/PagePicture.java new file mode 100644 index 000000000..6052c40c8 --- /dev/null +++ b/src/main/java/ellpeck/actuallyadditions/booklet/page/PagePicture.java @@ -0,0 +1,38 @@ +/* + * This file ("PagePicture.java") is part of the Actually Additions Mod for Minecraft. + * It is created and owned by Ellpeck and distributed + * under the Actually Additions License to be found at + * http://github.com/Ellpeck/ActuallyAdditions/blob/master/README.md + * View the source code at https://github.com/Ellpeck/ActuallyAdditions + * + * © 2015 Ellpeck + */ + +package ellpeck.actuallyadditions.booklet.page; + +import ellpeck.actuallyadditions.booklet.GuiBooklet; +import ellpeck.actuallyadditions.util.AssetUtil; +import net.minecraft.util.ResourceLocation; + +public class PagePicture extends PageTextOnly{ + + private ResourceLocation resLoc; + private int textStartY; + + public PagePicture(int id, String resLocName, int textStartY){ + super(id); + this.textStartY = textStartY; + this.resLoc = AssetUtil.getBookletGuiLocation(resLocName); + } + + @Override + public void renderPre(GuiBooklet gui, int mouseX, int mouseY, int ticksElapsed, boolean mousePressed){ + gui.mc.getTextureManager().bindTexture(this.resLoc); + gui.drawTexturedModalRect(gui.guiLeft, gui.guiTop, 0, 0, gui.xSize, gui.ySize); + + String text = gui.currentPage.getText(); + if(text != null && !text.isEmpty()){ + gui.mc.fontRenderer.drawSplitString(text, gui.guiLeft+14, gui.guiTop+textStartY, 115, 0); + } + } +} diff --git a/src/main/java/ellpeck/actuallyadditions/nei/BookletInfoRecipeHandler.java b/src/main/java/ellpeck/actuallyadditions/nei/BookletInfoRecipeHandler.java index 1330c5cff..5151b9273 100644 --- a/src/main/java/ellpeck/actuallyadditions/nei/BookletInfoRecipeHandler.java +++ b/src/main/java/ellpeck/actuallyadditions/nei/BookletInfoRecipeHandler.java @@ -14,8 +14,10 @@ import codechicken.lib.gui.GuiDraw; import codechicken.nei.PositionedStack; import codechicken.nei.recipe.RecipeInfo; import codechicken.nei.recipe.TemplateRecipeHandler; +import ellpeck.actuallyadditions.booklet.BookletChapter; import ellpeck.actuallyadditions.booklet.InitBooklet; import ellpeck.actuallyadditions.booklet.page.BookletPage; +import ellpeck.actuallyadditions.booklet.page.PagePicture; import ellpeck.actuallyadditions.util.ItemUtil; import ellpeck.actuallyadditions.util.ModUtil; import ellpeck.actuallyadditions.util.StringUtil; @@ -106,11 +108,13 @@ public class BookletInfoRecipeHandler extends TemplateRecipeHandler implements I if(ItemUtil.contains(page.getItemStacksForPage(), stack.theStack, true)){ int maxLines = 6; - String aText = page.getChapter().pages[0].getText(); + BookletChapter chapter = page.getChapter(); + String aText = (chapter.pages[0] instanceof PagePicture && chapter.pages.length > 1 ? chapter.pages[1] : chapter.pages[0]).getText(); List text = Minecraft.getMinecraft().fontRenderer.listFormattedStringToWidth(aText != null ? aText : EnumChatFormatting.DARK_RED+StringUtil.localize("container.nei."+ModUtil.MOD_ID_LOWER+".booklet.noText"), 165); for(int i = 0; i < Math.min(maxLines, text.size()); i++){ GuiDraw.drawString(text.get(i)+(i == maxLines-1 && text.size() > maxLines ? EnumChatFormatting.RESET+""+EnumChatFormatting.BLACK+"..." : ""), 0, 18+25+i*(Minecraft.getMinecraft().fontRenderer.FONT_HEIGHT+1), 0, false); } + break; } } } diff --git a/src/main/java/ellpeck/actuallyadditions/util/AssetUtil.java b/src/main/java/ellpeck/actuallyadditions/util/AssetUtil.java index b8446daf9..f48de8552 100644 --- a/src/main/java/ellpeck/actuallyadditions/util/AssetUtil.java +++ b/src/main/java/ellpeck/actuallyadditions/util/AssetUtil.java @@ -40,6 +40,10 @@ public class AssetUtil{ return new ResourceLocation(ModUtil.MOD_ID_LOWER, "textures/gui/"+file+".png"); } + public static ResourceLocation getBookletGuiLocation(String file){ + return new ResourceLocation(ModUtil.MOD_ID_LOWER, "textures/gui/booklet/"+file+".png"); + } + public static void displayNameString(FontRenderer font, int xSize, int yPositionOfMachineText, String machineName){ String localMachineName = StringUtil.localize(machineName+".name"); font.drawString(localMachineName, xSize/2-font.getStringWidth(localMachineName)/2, yPositionOfMachineText, StringUtil.DECIMAL_COLOR_WHITE); diff --git a/src/main/resources/assets/actuallyadditions/lang/en_US.lang b/src/main/resources/assets/actuallyadditions/lang/en_US.lang index 599fedd84..1ab43b1eb 100644 --- a/src/main/resources/assets/actuallyadditions/lang/en_US.lang +++ b/src/main/resources/assets/actuallyadditions/lang/en_US.lang @@ -448,7 +448,8 @@ booklet.actuallyadditions.chapter.lamps.name=Lamps booklet.actuallyadditions.chapter.lamps.text.1=Lamps are a block providing lots of light, similar to the mystic Glowstone or Torches, but they can be dyed with all of the 16 different colors either by crafting them or by placing them on the ground and right-clicking them with a piece of dye. When right-clicking them with an empty hand, they will turn on and off. If you want them, however, to be toggled using Redstone Power, just place a Lamp Controller next to one. booklet.actuallyadditions.chapter.treasureChest.name=Treasure Chests -booklet.actuallyadditions.chapter.treasureChest.text.1=Treasure Chests are a semi-uncommon occurence in Ocean Biomes. They appear on the bottom of the sea, probably left there by bypassing Ships who threw off or lost some load. These Chests however, hold some valuable items, if you're lucky. Breaking them won't yield you anything, though, you just have to right-click them to receive some amazing goodies. +booklet.actuallyadditions.chapter.treasureChest.text.1=A Treasure Chest found underwater. +booklet.actuallyadditions.chapter.treasureChest.text.2=Treasure Chests are a semi-uncommon occurence in Ocean Biomes. They appear on the bottom of the sea, probably left there by bypassing Ships who threw off or lost some load. These Chests however, hold some valuable items, if you're lucky. Breaking them won't yield you anything, though, you just have to right-click them to receive some amazing goodies. booklet.actuallyadditions.chapter.breaker.name=Breakers and Placers booklet.actuallyadditions.chapter.breaker.text.1=The Breaker... well.. it breaks blocks in front of it. That's about it. It can be oriented in every direction like a Piston. It can be turned off with Redstone. @@ -493,8 +494,9 @@ booklet.actuallyadditions.chapter.crate.text.2=The Chest To Storage Crate booklet.actuallyadditions.chapter.coffeeMachine.name=Coffee Machine booklet.actuallyadditions.chapter.coffeeMachine.text.1=The Coffee Machine is a block used to make Coffee, a potion-like item that gives the user several buffs. To use the coffee machine, you need a Empty Cup, Coffee Beans, which can be found in the wild, harvested and planted on farmland again, RF/t and mB of Water per cup brewed. On the coffee machine recipe pages at the back, to see what the item does, just hover over the Cup of Coffee. booklet.actuallyadditions.chapter.coffeeMachine.text.2=To actually give your coffee some buffs, put some of the items shown on the later pages into the slots on the right. The more slots are filled up with one item, the higher the Amplifier of the effect will be. The Maximum Amplifier is the max amount of items to be put into one coffee. Order matters: When using, for example, Milk (to see what it does exactly, go to a later page), you are going to have to plan the items out inside the numbered slots in such a way that it brews the coffee you want. -booklet.actuallyadditions.chapter.coffeeMachine.text.5=Milk is an important item when brewing coffee: It adds 2 minutes to the effect while removing 1 amplifier. When the amplifier of an effect is 1, however, it will remove the effect. -booklet.actuallyadditions.chapter.coffeeMachine.text.6=The fact that you're reading this means that you either have HarvestCraft installed, or that you're looking at the lang file. This does the same thing as Milk, but for veggie guys. +booklet.actuallyadditions.chapter.coffeeMachine.text.3=This is an example of a recipe making a coffee containing Fire Resistance 1 for 0:20 and Speed 1 for 2:30. +booklet.actuallyadditions.chapter.coffeeMachine.text.6=Milk is an important item when brewing coffee: It adds 2 minutes to all effects of items in slots with lower numbers while removing 1 amplifier. When the amplifier of an effect is 1, however, it will remove the effect. +booklet.actuallyadditions.chapter.coffeeMachine.text.7=The fact that you're reading this means that you either have HarvestCraft installed, or that you're looking at the lang file. This does the same thing as Milk, but for veggie guys. booklet.actuallyadditions.chapter.crusher.name=Crusher and Double Crusher booklet.actuallyadditions.chapter.crusher.text.1=The Crusher turns every ore, ingot and gem into its corresponding dust using RF/t. When you put in Ores however, they will yield 2 pieces of dust. The Double Crusher basically does the same, however it can crush two ores at a time and uses RF/t. On the following pages, you can see some additional useful recipes for inside the crusher. He's my crush @@ -578,7 +580,8 @@ booklet.actuallyadditions.chapter.rangedCollector.name=Ranged Collector booklet.actuallyadditions.chapter.rangedCollector.text.1=The Ranged Collector works much like a hopper, in that it collects items around it, having the power, however, to pick up items that are in an area of blocks around it. It has a filter that can be set to white- or blacklist. This comes with a disadvantage, however: It doesn't auto-output its items. booklet.actuallyadditions.chapter.hairBalls.name=Ball of Fur-s -booklet.actuallyadditions.chapter.hairBalls.text.1=Balls of Fur are an item rarely dropped by cats which have been tamed by the player. Cats are very mysterious creatures as they appear to get everything stuck in their fur. Balls of Fur may seem disgusting at first, but when removing all of the hair by right-clicking, they will reveal some valuable items. Or just some String. FUURRRRRR!! +booklet.actuallyadditions.chapter.hairBalls.text.1=Balls of Fur dropped by live cats. More information on the next page. +booklet.actuallyadditions.chapter.hairBalls.text.2=Balls of Fur are an item rarely dropped by cats which have been tamed by the player. Cats are very mysterious creatures as they appear to get everything stuck in their fur. Balls of Fur may seem disgusting at first, but when removing all of the hair by right-clicking, they will reveal some valuable items. Or just some String. FUURRRRRR!! booklet.actuallyadditions.chapter.laserRelays.name=Laser Relays booklet.actuallyadditions.chapter.laserRelays.text.1=The Laser Relay is a block that can wirelessly transfer RF just by being connected with a Laser Wrench, generating a network. When placing a Power Generator or Receiver next to the relay, it can receive Power from any other relay in the network. Two relays can be at most blocks apart. During an energy transfer, they have an Energy Loss of %. \ No newline at end of file diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/guiBooklet.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBooklet.png similarity index 100% rename from src/main/resources/assets/actuallyadditions/textures/gui/guiBooklet.png rename to src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBooklet.png diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/guiBookletChristmas.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletChristmas.png similarity index 100% rename from src/main/resources/assets/actuallyadditions/textures/gui/guiBookletChristmas.png rename to src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletChristmas.png diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/guiBookletHalloween.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletHalloween.png similarity index 100% rename from src/main/resources/assets/actuallyadditions/textures/gui/guiBookletHalloween.png rename to src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletHalloween.png diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/guiBookletValentinesDay.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletValentinesDay.png similarity index 100% rename from src/main/resources/assets/actuallyadditions/textures/gui/guiBookletValentinesDay.png rename to src/main/resources/assets/actuallyadditions/textures/gui/booklet/guiBookletValentinesDay.png diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageCoffeeMachine.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageCoffeeMachine.png new file mode 100644 index 000000000..e807ff62f Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageCoffeeMachine.png differ diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageFurBalls.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageFurBalls.png new file mode 100644 index 000000000..a7ef115ba Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageFurBalls.png differ diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLaserRelay.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLaserRelay.png new file mode 100644 index 000000000..707780752 Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLaserRelay.png differ diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLavaFactory.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLavaFactory.png new file mode 100644 index 000000000..a75bb45f6 Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageLavaFactory.png differ diff --git a/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageTreasureChest.png b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageTreasureChest.png new file mode 100644 index 000000000..85488b791 Binary files /dev/null and b/src/main/resources/assets/actuallyadditions/textures/gui/booklet/pageTreasureChest.png differ