Skip to content

Commit

Permalink
feat: add book data generator
Browse files Browse the repository at this point in the history
  • Loading branch information
klikli-dev committed Dec 21, 2022
1 parent 1428ed2 commit eb8585f
Show file tree
Hide file tree
Showing 7 changed files with 74 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// 1.19.2 2022-12-07T18:25:36.8109299 Books: theurgy
d276faffd86ca23dd3cd376cad7d121ca08b5f46 data/theurgy/modonomicons/the_hermetica/book.json
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
// 1.19.2 2022-12-07T17:42:33.8512255 Languages: en_us
eda78b9049e529d9eb8067159895112c201b43c6 assets/theurgy/lang/en_us.json
// 1.19.2 2022-12-07T18:25:36.8059234 Languages: en_us
60ec1802d823ac252346543f3f1530b4c87e56b0 assets/theurgy/lang/en_us.json
2 changes: 2 additions & 0 deletions src/generated/resources/assets/theurgy/lang/en_us.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
{
"book.theurgy.the_hermetica.name": "The Hermetica",
"book.theurgy.the_hermetica.tooltip": "A treatise on the Ancient Art of Alchemy",
"item.theurgy.alchemical_sulfur": "Alchemical Sulfur %s",
"item.theurgy.alchemical_sulfur.tooltip": "Alchemical sulfur crafted from %s.",
"item.theurgy.alchemical_sulfur.tooltip.extended": "Sulfur represents the \"idea\" or \"soul\" of an object and is the key to replication and transmutation.",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"auto_add_read_conditions": true,
"book_content_texture": "modonomicon:textures/gui/book_content.png",
"book_overview_texture": "modonomicon:textures/gui/book_overview.png",
"crafting_texture": "modonomicon:textures/gui/crafting_textures.png",
"creative_tab": "modonomicon",
"default_title_color": 0,
"generate_book_item": true,
"model": "modonomicon:modonomicon_purple",
"name": "book.theurgy.the_hermetica.name",
"tooltip": "book.theurgy.the_hermetica.tooltip"
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

package com.klikli_dev.theurgy.datagen;

import com.klikli_dev.theurgy.Theurgy;
import com.klikli_dev.theurgy.datagen.lang.ENUSProvider;
import net.minecraft.data.DataGenerator;
import net.minecraftforge.data.event.GatherDataEvent;
Expand All @@ -15,8 +16,14 @@ public class DataGenerators {
public static void gatherData(GatherDataEvent event) {
DataGenerator generator = event.getGenerator();

generator.addProvider(event.includeClient(), new ENUSProvider(generator));
generator.addProvider(event.includeClient(), new ItemModelsProvider(generator, event.getExistingFileHelper()));
generator.addProvider(event.includeClient(), new RecipeProvider(generator));

var enUSProvider = new ENUSProvider(generator);
generator.addProvider(event.includeServer(), new TheurgyBookProvider(generator, Theurgy.MODID, enUSProvider));

//Important: Lang provider (in this case enus) needs to be added after the book provider to process the texts added by the book provider
generator.addProvider(event.includeClient(), enUSProvider);

}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
/*
* SPDX-FileCopyrightText: 2022 klikli-dev
*
* SPDX-License-Identifier: MIT
*/

package com.klikli_dev.theurgy.datagen;

import com.klikli_dev.modonomicon.api.ModonomiconAPI;
import com.klikli_dev.modonomicon.api.datagen.BookProvider;
import com.klikli_dev.modonomicon.api.datagen.book.BookModel;
import net.minecraft.data.DataGenerator;
import net.minecraftforge.common.data.LanguageProvider;

public class TheurgyBookProvider extends BookProvider {
public TheurgyBookProvider(DataGenerator generator, String modid, LanguageProvider lang) {
super(generator, modid, lang);
}

@Override
protected void generate() {
var theHermetica = this.makeTheHermetica();
this.add(theHermetica);
}

private BookModel makeTheHermetica() {
var helper = ModonomiconAPI.get().getLangHelper(this.modid);
helper.book("the_hermetica");

this.lang.add(helper.bookName(), "The Hermetica");
this.lang.add(helper.bookTooltip(), "A treatise on the Ancient Art of Alchemy");

int categorySortNum = 1;

var book = BookModel.builder()
.withId(this.modLoc("the_hermetica"))
.withName(helper.bookName())
.withTooltip(helper.bookTooltip())
.withCategories(

)
.withGenerateBookItem(true)
.withAutoAddReadConditions(true)
.build();
return book;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

package com.klikli_dev.theurgy.registry;

import com.klikli_dev.modonomicon.item.ModonomiconItem;
import com.klikli_dev.theurgy.Theurgy;
import com.klikli_dev.theurgy.config.ServerConfig;
import com.klikli_dev.theurgy.item.AlchemicalSulfurItem;
Expand Down

0 comments on commit eb8585f

Please sign in to comment.