Skip to content

Commit

Permalink
Fully implement verdant bands
Browse files Browse the repository at this point in the history
  • Loading branch information
IcarussOne committed Jan 30, 2025
1 parent f0eb9a2 commit ee40954
Show file tree
Hide file tree
Showing 5 changed files with 109 additions and 3 deletions.
71 changes: 71 additions & 0 deletions src/main/java/mod/icarus/crimsonrevelations/init/CRRecipes.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagByte;
import net.minecraft.nbt.NBTTagString;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.oredict.OreDictionary;
Expand All @@ -28,6 +29,7 @@ public static void initArcaneCrafting() {
new AspectList(),
new ItemStack(CRItems.EMBELLISHED_CRIMSON_FABRIC),
new Object[]{CRItems.CRIMSON_FABRIC, CRItems.CRIMSON_PLATE}));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "glyphstone"), new ShapedArcaneRecipe(
defaultGroup, "CR_ANCIENT_STONE", 15,
new AspectList(),
Expand All @@ -36,13 +38,15 @@ public static void initArcaneCrafting() {
"SBS",
"SBS",
'S', BlocksTC.stoneAncient, 'B', Items.BOOK));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_helm"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 25,
new AspectList(),
new ItemStack(ItemsTC.crimsonPlateHelm),
"PPP",
"P P",
'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_chestplate"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 50,
new AspectList(),
Expand All @@ -51,6 +55,7 @@ public static void initArcaneCrafting() {
"FEF",
"PPP",
'F', CRItems.CRIMSON_FABRIC, 'E', new ItemStack(CRItems.EMBELLISHED_CRIMSON_FABRIC), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_greaves"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 40,
new AspectList(),
Expand All @@ -59,13 +64,15 @@ public static void initArcaneCrafting() {
"P P",
"P P",
'B', new ItemStack(ItemsTC.baubles, 1, 2), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_hood"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 25,
new AspectList(),
new ItemStack(ItemsTC.crimsonRobeHelm),
"FFF",
"F F",
'F', CRItems.CRIMSON_FABRIC));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_robes"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 50,
new AspectList(),
Expand All @@ -74,6 +81,7 @@ public static void initArcaneCrafting() {
"FEF",
"FFF",
'F', CRItems.CRIMSON_FABRIC, 'E', new ItemStack(CRItems.EMBELLISHED_CRIMSON_FABRIC), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_leggings"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 40,
new AspectList(),
Expand All @@ -82,13 +90,15 @@ public static void initArcaneCrafting() {
"F F",
"F F",
'F', CRItems.CRIMSON_FABRIC, 'B', new ItemStack(ItemsTC.baubles, 1, 2), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_archer_helm"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 25,
new AspectList(),
new ItemStack(CRItems.CRIMSON_ARCHER_HELMET),
"PPP",
"F F",
'F', CRItems.CRIMSON_FABRIC, 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_archer_chestplate"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 50,
new AspectList(),
Expand All @@ -97,6 +107,7 @@ public static void initArcaneCrafting() {
"FEF",
"FPF",
'F', CRItems.CRIMSON_FABRIC, 'E', new ItemStack(CRItems.EMBELLISHED_CRIMSON_FABRIC), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_archer_greaves"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 40,
new AspectList(),
Expand All @@ -105,13 +116,15 @@ public static void initArcaneCrafting() {
"P P",
"F F",
'F', CRItems.CRIMSON_FABRIC, 'B', new ItemStack(ItemsTC.baubles, 1, 2), 'P', CRItems.CRIMSON_PLATE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_boots"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_ARMORY", 15,
new AspectList(),
new ItemStack(ItemsTC.crimsonBoots),
"F F",
"P P",
'P', CRItems.CRIMSON_PLATE, 'F', CRItems.CRIMSON_FABRIC));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimson_sword"), new ShapedArcaneRecipe(
defaultGroup, "CR_BASIC_CRIMSON_WEAPONRY", 50,
new AspectList(),
Expand All @@ -120,12 +133,14 @@ public static void initArcaneCrafting() {
"EIE",
"EPE",
'P', CRItems.CRIMSON_PLATE, 'I', new ItemStack(Items.IRON_SWORD, 1, OreDictionary.WILDCARD_VALUE), 'E', Items.SPIDER_EYE));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "knowledge_scribing_tools"), new ShapelessArcaneRecipe(
defaultGroup, "CR_KNOWLEDGE_SCRIBING_TOOLS", 50,
new AspectList().add(Aspect.AIR, 1).add(Aspect.EARTH, 1).add(Aspect.ENTROPY, 1).add(Aspect.FIRE, 1).add(Aspect.ORDER, 1).add(Aspect.WATER, 1),
new ItemStack(CRItems.KNOWLEDGE_SCRIBING_TOOLS),
new Object[]{new ItemStack(ItemsTC.scribingTools, 1, OreDictionary.WILDCARD_VALUE),
ItemsTC.salisMundus, ThaumcraftApiHelper.makeCrystal(Aspect.SENSES), ThaumcraftApiHelper.makeCrystal(Aspect.SENSES)}));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "aer_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -134,6 +149,7 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.AIR))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "aqua_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -142,6 +158,7 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.WATER))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "ignis_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -150,6 +167,7 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.FIRE))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "ordo_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -158,6 +176,7 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.ORDER))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "perditio_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -166,6 +185,7 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.ENTROPY))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "terra_arrow"), new ShapedArcaneRecipe(
defaultGroup, "CR_PRIMAL_ARROWS", 10,
new AspectList(),
Expand All @@ -174,12 +194,14 @@ public static void initArcaneCrafting() {
"ACA",
" A ",
'A', Items.ARROW, 'C', new IngredientNBTTC(ThaumcraftApiHelper.makeCrystal(Aspect.EARTH))));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "sanitation_scribing_tools"), new ShapelessArcaneRecipe(
defaultGroup, "CR_SANITATION_SCRIBING_TOOLS", 50,
new AspectList().add(Aspect.AIR, 1).add(Aspect.EARTH, 1).add(Aspect.ENTROPY, 1).add(Aspect.FIRE, 1).add(Aspect.ORDER, 1).add(Aspect.WATER, 1),
new ItemStack(CRItems.SANITATION_SCRIBING_TOOLS),
new Object[]{new ItemStack(ItemsTC.scribingTools, 1, OreDictionary.WILDCARD_VALUE),
new ItemStack(ItemsTC.sanitySoap, 1, OreDictionary.WILDCARD_VALUE), ThaumcraftApiHelper.makeCrystal(Aspect.MIND), ThaumcraftApiHelper.makeCrystal(Aspect.MIND)}));

ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "verdant_charm_to_ring"), new VerdantCharmToRing());
ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "verdant_ring_to_charm"), new VerdantRingToCharm());
}
Expand Down Expand Up @@ -243,6 +265,7 @@ public static void initInfusion() {
ThaumcraftApiHelper.makeCrystal(Aspect.ENTROPY, 1),
new ItemStack(ItemsTC.nuggets, 1, 10),
Blocks.BONE_BLOCK));

ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "crimsonblade"),
new InfusionRecipe("CR_CRIMSON_BLADE", new ItemStack(ItemsTC.crimsonBlade), 7,
new AspectList().add(Aspect.AVERSION, 75).add(Aspect.DEATH, 75).add(Aspect.TRAP, 25).add(Aspect.DESIRE, 25),
Expand All @@ -253,6 +276,7 @@ public static void initInfusion() {
"plateVoid",
CRItems.CRIMSON_FABRIC,
CRItems.CRIMSON_FABRIC));

ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "praetor_helm"),
new InfusionRecipe("CR_PRAETOR_ARMOR", new ItemStack(ItemsTC.crimsonPraetorHelm), 2,
new AspectList().add(Aspect.METAL, 40).add(Aspect.AVERSION, 25).add(Aspect.PROTECT, 20),
Expand All @@ -262,6 +286,7 @@ public static void initInfusion() {
CRItems.CRIMSON_PLATE,
CRItems.CRIMSON_PLATE,
CRItems.CRIMSON_PLATE));

ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "praetor_chestplate"),
new InfusionRecipe("CR_PRAETOR_ARMOR", new ItemStack(ItemsTC.crimsonPraetorChest), 2,
new AspectList().add(Aspect.METAL, 40).add(Aspect.AVERSION, 25).add(Aspect.PROTECT, 30),
Expand All @@ -272,6 +297,7 @@ public static void initInfusion() {
CRItems.CRIMSON_PLATE,
CRItems.CRIMSON_PLATE,
CRItems.EMBELLISHED_CRIMSON_FABRIC));

ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "praetor_greaves"),
new InfusionRecipe("CR_PRAETOR_ARMOR", new ItemStack(ItemsTC.crimsonPraetorLegs), 2,
new AspectList().add(Aspect.METAL, 40).add(Aspect.AVERSION, 25).add(Aspect.PROTECT, 25),
Expand All @@ -281,6 +307,7 @@ public static void initInfusion() {
CRItems.CRIMSON_PLATE,
CRItems.CRIMSON_PLATE,
CRItems.EMBELLISHED_CRIMSON_FABRIC));

ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "primordial_scribing_tools"),
new InfusionRecipe("CR_PRIMORDIAL_SCRIBING_TOOLS", new ItemStack(CRItems.PRIMORDIAL_SCRIBING_TOOLS), 0,
new AspectList().add(Aspect.AIR, 50).add(Aspect.EARTH, 50).add(Aspect.ENTROPY, 50).add(Aspect.FIRE, 50).add(Aspect.ORDER, 50).add(Aspect.WATER, 50),
Expand All @@ -291,6 +318,7 @@ public static void initInfusion() {
CRItems.KNOWLEDGE_SCRIBING_TOOLS,
CRItems.SANITATION_SCRIBING_TOOLS,
ItemsTC.voidSeed));

