diff --git a/src/generated/resources/assets/occultism/lang/en_us.json b/src/generated/resources/assets/occultism/lang/en_us.json index f213a218d..e12b3af03 100644 --- a/src/generated/resources/assets/occultism/lang/en_us.json +++ b/src/generated/resources/assets/occultism/lang/en_us.json @@ -240,7 +240,9 @@ "book.occultism.dictionary_of_spirits.familiar_rituals.overview.trading.text": "\"Familiars can be easily traded when in a [Familiar Ring](entry://crafting_rituals/craft_familiar_ring).\n\\\n\\\nWhen released, the spirit will recognize the person releasing them as their new master.\n", "book.occultism.dictionary_of_spirits.familiar_rituals.overview.trading.title": "Equipping Familiars", "book.occultism.dictionary_of_spirits.familiar_rituals.return_to_rituals.name": "Return to Rituals Category", + "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.awakened_feather_recipe.text": "In order to craft [#](ad03fc)Books of Binding[#]() to summon spirits, you also need awakened feather. Simply drop any feather into [](item://occultism:spirit_fire) to awakened it.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.book_of_binding_bound_foliot_recipe.text": "Add the name of the spirit to summon to your book of binding by crafting it with the Dictionary of Spirits. The Dictionary will not be used up.\n", + "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.book_of_binding_empty.text": " Alternatively, you can directly use the Binding Book: Empty instead of the previous three items. There are two ways to obtain this book. Place this book in the center of dyes to get specific book of binding.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.book_of_binding_foliot_recipe.text": "Craft a book of binding that will be used to call forth a [#](ad03fc)Foliot[#]() spirit.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.description": "Or how to identify your spirit", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.intro.text": "To call forth a spirit, a [#](ad03fc)Book of Binding[#]() must be used in the ritual.\nThere is a type of book corresponding to each type (or tier) of spirit.\nTo identify a spirit to summon, it's name must be written in the [#](ad03fc)Book of Binding[#](), resulting in a [#](ad03fc)Bound Book of Binding[#]() that can be used in the ritual.\n", @@ -248,6 +250,7 @@ "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.intro2.text": "**Note:** *The spirit names are eye candy only*, that means they are not relevant for the recipe. As long as you have the right spirit type in your book of binding it can be used.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.name": "Books of Binding", "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.purified_ink_recipe.text": "In order to craft [#](ad03fc)Books of Binding[#]() to summon spirits, you need purified ink. Simply drop any black dye into [](item://occultism:spirit_fire) to purify it.\n", + "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.taboo_book_recipe.text": "Lastly you need taboo book to craft [#](ad03fc)Books of Binding[#]() to summon spirits. Simply drop a book into [](item://occultism:spirit_fire) to get it.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_calling.description": "Telling your spirits what to do", "book.occultism.dictionary_of_spirits.getting_started.books_of_calling.intro.text": "Books of Calling allow to control a summoned spirit, and to store it to prevent essence decay or move it more easily.\n\\\n\\\nOnly spirits that require precise instructions - such as a work area or drop-off storage - come with a book of calling.\n", "book.occultism.dictionary_of_spirits.getting_started.books_of_calling.intro.title": "Books of Calling", @@ -676,7 +679,7 @@ "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t3.intro.text": "The afrit crusher is resistant to essence decay and faster and more efficient than the djinni crusher.\n\\\n\\\nIt will crush **one** ore into **four** corresponding dusts.\n", "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t3.intro.title": "Afrit Crusher", "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t3.name": "Summon Afrit Crusher", - "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t4.intro.text": "The afrit crusher is resistant to essence decay and faster and more efficient than the afrit crusher.\n\\\n\\\nIt will crush **one** ore into **six** corresponding dusts.\n", + "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t4.intro.text": "The marid crusher is resistant to essence decay and faster and more efficient than the afrit crusher.\n\\\n\\\nIt will crush **one** ore into **six** corresponding dusts.\n", "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t4.intro.title": "Marid Crusher", "book.occultism.dictionary_of_spirits.summoning_rituals.summon_crusher_t4.name": "Summon Marid Crusher", "book.occultism.dictionary_of_spirits.summoning_rituals.summon_lumberjack.book_of_calling.text": "If you lose the book of calling, you can craft a new one.\n[#](ad03fc)Shift-right-click[#]() the spirit with the crafted book to assign it.\n", @@ -820,6 +823,7 @@ "gui.occultism.storage_controller.space_info_label": "%d/%d", "item.minecraft.diamond_sword.occultism_spirit_tooltip": "%s is bound to this sword. May your foes tremor before its glory.", "item.occultism.afrit_essence": "Afrit Essence", + "item.occultism.awakened_feather": "Awakened Feather", "item.occultism.book_of_binding_afrit": "Book of Binding: Afrit", "item.occultism.book_of_binding_afrit.tooltip": "This book has not been bound to an afrit yet.", "item.occultism.book_of_binding_bound_afrit": "Book of Binding: Afrit (Bound)", @@ -832,6 +836,8 @@ "item.occultism.book_of_binding_bound_marid.tooltip": "Can be used to summon the marid %s", "item.occultism.book_of_binding_djinni": "Book of Binding: Djinni", "item.occultism.book_of_binding_djinni.tooltip": "This book has not been bound to a djinni yet.", + "item.occultism.book_of_binding_empty": "Book of Binding: Empty", + "item.occultism.book_of_binding_empty.tooltip": "This book has not been defined to any spirit yet.", "item.occultism.book_of_binding_foliot": "Book of Binding: Foliot", "item.occultism.book_of_binding_foliot.tooltip": "This book has not been bound to a foliot yet.", "item.occultism.book_of_binding_marid": "Book of Binding: Marid", @@ -1098,6 +1104,7 @@ "item.occultism.storage_remote.tooltip": "Access a storage network remotely.", "item.occultism.storage_remote.tooltip.linked": "Bound to %s.", "item.occultism.storage_remote_inert": "Inert Storage Accessor", + "item.occultism.taboo_book": "Taboo Book", "item.occultism.tallow": "Tallow", "item.occultism.wormhole_frame": "Wormhole Frame", "itemGroup.occultism": "Occultism", diff --git a/src/generated/resources/data/occultism/modonomicon/books/dictionary_of_spirits/entries/getting_started/books_of_binding.json b/src/generated/resources/data/occultism/modonomicon/books/dictionary_of_spirits/entries/getting_started/books_of_binding.json index 611d410e1..de4821891 100644 --- a/src/generated/resources/data/occultism/modonomicon/books/dictionary_of_spirits/entries/getting_started/books_of_binding.json +++ b/src/generated/resources/data/occultism/modonomicon/books/dictionary_of_spirits/entries/getting_started/books_of_binding.json @@ -31,6 +31,22 @@ "title1": "", "title2": "" }, + { + "type": "occultism:spirit_fire_recipe", + "anchor": "", + "recipe_id_1": "occultism:spirit_fire/awakened_feather", + "text": "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.awakened_feather_recipe.text", + "title1": "", + "title2": "" + }, + { + "type": "occultism:spirit_fire_recipe", + "anchor": "", + "recipe_id_1": "occultism:spirit_fire/taboo_book", + "text": "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.taboo_book_recipe.text", + "title1": "", + "title2": "" + }, { "type": "modonomicon:crafting_recipe", "anchor": "", @@ -73,6 +89,22 @@ "text": "", "title1": "", "title2": "" + }, + { + "type": "occultism:spirit_fire_recipe", + "anchor": "", + "recipe_id_1": "occultism:spirit_fire/book_of_binding_empty", + "text": "book.occultism.dictionary_of_spirits.getting_started.books_of_binding.book_of_binding_empty.text", + "title1": "", + "title2": "" + }, + { + "type": "modonomicon:crafting_recipe", + "anchor": "", + "recipe_id_2": "occultism:crafting/book_of_binding_empty", + "text": "", + "title1": "", + "title2": "" } ], "parents": [ diff --git a/src/main/java/com/klikli_dev/occultism/datagen/OccultismBookProvider.java b/src/main/java/com/klikli_dev/occultism/datagen/OccultismBookProvider.java index 44681e27b..202edf517 100644 --- a/src/main/java/com/klikli_dev/occultism/datagen/OccultismBookProvider.java +++ b/src/main/java/com/klikli_dev/occultism/datagen/OccultismBookProvider.java @@ -1010,6 +1010,26 @@ There is a type of book corresponding to each type (or tier) of spirit. In order to craft [#](%1$s)Books of Binding[#]() to summon spirits, you need purified ink. Simply drop any black dye into [](item://occultism:spirit_fire) to purify it. """.formatted(COLOR_PURPLE)); + this.context().page("awakened_feather_recipe"); + var awakenedFeatherRecipe = BookSpiritFireRecipePageModel.builder() + .withRecipeId1(this.modLoc("spirit_fire/awakened_feather")) + .withText(this.context().pageText()) + .build(); + this.lang().add(this.context().pageText(), + """ + In order to craft [#](%1$s)Books of Binding[#]() to summon spirits, you also need awakened feather. Simply drop any feather into [](item://occultism:spirit_fire) to awakened it. + """.formatted(COLOR_PURPLE)); + + this.context().page("taboo_book_recipe"); + var tabooBookRecipe = BookSpiritFireRecipePageModel.builder() + .withRecipeId1(this.modLoc("spirit_fire/taboo_book")) + .withText(this.context().pageText()) + .build(); + this.lang().add(this.context().pageText(), + """ + Lastly you need taboo book to craft [#](%1$s)Books of Binding[#]() to summon spirits. Simply drop a book into [](item://occultism:spirit_fire) to get it. + """.formatted(COLOR_PURPLE)); + this.context().page("book_of_binding_foliot_recipe"); var bookOfBindingFoliotRecipe = BookCraftingRecipePageModel.builder() .withRecipeId1(this.modLoc("crafting/book_of_binding_foliot")) @@ -1045,12 +1065,28 @@ There is a type of book corresponding to each type (or tier) of spirit. //no text this.context().page("book_of_binding_marid_recipe"); - var bookOfBindingMaritRecipe = BookCraftingRecipePageModel.builder() + var bookOfBindingMaridRecipe = BookCraftingRecipePageModel.builder() .withRecipeId1(this.modLoc("crafting/book_of_binding_marid")) .withRecipeId2(this.modLoc("crafting/book_of_binding_bound_marid")) .build(); //no text + this.context().page("book_of_binding_empty"); + var alternativeBooks = BookSpiritFireRecipePageModel.builder() + .withRecipeId1(this.modLoc("spirit_fire/book_of_binding_empty")) + .withText(this.context().pageText()) + .build(); + this.lang().add(this.context().pageText(), + """ + Alternatively, you can directly use the Binding Book: Empty instead of the previous three items. There are two ways to obtain this book. Place this book in the center of dyes to get specific book of binding. + """.formatted(COLOR_PURPLE)); + + this.context().page("book_of_binding_empty_recipe"); + var bookOfBindingEmptyRecipe = BookCraftingRecipePageModel.builder() + .withRecipeId2(this.modLoc("crafting/book_of_binding_empty")) + .build(); + //no text + return BookEntryModel.create(this.modLoc(this.context().categoryId() + "/" + this.context().entryId()), this.context().entryName()) .withDescription(this.context().entryDescription()) .withIcon(OccultismItems.BOOK_OF_BINDING_BOUND_FOLIOT.getId().toString()) @@ -1059,11 +1095,15 @@ There is a type of book corresponding to each type (or tier) of spirit. intro, intro2, purifiedInkRecipe, + awakenedFeatherRecipe, + tabooBookRecipe, bookOfBindingFoliotRecipe, bookOfBindingBoundFoliotRecipe, bookOfBindingDjinniRecipe, bookOfBindingAfritRecipe, - bookOfBindingMaritRecipe + bookOfBindingMaridRecipe, + alternativeBooks, + bookOfBindingEmptyRecipe ); } diff --git a/src/main/java/com/klikli_dev/occultism/datagen/lang/ENUSProvider.java b/src/main/java/com/klikli_dev/occultism/datagen/lang/ENUSProvider.java index 5d52897d5..6dfc2463a 100644 --- a/src/main/java/com/klikli_dev/occultism/datagen/lang/ENUSProvider.java +++ b/src/main/java/com/klikli_dev/occultism/datagen/lang/ENUSProvider.java @@ -82,7 +82,7 @@ public void addItemMessages() { public void addItemTooltips() { //"item\.occultism\.(.*?)\.(.*)": "(.*)", // this.add\(OccultismItems.\U\1\E.get\(\).getDescriptionId\(\) + " \2", "\3"\); - + this.add(OccultismItems.BOOK_OF_BINDING_EMPTY.get().getDescriptionId() + ".tooltip", "This book has not been defined to any spirit yet."); this.add(OccultismItems.BOOK_OF_BINDING_FOLIOT.get().getDescriptionId() + ".tooltip", "This book has not been bound to a foliot yet."); this.add(OccultismItems.BOOK_OF_BINDING_BOUND_FOLIOT.get().getDescriptionId() + ".tooltip", "Can be used to summon the foliot %s"); this.add(OccultismItems.BOOK_OF_BINDING_DJINNI.get().getDescriptionId() + ".tooltip", "This book has not been bound to a djinni yet."); @@ -153,6 +153,9 @@ private void addItems() { this.addItem(OccultismItems.BRUSH, "Chalk Brush"); this.addItem(OccultismItems.AFRIT_ESSENCE, "Afrit Essence"); this.addItem(OccultismItems.PURIFIED_INK, "Purified Ink"); + this.addItem(OccultismItems.AWAKENED_FEATHER, "Awakened Feather"); + this.addItem(OccultismItems.TABOO_BOOK, "Taboo Book"); + this.addItem(OccultismItems.BOOK_OF_BINDING_EMPTY, "Book of Binding: Empty"); this.addItem(OccultismItems.BOOK_OF_BINDING_FOLIOT, "Book of Binding: Foliot"); this.addItem(OccultismItems.BOOK_OF_BINDING_BOUND_FOLIOT, "Book of Binding: Foliot (Bound)"); this.addItem(OccultismItems.BOOK_OF_BINDING_DJINNI, "Book of Binding: Djinni"); @@ -1391,7 +1394,7 @@ private void addSummoningRitualsCategory(BookContextHelper helper) { this.add(helper.pageTitle(), "Marid Crusher"); this.add(helper.pageText(), """ - The afrit crusher is resistant to essence decay and faster and more efficient than the afrit crusher. + The marid crusher is resistant to essence decay and faster and more efficient than the afrit crusher. \\ \\ It will crush **one** ore into **six** corresponding dusts. diff --git a/src/main/java/com/klikli_dev/occultism/registry/OccultismItems.java b/src/main/java/com/klikli_dev/occultism/registry/OccultismItems.java index 1959c68f1..e2c3486f5 100644 --- a/src/main/java/com/klikli_dev/occultism/registry/OccultismItems.java +++ b/src/main/java/com/klikli_dev/occultism/registry/OccultismItems.java @@ -153,14 +153,6 @@ public class OccultismItems { () -> new Item(defaultProperties())); public static final RegistryObject LENS_FRAME = ITEMS.register("lens_frame", () -> new Item(defaultProperties())); - public static final RegistryObject PURIFIED_INK = ITEMS.register("purified_ink", - () -> new Item(defaultProperties())); - - public static final RegistryObject SPIRIT_ATTUNED_PICKAXE_HEAD = ITEMS.register("spirit_attuned_pickaxe_head", - () -> new Item(defaultProperties())); - - public static final RegistryObject MAGIC_LAMP_EMPTY = ITEMS.register("magic_lamp_empty", - () -> new Item(defaultProperties())); public static final RegistryObject STORAGE_REMOTE = ITEMS.register("storage_remote", () -> new StorageRemoteItem(defaultProperties().stacksTo(1))); @@ -185,6 +177,8 @@ public class OccultismItems { public static final RegistryObject BUTCHER_KNIFE = ITEMS.register("butcher_knife", () -> new SwordItem(Tiers.IRON, 3, -2.4F, defaultProperties())); + public static final RegistryObject SPIRIT_ATTUNED_PICKAXE_HEAD = ITEMS.register("spirit_attuned_pickaxe_head", + () -> new Item(defaultProperties())); public static final RegistryObject INFUSED_PICKAXE = ITEMS.register("infused_pickaxe", () -> new InfusedPickaxeItem(OccultismItemTier.SPIRIT_ATTUNED_GEM, 1, -2.8F, defaultProperties())); public static final RegistryObject IESNIUM_PICKAXE = ITEMS.register("iesnium_pickaxe", @@ -199,7 +193,15 @@ public class OccultismItems { public static final RegistryObject FAMILIAR_RING = ITEMS.register("familiar_ring", () -> new FamiliarRingItem(defaultProperties().stacksTo(1))); + public static final RegistryObject PURIFIED_INK = ITEMS.register("purified_ink", + () -> new Item(defaultProperties())); + public static final RegistryObject AWAKENED_FEATHER = ITEMS.register("awakened_feather", + () -> new Item(defaultProperties())); + public static final RegistryObject TABOO_BOOK = ITEMS.register("taboo_book", + () -> new Item(defaultProperties())); //Books of Binding + public static final RegistryObject BOOK_OF_BINDING_EMPTY = ITEMS.register( + "book_of_binding_empty", () -> new BookOfBindingItem(defaultProperties().stacksTo(1))); public static final RegistryObject BOOK_OF_BINDING_FOLIOT = ITEMS.register( "book_of_binding_foliot", () -> new BookOfBindingItem(defaultProperties().stacksTo(1))); public static final RegistryObject BOOK_OF_BINDING_BOUND_FOLIOT = ITEMS.register( @@ -257,6 +259,8 @@ public class OccultismItems { () -> new SpiritHealingItem(defaultProperties().food(OccultismFoods.DATURA.get()))); //Miner Spirits + public static final RegistryObject MAGIC_LAMP_EMPTY = ITEMS.register("magic_lamp_empty", + () -> new Item(defaultProperties())); public static final RegistryObject MINER_DEBUG_UNSPECIALIZED = ITEMS.register("miner_debug_unspecialized", () -> new MinerSpiritItem(defaultProperties().durability(10000), () -> 100, () -> 10, () -> 10000)); diff --git a/src/main/resources/assets/occultism/models/item/awakened_feather.json b/src/main/resources/assets/occultism/models/item/awakened_feather.json new file mode 100644 index 000000000..e6122f0f1 --- /dev/null +++ b/src/main/resources/assets/occultism/models/item/awakened_feather.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "occultism:item/awakened_feather" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/occultism/models/item/book_of_binding_empty.json b/src/main/resources/assets/occultism/models/item/book_of_binding_empty.json new file mode 100644 index 000000000..570bf9be6 --- /dev/null +++ b/src/main/resources/assets/occultism/models/item/book_of_binding_empty.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "occultism:item/book_of_binding_empty" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/occultism/models/item/taboo_book.json b/src/main/resources/assets/occultism/models/item/taboo_book.json new file mode 100644 index 000000000..10ad33353 --- /dev/null +++ b/src/main/resources/assets/occultism/models/item/taboo_book.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "occultism:item/taboo_book" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/occultism/textures/item/awakened_feather.png b/src/main/resources/assets/occultism/textures/item/awakened_feather.png new file mode 100644 index 000000000..5b8fa80b1 Binary files /dev/null and b/src/main/resources/assets/occultism/textures/item/awakened_feather.png differ diff --git a/src/main/resources/assets/occultism/textures/item/awakened_feather.png.mcmeta b/src/main/resources/assets/occultism/textures/item/awakened_feather.png.mcmeta new file mode 100644 index 000000000..89e7ff21e --- /dev/null +++ b/src/main/resources/assets/occultism/textures/item/awakened_feather.png.mcmeta @@ -0,0 +1,23 @@ +{ + "animation": { + "interpolate": true, + "frames": [ + { + "index": 0, + "time": 10 + }, + { + "index": 1, + "time": 10 + }, + { + "index": 2, + "time": 10 + }, + { + "index": 3, + "time": 10 + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/occultism/textures/item/book_of_binding_empty.png b/src/main/resources/assets/occultism/textures/item/book_of_binding_empty.png new file mode 100644 index 000000000..d170bc01a Binary files /dev/null and b/src/main/resources/assets/occultism/textures/item/book_of_binding_empty.png differ diff --git a/src/main/resources/assets/occultism/textures/item/taboo_book.png b/src/main/resources/assets/occultism/textures/item/taboo_book.png new file mode 100644 index 000000000..fbb73d3f6 Binary files /dev/null and b/src/main/resources/assets/occultism/textures/item/taboo_book.png differ diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit.json index 7cc21a25a..6862b68da 100644 --- a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit.json +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit.json @@ -1,7 +1,7 @@ { "type": "minecraft:crafting_shaped", "pattern": [ - "cp ", + "cpf", "pbp", " p " ], @@ -10,10 +10,13 @@ "tag": "forge:dyes/purple" }, "b": { - "item": "minecraft:writable_book" + "item": "occultism:taboo_book" }, "c": { "item": "occultism:purified_ink" + }, + "f": { + "item": "occultism:awakened_feather" } }, "result": { diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit_from_empty.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit_from_empty.json new file mode 100644 index 000000000..65f902d64 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_afrit_from_empty.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " p ", + "pbp", + " p " + ], + "key": { + "p": { + "tag": "forge:dyes/purple" + }, + "b": { + "item": "occultism:book_of_binding_empty" + } + }, + "result": { + "item": "occultism:book_of_binding_afrit" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni.json index eab384206..7eccb9083 100644 --- a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni.json +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni.json @@ -1,7 +1,7 @@ { "type": "minecraft:crafting_shaped", "pattern": [ - "cg ", + "cgf", "gbg", " g " ], @@ -10,10 +10,13 @@ "tag": "forge:dyes/green" }, "b": { - "item": "minecraft:writable_book" + "item": "occultism:taboo_book" }, "c": { "item": "occultism:purified_ink" + }, + "f": { + "item": "occultism:awakened_feather" } }, "result": { diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni_from_empty.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni_from_empty.json new file mode 100644 index 000000000..fd6cbde11 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_djinni_from_empty.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " g ", + "gbg", + " g " + ], + "key": { + "g": { + "tag": "forge:dyes/green" + }, + "b": { + "item": "occultism:book_of_binding_empty" + } + }, + "result": { + "item": "occultism:book_of_binding_djinni" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_empty.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_empty.json new file mode 100644 index 000000000..51941db33 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_empty.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "occultism:taboo_book" + }, + { + "item": "occultism:purified_ink" + }, + { + "item": "occultism:awakened_feather" + } + ], + "result": { + "item": "occultism:book_of_binding_empty" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot.json index 3cc37ee11..458d3f7ba 100644 --- a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot.json +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot.json @@ -1,7 +1,7 @@ { "type": "minecraft:crafting_shaped", "pattern": [ - "cw ", + "cwf", "wbw", " w " ], @@ -10,10 +10,13 @@ "tag": "forge:dyes/white" }, "b": { - "item": "minecraft:writable_book" + "item": "occultism:taboo_book" }, "c": { "item": "occultism:purified_ink" + }, + "f": { + "item": "occultism:awakened_feather" } }, "result": { diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot_from_empty.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot_from_empty.json new file mode 100644 index 000000000..0e7517f80 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_foliot_from_empty.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " w ", + "wbw", + " w " + ], + "key": { + "w": { + "tag": "forge:dyes/white" + }, + "b": { + "item": "occultism:book_of_binding_empty" + } + }, + "result": { + "item": "occultism:book_of_binding_foliot" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid.json index bc6c5404b..8645deaa7 100644 --- a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid.json +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid.json @@ -1,7 +1,7 @@ { "type": "minecraft:crafting_shaped", "pattern": [ - "co ", + "cof", "pbp", " o " ], @@ -13,10 +13,13 @@ "tag": "forge:dyes/orange" }, "b": { - "item": "minecraft:writable_book" + "item": "occultism:taboo_book" }, "c": { "item": "occultism:purified_ink" + }, + "f": { + "item": "occultism:awakened_feather" } }, "result": { diff --git a/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid_from_empty.json b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid_from_empty.json new file mode 100644 index 000000000..cb5129716 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/crafting/book_of_binding_marid_from_empty.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " o ", + "pbp", + " o " + ], + "key": { + "p": { + "tag": "forge:dyes/purple" + }, + "o": { + "tag": "forge:dyes/orange" + }, + "b": { + "item": "occultism:book_of_binding_empty" + } + }, + "result": { + "item": "occultism:book_of_binding_marid" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/spirit_fire/awakened_feather.json b/src/main/resources/data/occultism/recipes/spirit_fire/awakened_feather.json new file mode 100644 index 000000000..04a387c1a --- /dev/null +++ b/src/main/resources/data/occultism/recipes/spirit_fire/awakened_feather.json @@ -0,0 +1,9 @@ +{ + "type": "occultism:spirit_fire", + "ingredient": { + "tag": "forge:feathers" + }, + "result": { + "item": "occultism:awakened_feather" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/spirit_fire/book_of_binding_empty.json b/src/main/resources/data/occultism/recipes/spirit_fire/book_of_binding_empty.json new file mode 100644 index 000000000..8455ecf9d --- /dev/null +++ b/src/main/resources/data/occultism/recipes/spirit_fire/book_of_binding_empty.json @@ -0,0 +1,9 @@ +{ + "type": "occultism:spirit_fire", + "ingredient": { + "item": "minecraft:writable_book" + }, + "result": { + "item": "occultism:book_of_binding_empty" + } +} \ No newline at end of file diff --git a/src/main/resources/data/occultism/recipes/spirit_fire/taboo_book.json b/src/main/resources/data/occultism/recipes/spirit_fire/taboo_book.json new file mode 100644 index 000000000..0b0f97bb4 --- /dev/null +++ b/src/main/resources/data/occultism/recipes/spirit_fire/taboo_book.json @@ -0,0 +1,9 @@ +{ + "type": "occultism:spirit_fire", + "ingredient": { + "item": "minecraft:book" + }, + "result": { + "item": "occultism:taboo_book" + } +} \ No newline at end of file