More patchouli work

This commit is contained in:
Mrbysco 2024-03-14 01:53:37 +01:00
parent 90a923bd08
commit 1207a27dbc
11 changed files with 268 additions and 13 deletions

View file

@ -1,6 +1,8 @@
// 1.20.4 2024-03-06T00:00:49.130919 Patchouli Book Provider
// 1.20.4 2024-03-14T01:53:18.5540232 Patchouli Book Provider
25f9d206f1f0397918f65634d57f658516f3c952 assets/actuallyadditions/patchouli_books/booklet/en_us/categories/getting_started.json
7023c70c30600d465a96b315b2b7954eedad337d assets/actuallyadditions/patchouli_books/booklet/en_us/entries/crystals.json
cb103625b78fcc79697bdc00459a21cacf0c940a assets/actuallyadditions/patchouli_books/booklet/en_us/entries/engineer_house.json
88df6be8c958d5e89673e9eefcf73315d50bda9f assets/actuallyadditions/patchouli_books/booklet/en_us/entries/guide.json
49e2d21f416f97f2e952ceb8e003e8497e926e03 assets/actuallyadditions/patchouli_books/booklet/en_us/entries/intro.json
2709d2e5c13efa327c5ee6c18fe10e377d49abe3 assets/actuallyadditions/patchouli_books/booklet/en_us/entries/intro.json
78d1f1a0d393feaf903c84d11ac2749d17779217 assets/actuallyadditions/patchouli_books/booklet/en_us/entries/tutorial.json
10146f4dd5bab35ef00a724fab1f3762e5f7c2b9 data/actuallyadditions/patchouli_books/booklet/book.json

View file

@ -0,0 +1,101 @@
{
"category": "actuallyadditions:getting_started",
"icon": "actuallyadditions:booklet",
"name": "booklet.actuallyadditions.chapter.crystals",
"pages": [
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.crystals.text.1"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.crystals.text.2"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.crystals.text.3"
},
{
"type": "patchouli:image",
"border": false,
"images": [
"actuallyadditions:textures/gui/booklet/page_atomic_reconstructor.png"
]
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.crystals.text.5"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:atomic_reconstructor",
"text": "booklet.actuallyadditions.chapter.crystals.text.6"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_restonia_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_restonia_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_palis_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_palis_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_diamatine_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_diamatine_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_void_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_void_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_emeradic_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_emeradic_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "actuallyadditions:reconstructor",
"recipe": "actuallyadditions:laser/crystalize_enori_crystal_block",
"recipe2": "actuallyadditions:laser/crystalize_enori_crystal",
"text": "booklet.actuallyadditions.reconstructor_recipe"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/restonia_crystal",
"recipe2": "actuallyadditions:compress/restonia_crystal_block"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/palis_crystal",
"recipe2": "actuallyadditions:compress/palis_crystal_block"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/diamatine_crystal",
"recipe2": "actuallyadditions:compress/diamatine_crystal_block"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/void_crystal",
"recipe2": "actuallyadditions:compress/void_crystal_block"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/emeradic_crystal",
"recipe2": "actuallyadditions:compress/emeradic_crystal_block"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:decompress/enori_crystal",
"recipe2": "actuallyadditions:compress/enori_crystal_block"
}
]
}

View file

@ -0,0 +1,18 @@
{
"category": "actuallyadditions:getting_started",
"icon": "actuallyadditions:booklet",
"name": "booklet.actuallyadditions.chapter.engineer_house",
"pages": [
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.engineer_house.text.1"
},
{
"type": "patchouli:image",
"images": [
"actuallyadditions:textures/gui/booklet/page_engineer_house.png"
],
"text": "booklet.actuallyadditions.chapter.engineer_house.text.2"
}
]
}

View file

@ -14,6 +14,10 @@
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.3"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.4"
}
]
}

View file