ItemStack runicAmuletStack = new ItemStack(CRItems.RUNIC_AMULET);
runicAmuletStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 8));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_amulet"),
Expand All @@ -303,6 +331,7 @@ public static void initInfusion() {
ItemsTC.fabric,
"nitor",
new ItemStack(ItemsTC.nuggets, 1, 10)));

ItemStack runicGirdleStack = new ItemStack(CRItems.RUNIC_GIRDLE);
runicGirdleStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 10));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_girdle"),
Expand All @@ -316,6 +345,7 @@ public static void initInfusion() {
ItemsTC.fabric,
"nitor",
new ItemStack(ItemsTC.nuggets, 1, 10)));

ItemStack runicRingStack = new ItemStack(CRItems.RUNIC_RING);
runicRingStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 5));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_ring"),
Expand All @@ -327,6 +357,7 @@ public static void initInfusion() {
ItemsTC.fabric,
"nitor",
new ItemStack(ItemsTC.nuggets, 1, 10)));

ItemStack runicAmuletEmergencyStack = new ItemStack(CRItems.RUNIC_AMULET_EMERGENCY);
runicAmuletEmergencyStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 7));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_amulet_emergency"),
Expand All @@ -339,6 +370,7 @@ public static void initInfusion() {
ThaumcraftApiHelper.makeCrystal(Aspect.PROTECT, 1),
ThaumcraftApiHelper.makeCrystal(Aspect.EARTH, 1),
ThaumcraftApiHelper.makeCrystal(Aspect.EARTH, 1)));

