Re-enable Patchouli support

This commit is contained in:
Mrbysco 2024-10-17 00:54:39 +02:00
parent 82c99e0b56
commit 0e3a961257
11 changed files with 358 additions and 126 deletions

View file

@ -0,0 +1,8 @@
// 1.21.1 2024-10-17T00:54:11.5444321 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
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,5 @@
{
"description": "",
"icon": "actuallyadditions:booklet",
"name": "booklet.actuallyadditions.indexEntry.getting_started"
}

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

@ -0,0 +1,27 @@
{
"category": "actuallyadditions:getting_started",
"icon": "actuallyadditions:textures/item/youtube.png",
"name": "booklet.actuallyadditions.chapter.video_guide",
"pages": [
{
"type": "patchouli:link",
"link_text": "booklet.actuallyadditions.chapter.video_guide.booty.button",
"text": "booklet.actuallyadditions.chapter.video_guide.booty.text.1",
"url": "https://www.youtube.com/watch?v=fhjz0Ew56pM"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.video_guide.booty.text.2"
},
{
"type": "patchouli:link",
"link_text": "booklet.actuallyadditions.chapter.video_guide.booty.button",
"text": "booklet.actuallyadditions.chapter.video_guide.dire.text.1",
"url": "https://www.youtube.com/playlist?list=PLJeFZ64pT89MrTRZYzD_rtHFajPVlt6cF"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.video_guide.dire.text.2"
}
]
}

View file

@ -0,0 +1,23 @@
{
"category": "actuallyadditions:getting_started",
"icon": "actuallyadditions:booklet",
"name": "booklet.actuallyadditions.chapter.intro",
"pages": [
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.1"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.2"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.3"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.intro.text.4"
}
]
}

View file

@ -0,0 +1,25 @@
{
"category": "actuallyadditions:getting_started",
"icon": "actuallyadditions:booklet",
"name": "booklet.actuallyadditions.chapter.book_tutorial",
"pages": [
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.book_tutorial.text.1"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.book_tutorial.text.2"
},
{
"type": "patchouli:text",
"text": "booklet.actuallyadditions.chapter.book_tutorial.text.3"
},
{
"type": "patchouli:crafting",
"recipe": "actuallyadditions:booklet",
"text": "booklet.actuallyadditions.shapeless_recipe",
"title": ""
}
]
}

View file

@ -0,0 +1,21 @@
{
"book_texture": "actuallyadditions:textures/gui/booklet/booklet.png",
"creative_tab": "actuallyadditions.tab",
"custom_book_item": "actuallyadditions:booklet",
"dont_generate_book": true,
"i18n": true,
"landing_text": "<i>To be perfectly honest, I never actually realized how much content Actually Additions has before.<r><n> - Ellpeck",
"macros": {
"<i>": "$(o)",
"<imp>": "$(2)",
"<item>": "$(9)",
"<n>": "$(br)",
"<r>": "$()",
"<tifisgrin>": "$(4)$(n)"
},
"name": "booklet.actuallyadditions.item.actuallyadditions.booklet",
"show_progress": false,
"use_blocky_font": false,
"use_resource_pack": true,
"version": "153"
}

View file