@ -1,5 +1,6 @@
package de.ellpeck.actuallyadditions.data.patchouli;
import de.ellpeck.actuallyadditions.data.patchouli.builder.ReconstructorPageBuilder;
import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
import de.ellpeck.actuallyadditions.mod.items.ActuallyItems;
import net.minecraft.data.PackOutput;
@ -7,6 +8,7 @@ import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack;
import xyz.brassgoggledcoders.patchouliprovider.BookBuilder;
import xyz.brassgoggledcoders.patchouliprovider.CategoryBuilder;
import xyz.brassgoggledcoders.patchouliprovider.EntryBuilder;
import xyz.brassgoggledcoders.patchouliprovider.PatchouliBookProvider;
import java.util.function.Consumer;
@ -48,8 +50,9 @@ public class PachouliGenerator extends PatchouliBookProvider {
.addTextPage(prefix("chapter.book_tutorial.text.1")).build()
.addTextPage(prefix("chapter.book_tutorial.text.2")).build()
.addTextPage(prefix("chapter.book_tutorial.text.3")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "booklet"))
.setTitle("").setText("booklet.actuallyadditions.shapeless_recipe").build();
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "booklet")).setTitle("").setText("booklet.actuallyadditions.shapeless_recipe").build();
gettingStarted.addEntry("guide", prefix("chapter.video_guide"), "actuallyadditions:textures/item/youtube.png")
.addLinkPage("https://www.youtube.com/watch?v=fhjz0Ew56pM", prefix("chapter.video_guide.booty.button"))
.setText(prefix("chapter.video_guide.booty.text.1")).build()
@ -61,7 +64,53 @@ public class PachouliGenerator extends PatchouliBookProvider {
gettingStarted.addEntry("intro", prefix("chapter.intro"), bookStack)
.addTextPage(prefix("chapter.intro.text.1")).build()
.addTextPage(prefix("chapter.intro.text.2")).build()
.addTextPage(prefix("chapter.intro.text.3")).build();
.addTextPage(prefix("chapter.intro.text.3")).build()
.addTextPage(prefix("chapter.intro.text.4")).build();
gettingStarted.addEntry("engineer_house", prefix("chapter.engineer_house"), bookStack)
.addTextPage(prefix("chapter.engineer_house.text.1")).build()
.addImagePage(new ResourceLocation(ActuallyAdditions.MODID, "textures/gui/booklet/page_engineer_house.png"))
.setText("booklet.actuallyadditions.chapter.engineer_house.text.2").build();
EntryBuilder crystalsBuilder = gettingStarted.addEntry("crystals", prefix("chapter.crystals"), bookStack)
.addTextPage(prefix("chapter.crystals.text.1")).build()
.addTextPage(prefix("chapter.crystals.text.2")).build()
.addTextPage(prefix("chapter.crystals.text.3")).build()
.addImagePage(new ResourceLocation(ActuallyAdditions.MODID, "textures/gui/booklet/page_atomic_reconstructor.png")).setBorder(false).build()
.addTextPage(prefix("chapter.crystals.text.5")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "atomic_reconstructor"))
.setText(prefix("chapter.crystals.text.6")).build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_restonia_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_restonia_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_palis_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_palis_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_diamatine_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_diamatine_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_void_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_void_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_emeradic_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_emeradic_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_enori_crystal_block"), crystalsBuilder))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "laser/crystalize_enori_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/restonia_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/restonia_crystal_block")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/palis_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/palis_crystal_block")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/diamatine_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/diamatine_crystal_block")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/void_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/void_crystal_block")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/emeradic_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/emeradic_crystal_block")).build()
.addCraftingPage(new ResourceLocation(ActuallyAdditions.MODID, "decompress/enori_crystal"))
.setRecipe2(new ResourceLocation(ActuallyAdditions.MODID, "compress/enori_crystal_block")).build();
crystalsBuilder.build();
//End of Getting Started

View file

@ -0,0 +1,11 @@
package de.ellpeck.actuallyadditions.data.patchouli.builder;
import net.minecraft.resources.ResourceLocation;
import xyz.brassgoggledcoders.patchouliprovider.EntryBuilder;
import xyz.brassgoggledcoders.patchouliprovider.page.RecipePageBuilder;
public class ReconstructorPageBuilder extends RecipePageBuilder<ReconstructorPageBuilder> {
public ReconstructorPageBuilder(ResourceLocation recipe, EntryBuilder entryBuilder) {
super("actuallyadditions:reconstructor", recipe, entryBuilder);
}
}

View file