ItemStack runicGirdleKineticStack = new ItemStack(CRItems.RUNIC_GIRDLE_KINETIC);
runicGirdleKineticStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 9));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_girdle_kinetic"),
Expand All @@ -351,6 +383,7 @@ public static void initInfusion() {
Items.GUNPOWDER,
ThaumcraftApiHelper.makeCrystal(Aspect.AIR, 1),
ThaumcraftApiHelper.makeCrystal(Aspect.AIR, 1)));

ItemStack runicRingChargedStack = new ItemStack(CRItems.RUNIC_RING_CHARGED);
runicRingChargedStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 4));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_ring_charged"),
Expand All @@ -363,6 +396,7 @@ public static void initInfusion() {
ItemsTC.amber,
ThaumcraftApiHelper.makeCrystal(Aspect.FIRE, 1),
ThaumcraftApiHelper.makeCrystal(Aspect.FIRE, 1)));

ItemStack runicRingRegenStack = new ItemStack(CRItems.RUNIC_RING_REGEN);
runicRingRegenStack.setTagInfo("TC.RUNIC", new NBTTagByte((byte) 4));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "runic_ring_regen"),
Expand All @@ -376,6 +410,43 @@ public static void initInfusion() {
ThaumcraftApiHelper.makeCrystal(Aspect.WATER, 1),
ThaumcraftApiHelper.makeCrystal(Aspect.WATER, 1)));