@ -1,5 +1,6 @@
package de.ellpeck.actuallyadditions.data;
import de.ellpeck.actuallyadditions.data.patchouli.PatchouliGenerator;
import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
import de.ellpeck.actuallyadditions.mod.gen.ActuallyBiomeModifiers;
import de.ellpeck.actuallyadditions.mod.gen.ActuallyConfiguredFeatures;
@ -65,7 +66,7 @@ public class ActuallyAdditionsData {
generator.addProvider(true, new SoundsGenerator(packOutput, helper));
// generator.addProvider(true, new PachouliGenerator(packOutput));
generator.addProvider(true, new PatchouliGenerator(packOutput, lookupProvider));
generator.addProvider(true, new GlobalLootModifierGenerator(packOutput, lookupProvider));

View file

@ -1,125 +0,0 @@
//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;
//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;
//
//public class PachouliGenerator extends PatchouliBookProvider {
//
// public PachouliGenerator(PackOutput output) {
// super(output, ActuallyAdditions.MODID, "en_us");
// }
//
// @Override
// protected void addBooks(Consumer<BookBuilder> consumer) {
// final ItemStack bookStack = ActuallyItems.ITEM_BOOKLET.get().getDefaultInstance();
//
// BookBuilder bookBuilder = createBookBuilder("booklet",
// prefix("item.actuallyadditions.booklet"), "<i>To be perfectly honest, I never actually realized how much content Actually Additions has before.<r><n> - Ellpeck")
// .setVersion("153")
// .setCreativeTab("actuallyadditions.tab")
// .setCustomBookItem(bookStack)
// .setBookTexture("actuallyadditions:textures/gui/booklet/booklet.png")
// .setShowProgress(false)
// .setUseBlockyFont(false)
// .setI18n(true)
// .setDontGenerateBook(true)
// .addMacro("<imp>", "$(2)")
// .addMacro("<item>", "$(9)")
// .addMacro("<r>", "$()")
// .addMacro("<n>", "$(br)")
// .addMacro("<i>", "$(o)")
// .addMacro("<tifisgrin>", "$(4)$(n)")
// .setUseResourcePack(true);
//
//
// //Getting Started
// CategoryBuilder gettingStarted = bookBuilder.addCategory("getting_started", prefix("indexEntry.getting_started"),
// "", bookStack);
//
// gettingStarted.addEntry("tutorial", prefix("chapter.book_tutorial"), bookStack)
// .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(ActuallyAdditions.modLoc("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()
// .addTextPage(prefix("chapter.video_guide.booty.text.2")).build()
// .addLinkPage("https://www.youtube.com/playlist?list=PLJeFZ64pT89MrTRZYzD_rtHFajPVlt6cF", prefix("chapter.video_guide.booty.button"))
// .setText(prefix("chapter.video_guide.dire.text.1")).build()
// .addTextPage(prefix("chapter.video_guide.dire.text.2")).build();
//
// 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.4")).build();
//
// gettingStarted.addEntry("engineer_house", prefix("chapter.engineer_house"), bookStack)
// .addTextPage(prefix("chapter.engineer_house.text.1")).build()
// .addImagePage(ActuallyAdditions.modLoc("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(ActuallyAdditions.modLoc("textures/gui/booklet/page_atomic_reconstructor.png")).setBorder(false).build()
// .addTextPage(prefix("chapter.crystals.text.5")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("atomic_reconstructor"))
// .setText(prefix("chapter.crystals.text.6")).build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_restonia_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_restonia_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_palis_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_palis_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_diamatine_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_diamatine_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_void_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_void_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_emeradic_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_emeradic_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_enori_crystal_block"), crystalsBuilder))
// .setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_enori_crystal"))
// .setText("booklet.actuallyadditions.reconstructor_recipe").build();
// crystalsBuilder.addCraftingPage(ActuallyAdditions.modLoc("decompress/restonia_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/restonia_crystal_block")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("decompress/palis_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/palis_crystal_block")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("decompress/diamatine_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/diamatine_crystal_block")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("decompress/void_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/void_crystal_block")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("decompress/emeradic_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/emeradic_crystal_block")).build()
// .addCraftingPage(ActuallyAdditions.modLoc("decompress/enori_crystal"))
// .setRecipe2(ActuallyAdditions.modLoc("compress/enori_crystal_block")).build();
// crystalsBuilder.build();
//
// //End of Getting Started
//
//
// //Finish book
// bookBuilder.build(consumer);
// }
//
// private String prefix(String name) {
// return "booklet.actuallyadditions." + name;
// }
//}

View file

@ -0,0 +1,128 @@
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.core.HolderLookup;
import net.minecraft.data.PackOutput;
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.concurrent.CompletableFuture;
import java.util.function.Consumer;
public class PatchouliGenerator extends PatchouliBookProvider {
public PatchouliGenerator(PackOutput output, CompletableFuture<HolderLookup.Provider> lookupProvider) {
super(output, ActuallyAdditions.MODID, "en_us", lookupProvider);
}
@Override
protected void addBooks(Consumer<BookBuilder> consumer, HolderLookup.Provider provider) {
final ItemStack bookStack = ActuallyItems.ITEM_BOOKLET.get().getDefaultInstance();
BookBuilder bookBuilder = createBookBuilder("booklet",
prefix("item.actuallyadditions.booklet"),
"<i>To be perfectly honest, I never actually realized how much content Actually Additions has before.<r><n> - Ellpeck",
provider)
.setVersion("153")
.setCreativeTab("actuallyadditions.tab")
.setCustomBookItem(bookStack)
.setBookTexture("actuallyadditions:textures/gui/booklet/booklet.png")
.setShowProgress(false)
.setUseBlockyFont(false)
.setI18n(true)
.setDontGenerateBook(true)
.addMacro("<imp>", "$(2)")
.addMacro("<item>", "$(9)")
.addMacro("<r>", "$()")
.addMacro("<n>", "$(br)")
.addMacro("<i>", "$(o)")
.addMacro("<tifisgrin>", "$(4)$(n)")
.setUseResourcePack(true);
//Getting Started
CategoryBuilder gettingStarted = bookBuilder.addCategory("getting_started", prefix("indexEntry.getting_started"),
"", bookStack);
gettingStarted.addEntry("tutorial", prefix("chapter.book_tutorial"), bookStack)
.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(ActuallyAdditions.modLoc("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()
.addTextPage(prefix("chapter.video_guide.booty.text.2")).build()
.addLinkPage("https://www.youtube.com/playlist?list=PLJeFZ64pT89MrTRZYzD_rtHFajPVlt6cF", prefix("chapter.video_guide.booty.button"))
.setText(prefix("chapter.video_guide.dire.text.1")).build()
.addTextPage(prefix("chapter.video_guide.dire.text.2")).build();
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.4")).build();
gettingStarted.addEntry("engineer_house", prefix("chapter.engineer_house"), bookStack)
.addTextPage(prefix("chapter.engineer_house.text.1")).build()
.addImagePage(ActuallyAdditions.modLoc("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(ActuallyAdditions.modLoc("textures/gui/booklet/page_atomic_reconstructor.png")).setBorder(false).build()
.addTextPage(prefix("chapter.crystals.text.5")).build()
.addCraftingPage(ActuallyAdditions.modLoc("atomic_reconstructor"))
.setText(prefix("chapter.crystals.text.6")).build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_restonia_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_restonia_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_palis_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_palis_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_diamatine_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_diamatine_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_void_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_void_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_emeradic_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_emeradic_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addPage(new ReconstructorPageBuilder(ActuallyAdditions.modLoc("laser/crystalize_enori_crystal_block"), crystalsBuilder))
.setRecipe2(ActuallyAdditions.modLoc("laser/crystalize_enori_crystal"))
.setText("booklet.actuallyadditions.reconstructor_recipe").build();
crystalsBuilder.addCraftingPage(ActuallyAdditions.modLoc("decompress/restonia_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/restonia_crystal_block")).build()
.addCraftingPage(ActuallyAdditions.modLoc("decompress/palis_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/palis_crystal_block")).build()
.addCraftingPage(ActuallyAdditions.modLoc("decompress/diamatine_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/diamatine_crystal_block")).build()
.addCraftingPage(ActuallyAdditions.modLoc("decompress/void_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/void_crystal_block")).build()
.addCraftingPage(ActuallyAdditions.modLoc("decompress/emeradic_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/emeradic_crystal_block")).build()
.addCraftingPage(ActuallyAdditions.modLoc("decompress/enori_crystal"))
.setRecipe2(ActuallyAdditions.modLoc("compress/enori_crystal_block")).build();
crystalsBuilder.build();
//End of Getting Started
//Finish book
bookBuilder.build(consumer);
}
private String prefix(String name) {
return "booklet.actuallyadditions." + name;
}
}