@ -50,6 +50,7 @@ import de.ellpeck.actuallyadditions.mod.misc.special.SpecialRenderInit;
import de.ellpeck.actuallyadditions.mod.particle.ActuallyParticles;
import de.ellpeck.actuallyadditions.mod.particle.ParticleBeam;
import de.ellpeck.actuallyadditions.mod.particle.ParticleLaserItem;
import de.ellpeck.actuallyadditions.mod.patchouli.PatchouliPages;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screens.MenuScreens;
import net.minecraft.client.multiplayer.ClientPacketListener;
@ -102,6 +103,8 @@ public class ActuallyAdditionsClient {
(stack, level, entity, tintIndex) -> "snail mail".equalsIgnoreCase(stack.getHoverName().getString()) ? 1F : 0F));
setupRenderLayers();
PatchouliPages.init();
}
private static void setupRenderLayers() {

View file

@ -3,6 +3,7 @@ package de.ellpeck.actuallyadditions.mod.crafting;
import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import de.ellpeck.actuallyadditions.api.ActuallyAdditionsAPI;
import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks;
import net.minecraft.core.RegistryAccess;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.world.Container;
@ -47,6 +48,11 @@ public class LaserRecipe implements Recipe<Container> {
return itemIngredient;
}
@Override
public ItemStack getToastSymbol() {
return new ItemStack(ActuallyBlocks.ATOMIC_RECONSTRUCTOR.get());
}
//nah
@Override
public boolean matches(Container pInv, Level pLevel) {

View file

@ -0,0 +1,49 @@
package de.ellpeck.actuallyadditions.mod.patchouli;
import com.mojang.blaze3d.systems.RenderSystem;
import de.ellpeck.actuallyadditions.mod.crafting.ActuallyRecipes;
import de.ellpeck.actuallyadditions.mod.crafting.LaserRecipe;
import de.ellpeck.actuallyadditions.mod.util.AssetUtil;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.world.level.Level;
import vazkii.patchouli.client.book.gui.GuiBook;
import vazkii.patchouli.client.book.page.abstr.PageSimpleProcessingRecipe;
public class PageReconstructor extends PageSimpleProcessingRecipe<LaserRecipe> {
public PageReconstructor() {
super(ActuallyRecipes.Types.LASER.get());
}
@Override
protected void drawRecipe(GuiGraphics graphics, LaserRecipe recipe, int recipeX, int recipeY, int mouseX, int mouseY, boolean second) {
Level level = Minecraft.getInstance().level;
if (level == null) {
return;
}
RenderSystem.enableBlend();
graphics.blit(AssetUtil.getBookletGuiLocation("gui_booklet_gadgets"), recipeX + 10, recipeY + 2, 80, 146, 68, 48, 256, 256);
parent.drawCenteredStringNoShadow(graphics, getTitle(second).getVisualOrderText(), GuiBook.PAGE_WIDTH / 2, recipeY - 10, book.headerColor);
parent.renderIngredient(graphics, recipeX + 11, recipeY + 15, mouseX, mouseY, recipe.getInput());
parent.renderItemStack(graphics, recipeX + 33, recipeY + 15, mouseX, mouseY, recipe.getToastSymbol());
parent.renderItemStack(graphics, recipeX + 57, recipeY + 15, mouseX, mouseY, recipe.getResultItem(level.registryAccess()));
}
@Override
public int getTextHeight() {
return 60;
}
@Override
public boolean shouldRenderText() {
return true;
}
@Override
protected int getRecipeHeight() {
return 90;
}
}

View file

@ -0,0 +1,11 @@
package de.ellpeck.actuallyadditions.mod.patchouli;
import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
import net.minecraft.resources.ResourceLocation;
import vazkii.patchouli.client.book.ClientBookRegistry;
public class PatchouliPages {
public static void init() {
ClientBookRegistry.INSTANCE.pageTypes.put(new ResourceLocation(ActuallyAdditions.MODID, "reconstructor"), PageReconstructor.class);
}
}

View file

@ -714,9 +714,10 @@
"booklet.actuallyadditions.trials.empowererAutomation.text.1": "The <item>Empowerer<r> requires a lot of resources to <imp>convert crystals<r>. There should be a pretty easy way to create a system that does this <imp>automatically<r>. Using some <item>Item Laser Relays<r> should provide an easy way to make the right items go onto the right display stands.",
"_comment": "Booklet Chapters",
"booklet.actuallyadditions.chapter.intro": "A story about ActAdd",
"booklet.actuallyadditions.chapter.intro.text.1": "<i>For too long have the people of Minecraftia toiled under a relentless whip. A whip more hurtful and more injurious than that of any slave-master: inconvenience. Aye, the thousand million inconveniences that make up the grind, that force players to waste hours- nay, days!- chopping wood and farming wheat and other such mundane tasks, just to momentarily escape the remorseless tedium and experience the true joys of Minecraftia, building, caving and adventuring into the beautiful uncharted abundance",
"booklet.actuallyadditions.chapter.intro.text.2": "<i>of the world. Yet no sooner has one immersed oneself in this creative enterprise than the inconveniences return, like millions of furious bees pestering, stinging, swarming all over you until the game ceases to be enjoyable, and you are driven away from it forever. To that end, a certain Ellpeck has created this Actual Addition to the world of Minecraft, that will allow the player to better engage with the core experiences of the game- building and adventuring- by automating and streamlining the monotony that",
"booklet.actuallyadditions.chapter.intro.text.3": "<i>is grinding in Minecraft. Therefore, Ellpeck humbly presents to you this Actually Additions Manual, that shall teach you the ways of this modification and, ultimately, allow you to transcend inconvenience and attain enlightenment. <r><n><n> ~by <imp>Tulkas<r>",
"booklet.actuallyadditions.chapter.intro.text.1": "<i>For too long have the people of Minecraftia toiled under a relentless whip. A whip more hurtful and more injurious than that of any slave-master: inconvenience. Aye, the thousand million inconveniences that make up the grind, that force players to waste hours- nay, days!- chopping wood and farming wheat and other such mundane tasks,",
"booklet.actuallyadditions.chapter.intro.text.2": "<i>just to momentarily escape the remorseless tedium and experience the true joys of Minecraftia, building, caving and adventuring into the beautiful uncharted abundance of the world. Yet no sooner has one immersed oneself in this creative enterprise than the inconveniences return, like millions of furious bees pestering, stinging, swarming all over you until the game ceases to be enjoyable, and you are driven away from it forever.",
"booklet.actuallyadditions.chapter.intro.text.3": "<i>To that end, a certain Ellpeck has created this Actual Addition to the world of Minecraft, that will allow the player to better engage with the core experiences of the game- building and adventuring- by automating and streamlining the monotony that is grinding in Minecraft. Therefore, Ellpeck humbly presents to you this Actually Additions Manual, that shall teach you the ways of this modification and, ultimately,",
"booklet.actuallyadditions.chapter.intro.text.4": "<i>allow you to transcend inconvenience and attain enlightenment. <r><n><n> ~by <imp>Tulkas<r>",
"booklet.actuallyadditions.chapter.craftingIngs": "Crafting Ingredients",
"booklet.actuallyadditions.chapter.craftingIngs.text.1": "<imp>Actually Additions<r> has lots of items that use certain <imp>basic crafting items<r> to be crafted. This chapter has all of these basic items <imp>grouped up<r> so that you can see all of them at once.",
"booklet.actuallyadditions.chapter.quartz": "Black Quartz",
@ -846,9 +847,9 @@
"booklet.actuallyadditions.chapter.blackLotus.text.1": "Think of this: <n>You need to craft <imp>black wool<r>, <imp>black clay<r> or anything else that <imp>needs black dye<r> but you are just guilty about killing so many <imp>innocent squids<r>? <n>Well, the <item>Black Lotus<r> is exactly the thing you need! <n>Just look around <imp>in the wild<r> a bit, and you will find one, then being able to craft some <item>Black Dye<r> that can be used <imp>instead of Ink Sacs<r> so that you don't need to kill poor squids and L any longer.",
"booklet.actuallyadditions.chapter.blackLotus.text.2": "<i>Do the lotus pose",
"booklet.actuallyadditions.chapter.crystals": "Crystals and Reconstructor",
"booklet.actuallyadditions.chapter.crystals.text.1": "The <item>Atomic Reconstructor<r> is used to craft <item>Crystals<r>, which are the main crafting ingredient in most items from <imp>Actually Additions<r>. <n>Upon being supplied with power, it shoots out a Laser. <tifisgrin>When the Laser hits a block<r>, it will convert all surrounding items and blocks, provided they can be converted. <n>When shooting a laser, it uses <imp><rf> CF<r>, but additional rates vary depending on the conversion.",
"booklet.actuallyadditions.chapter.crystals.text.2": "There are various <item>Lenses<r> that can be attached to the Reconstructor that don't all follow the default behavior of the Reconstructor and are able to do some neat things. <n>See the <imp>Reconstruction section<r> in the booklet <imp>for more information<r>. <n><n>When right-clicking the Reconstructor with a <item>Redstone Torch<r> in hand, it will change between a mode where it <imp>gets deactivated by Redstone<r> and a mode where it <imp>responds to pulses<r>.",
"booklet.actuallyadditions.chapter.crystals.text.3": "It should be noted that any recipes listed without information about Lenses <imp>don't use one<r>. <n><i>I thought that was obvious.",
"booklet.actuallyadditions.chapter.crystals.text.1": "The <item>Atomic Reconstructor<r> is used to craft <item>Crystals<r>, which are the main crafting ingredient in most items from <imp>Actually Additions<r>. <n>Upon being supplied with power, it shoots out a Laser. <tifisgrin>When the Laser hits a block<r>, it will convert all surrounding items and blocks, provided they can be converted.",
"booklet.actuallyadditions.chapter.crystals.text.2": "When shooting a laser, it uses <imp>1000 CF<r>, but additional rates vary depending on the conversion. <n>There are various <item>Lenses<r> that can be attached to the Reconstructor that don't all follow the default behavior of the Reconstructor and are able to do some neat things. <n>See the <imp>Reconstruction section<r> in the booklet <imp>for more information<r>.",
"booklet.actuallyadditions.chapter.crystals.text.3": "When right-clicking the Reconstructor with a <item>Redstone Torch<r> in hand, it will change between a mode where it <imp>gets deactivated by Redstone<r> and a mode where it <imp>responds to pulses<r>. It should be noted that any recipes listed without information about Lenses <imp>don't use one<r>. <n><i>I thought that was obvious.",
"booklet.actuallyadditions.chapter.crystals.text.5": "When you have crafted a couple of items, you might want to find a way to <imp>automate this<r>. <n>There is a very simple way to do accomplish this: <n>Place the <item>Atomic Reconstructor<r> down facing into a <item>Precision Dropper<r> (to find it, look it up in the <imp>All Items<r> Entry!). <n>Next, place a <item>Ranged Collector<r> in the area that has the converted items set as a whitelist. <n>Now you can just chuck your raw materials into the Dropper to convert them!",
"booklet.actuallyadditions.chapter.crystals.text.6": "<n><n><n><i>Molecular Transformilator",
"booklet.actuallyadditions.chapter.book_tutorial": "Intro to the Manual",
@ -969,9 +970,9 @@
"booklet.actuallyadditions.chapter.website": "The Author's Website",
"booklet.actuallyadditions.chapter.website.text.1": "On the topic of self-advertisement, if you're interested in <imp>any of the other stuff<r> I, <item>Ellpeck<r>, the author of this mod, do, you can go check out my <imp>website<r> by clicking the button below. <n>On there, you will find links to all of the social medias I use, an FAQ, and information about Minecraft Mods and other stuff I make!",
"booklet.actuallyadditions.chapter.website.button.1": "View the Website",
"booklet.actuallyadditions.chapter.engineerHouse": "A visit to the Engineers",
"booklet.actuallyadditions.chapter.engineerHouse.text.1": "If you want to know how to start, you can check out what the <imp>Engineers<r> are up to. <n>They are two friendly <imp>villagers<r> that sell you various goods: One is the <item>Crystallizer<r>, who will exchange <imp>Emeralds and Crystals<r> with you, and the <item>Engineer<r> will trade <imp>various machines<r> with you! <n>On the next page, you can see the <imp>house<r> they live in - which is also worth checking out! But be careful, the <imp>machines inside the house<r> are a little more <imp>fragile<r>, meaning they will shatter once you try to break them.",
"booklet.actuallyadditions.chapter.engineerHouse.text.2": "<i> Machines Primus",
"booklet.actuallyadditions.chapter.engineer_house": "A visit to the Engineers",
"booklet.actuallyadditions.chapter.engineer_house.text.1": "If you want to know how to start, you can check out what the <imp>Engineers<r> are up to. <n>They are two friendly <imp>villagers<r> that sell you various goods: One is the <item>Crystallizer<r>, who will exchange <imp>Emeralds and Crystals<r> with you, and the <item>Engineer<r> will trade <imp>various machines<r> with you! <n>On the next page, you can see the <imp>house<r> they live in - which is also worth checking out! But be careful, the <imp>machines inside the house<r> are a little more <imp>fragile<r>, meaning they will shatter once you try to break them.",
"booklet.actuallyadditions.chapter.engineer_house.text.2": "<i> Machines Primus",
"booklet.actuallyadditions.chapter.batteryBox": "Battery Box",
"booklet.actuallyadditions.chapter.batteryBox.text.1": "The <item>Battery Box<r> is a great way to <imp>store your power<r>. However, for it to be able to <imp>use power<r>, you have to <imp>right-click<r> a <item>Battery<r> onto it. It will then be able to store energy on the battery itself. <n><n>If you set the battery to <imp>discharge mode<r> via <imp>sneak-right-clicking it<r> or by applying a <imp>redstone pulse<r> to the <item>Battery Box<r>, it will try to spread the power it receives equally to <imp>up to 15 adjacent<r> <item>Battery Boxes<r>.",
"booklet.actuallyadditions.chapter.laserUpgradeInvisibility": "Modifier: Invisibility",