ItemStack verdantBandStack = new ItemStack(CRItems.VERDANT_RING);
verdantBandStack.setTagInfo("type", new NBTTagByte((byte) 0));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "verdant_band"),
new InfusionRecipe("CR_VERDANT_BANDS", new ItemStack(CRItems.VERDANT_RING), 5,
new AspectList().add(Aspect.LIFE, 60).add(Aspect.ORDER, 30).add(Aspect.PLANT, 60),
new ItemStack(ItemsTC.baubles, 1, 5),
new ItemStack(ItemsTC.nuggets, 1, 10),
ThaumcraftApiHelper.makeCrystal(Aspect.LIFE, 1),
Items.MILK_BUCKET,
ThaumcraftApiHelper.makeCrystal(Aspect.PLANT, 1)));

ItemStack potion1 = new ItemStack(Items.POTIONITEM);
potion1.setTagInfo("Potion", new NBTTagString("minecraft:strong_healing"));
ItemStack verdantBandLifeStack = new ItemStack(CRItems.VERDANT_RING);
verdantBandLifeStack.setTagInfo("type", new NBTTagByte((byte) 1));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "verdant_band_life"),
new InfusionRecipe("CR_VERDANT_BANDS", verdantBandLifeStack, 5,
new AspectList().add(Aspect.LIFE, 80).add(Aspect.MAN, 80),
new ItemStack(CRItems.VERDANT_RING),
Items.GOLDEN_APPLE,
ThaumcraftApiHelper.makeCrystal(Aspect.LIFE, 1),
potion1,
ThaumcraftApiHelper.makeCrystal(Aspect.MAN, 1)));

ItemStack potion2 = new ItemStack(Items.POTIONITEM);
potion2.setTagInfo("Potion", new NBTTagString("minecraft:strong_regeneration"));
ItemStack verdantBandSustainStack = new ItemStack(CRItems.VERDANT_RING);
verdantBandSustainStack.setTagInfo("type", new NBTTagByte((byte) 2));
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "verdant_band_sustain"),
new InfusionRecipe("CR_VERDANT_BANDS", verdantBandSustainStack, 5,
new AspectList().add(Aspect.DESIRE, 80).add(Aspect.AIR, 80),
new ItemStack(CRItems.VERDANT_RING),
ItemsTC.tripleMeatTreat,
ThaumcraftApiHelper.makeCrystal(Aspect.DESIRE, 1),
potion2,
ThaumcraftApiHelper.makeCrystal(Aspect.AIR, 1)));

// Thaumic Augmentation Integration
if (Loader.isModLoaded("thaumicaugmentation")) {
ThaumcraftApi.addInfusionCraftingRecipe(new ResourceLocation(NewCrimsonRevelations.MODID, "meteor_boots"),
Expand Down
Loading

0 comments on commit ee40954

Please sign in to comment.