mirror of
https://github.com/GTNewHorizons/ThaumicBases.git
synced 2026-10-25 20:32:26 +00:00
4110 lines
179 KiB
Java
4110 lines
179 KiB
Java
package tb.init;
|
|
|
|
import net.minecraft.block.Block;
|
|
import net.minecraft.init.Blocks;
|
|
import net.minecraft.init.Items;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.item.crafting.CraftingManager;
|
|
import net.minecraft.item.crafting.IRecipe;
|
|
import net.minecraft.util.ResourceLocation;
|
|
import net.minecraftforge.oredict.OreDictionary;
|
|
import net.minecraftforge.oredict.ShapedOreRecipe;
|
|
import net.minecraftforge.oredict.ShapelessOreRecipe;
|
|
|
|
import cpw.mods.fml.common.Loader;
|
|
import cpw.mods.fml.common.registry.GameRegistry;
|
|
import tb.api.RevolverUpgrade;
|
|
import tb.utils.RevolverInfusionRecipe;
|
|
import tb.utils.TBConfig;
|
|
import thaumcraft.api.ThaumcraftApi;
|
|
import thaumcraft.api.aspects.Aspect;
|
|
import thaumcraft.api.aspects.AspectList;
|
|
import thaumcraft.api.crafting.CrucibleRecipe;
|
|
import thaumcraft.api.crafting.InfusionEnchantmentRecipe;
|
|
import thaumcraft.api.crafting.InfusionRecipe;
|
|
import thaumcraft.api.crafting.ShapedArcaneRecipe;
|
|
import thaumcraft.api.crafting.ShapelessArcaneRecipe;
|
|
import thaumcraft.api.research.ResearchCategories;
|
|
import thaumcraft.api.research.ResearchItem;
|
|
import thaumcraft.api.research.ResearchPage;
|
|
import thaumcraft.common.config.ConfigBlocks;
|
|
import thaumcraft.common.config.ConfigItems;
|
|
|
|
public class TBThaumonomicon {
|
|
|
|
public static final String catName = "THAUMICBASES";
|
|
public static final ResourceLocation icon = new ResourceLocation(
|
|
"thaumicbases",
|
|
"textures/thaumonomicon/bases1.png");
|
|
public static final ResourceLocation back = new ResourceLocation(
|
|
"thaumicbases",
|
|
"textures/thaumonomicon/background.png");
|
|
|
|
@SuppressWarnings({ "unchecked" })
|
|
public static void setup() {
|
|
OreDictionary.registerOre("pestleAndMortar", new ItemStack(TBItems.mortar, 1, OreDictionary.WILDCARD_VALUE));
|
|
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.pyrofluid, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.FIRE, 16)
|
|
.add(Aspect.MAGIC, 8)
|
|
.add(Aspect.LIGHT, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.ironGreatwood, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.TREE, 1)
|
|
.add(Aspect.METAL, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.plaxSeed),
|
|
new AspectList().add(Aspect.CROP, 1)
|
|
.add(Aspect.CLOTH, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.aurelia, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.LIGHT, 1)
|
|
.add(Aspect.SENSES, 1)
|
|
.add(Aspect.LIFE, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.aureliaPetal, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.AURA, 6)
|
|
.add(Aspect.SENSES, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.resource, 1, 5),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.AURA, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.resource, 1, 6),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.HEAL, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.resource, 1, 7),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.MAN, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.MAN, 1)
|
|
.add(Aspect.ENTROPY, 0));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.mortar, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.TREE, 6)
|
|
.add(Aspect.TOOL, 1));
|
|
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 0),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.AIR, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 1),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.FIRE, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 2),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.WATER, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 3),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.EARTH, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 4),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.ORDER, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 5),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.ENTROPY, 6));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 6),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(primals(2)));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.knoseFragment, 1, 7),
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.TAINT, 6));
|
|
|
|
boolean isFMLoaded = Loader.isModLoaded("ForbiddenMagic");
|
|
Aspect nether = Aspect.FIRE;
|
|
if (isFMLoaded) nether = Aspect.getAspect("infernus");
|
|
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLeaves, 1, 0),
|
|
new int[] { 0, 8 },
|
|
new AspectList().add(Aspect.PLANT, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLeaves, 1, 1),
|
|
new int[] { 1, 9 },
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.LIFE, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLeaves, 1, 2),
|
|
new int[] { 2, 10 },
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(nether, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLeaves, 1, 3),
|
|
new int[] { 3, 11 },
|
|
new AspectList().add(Aspect.PLANT, 1)
|
|
.add(Aspect.ELDRITCH, 1));
|
|
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLogs, 1, 0),
|
|
new int[] { 0, 4, 8 },
|
|
new AspectList().add(Aspect.TREE, 3)
|
|
.add(Aspect.HEAL, 1)
|
|
.add(Aspect.LIFE, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLogs, 1, 1),
|
|
new int[] { 1, 5, 9 },
|
|
new AspectList().add(Aspect.TREE, 3)
|
|
.add(Aspect.FIRE, 1)
|
|
.add(nether, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.genLogs, 1, 2),
|
|
new int[] { 2, 6, 10 },
|
|
new AspectList().add(Aspect.TREE, 3)
|
|
.add(Aspect.ELDRITCH, 1)
|
|
.add(Aspect.VOID, 1));
|
|
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.sapling, 1, 0),
|
|
new int[] { 0, 8 },
|
|
new AspectList().add(Aspect.PLANT, 3)
|
|
.add(Aspect.GREED, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.sapling, 1, 1),
|
|
new int[] { 1, 9 },
|
|
new AspectList().add(Aspect.PLANT, 3)
|
|
.add(Aspect.LIFE, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.sapling, 1, 2),
|
|
new int[] { 2, 10 },
|
|
new AspectList().add(Aspect.PLANT, 3)
|
|
.add(nether, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBBlocks.sapling, 1, 3),
|
|
new int[] { 3, 11 },
|
|
new AspectList().add(Aspect.PLANT, 3)
|
|
.add(Aspect.ELDRITCH, 1));
|
|
ThaumcraftApi.registerObjectTag(
|
|
new ItemStack(TBItems.fociExperience, 1, 0),
|
|
new AspectList().add(Aspect.METAL, 24)
|
|
.add(Aspect.GREED, 17)
|
|
.add(Aspect.CRYSTAL, 12)
|
|
.add(Aspect.EARTH, 7)
|
|
.add(Aspect.VOID, 5)
|
|
.add(Aspect.HUNGER, 5));
|
|
|
|
ResearchCategories.registerCategory(catName, icon, back);
|
|
|
|
CrucibleRecipe wool3Rec = new CrucibleRecipe(
|
|
"TB.AdvancedEntropy",
|
|
new ItemStack(Items.string, 3, 0),
|
|
new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
CrucibleRecipe sandstone3Rec = new CrucibleRecipe(
|
|
"TB.AdvancedEntropy",
|
|
new ItemStack(Blocks.sand, 3, 0),
|
|
new ItemStack(Blocks.sandstone, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
CrucibleRecipe blaze3Rec = new CrucibleRecipe(
|
|
"TB.AdvancedEntropy",
|
|
new ItemStack(Items.blaze_powder, 3, 0),
|
|
new ItemStack(Items.blaze_rod, 1, 0),
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
|
|
CrucibleRecipe wool4Rec = new CrucibleRecipe(
|
|
"TB.MasterEntropy",
|
|
new ItemStack(Items.string, 4, 0),
|
|
new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.ENTROPY, 1)
|
|
.add(Aspect.CRAFT, 1));
|
|
CrucibleRecipe sandstone4Rec = new CrucibleRecipe(
|
|
"TB.MasterEntropy",
|
|
new ItemStack(Blocks.sand, 4, 0),
|
|
new ItemStack(Blocks.sandstone, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.ENTROPY, 1)
|
|
.add(Aspect.CRAFT, 1));
|
|
CrucibleRecipe blaze4Rec = new CrucibleRecipe(
|
|
"TB.MasterEntropy",
|
|
new ItemStack(Items.blaze_powder, 4, 0),
|
|
new ItemStack(Items.blaze_rod, 1, 0),
|
|
new AspectList().add(Aspect.ENTROPY, 1)
|
|
.add(Aspect.CRAFT, 1));
|
|
|
|
CrucibleRecipe glassSand = new CrucibleRecipe(
|
|
"TB.StrongEntropy",
|
|
new ItemStack(Blocks.sand, 1, 0),
|
|
"blockGlass",
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
CrucibleRecipe gravelSand = new CrucibleRecipe(
|
|
"TB.StrongEntropy",
|
|
new ItemStack(Blocks.sand, 1, 0),
|
|
new ItemStack(Blocks.gravel),
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
CrucibleRecipe barsIron = new CrucibleRecipe(
|
|
"TB.StrongEntropy",
|
|
new ItemStack(ConfigItems.itemNugget, 3, 0),
|
|
new ItemStack(Blocks.iron_bars),
|
|
new AspectList().add(Aspect.ENTROPY, 1));
|
|
|
|
CrucibleRecipe arrows = new CrucibleRecipe(
|
|
"TB.SimpleDublication",
|
|
new ItemStack(Items.arrow, 2, 0),
|
|
new ItemStack(Items.arrow, 1, 0),
|
|
new AspectList().add(Aspect.WEAPON, 1));
|
|
CrucibleRecipe snowball = new CrucibleRecipe(
|
|
"TB.SimpleDublication",
|
|
new ItemStack(Items.snowball, 2, 0),
|
|
new ItemStack(Items.snowball, 1, 0),
|
|
new AspectList().add(Aspect.COLD, 1));
|
|
CrucibleRecipe redstone = new CrucibleRecipe(
|
|
"TB.SimpleDublication",
|
|
new ItemStack(Items.redstone, 2, 0),
|
|
new ItemStack(Items.redstone, 1, 0),
|
|
new AspectList().add(Aspect.MECHANISM, 1)
|
|
.add(Aspect.ENERGY, 1));
|
|
|
|
CrucibleRecipe amber = new CrucibleRecipe(
|
|
"TB.Amber",
|
|
new ItemStack(ConfigItems.itemResource, 1, 6),
|
|
new ItemStack(Blocks.sapling, 1, 1),
|
|
new AspectList().add(Aspect.TRAP, 2));
|
|
CrucibleRecipe cinnabar = new CrucibleRecipe(
|
|
"TB.Quicksilver",
|
|
new ItemStack(ConfigItems.itemResource, 3, 3),
|
|
new ItemStack(ConfigBlocks.blockMagicalLog, 1, 1),
|
|
new AspectList().add(Aspect.ORDER, 1)
|
|
.add(Aspect.POISON, 1));
|
|
CrucibleRecipe salisMundis = new CrucibleRecipe(
|
|
"TB.SM",
|
|
new ItemStack(ConfigItems.itemResource, 2, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new AspectList().add(primals(2))
|
|
.add(Aspect.MAGIC, 3));
|
|
|
|
CrucibleRecipe chiseledBricks = new CrucibleRecipe(
|
|
"TB.AlchemyRestoration",
|
|
new ItemStack(Blocks.stonebrick, 1, 3),
|
|
new ItemStack(Blocks.stonebrick, 1, 0),
|
|
new AspectList().add(Aspect.ORDER, 1));
|
|
CrucibleRecipe gravel2Cobble = new CrucibleRecipe(
|
|
"TB.AlchemyRestoration",
|
|
new ItemStack(Blocks.cobblestone, 1, 0),
|
|
new ItemStack(Blocks.gravel, 1, 0),
|
|
new AspectList().add(Aspect.ORDER, 1));
|
|
CrucibleRecipe icePacking = new CrucibleRecipe(
|
|
"TB.AlchemyRestoration",
|
|
new ItemStack(Blocks.packed_ice, 1, 0),
|
|
new ItemStack(Blocks.ice, 1, 0),
|
|
new AspectList().add(Aspect.EARTH, 1)
|
|
.add(Aspect.COLD, 3));
|
|
|
|
CrucibleRecipe blazepowderRest = new CrucibleRecipe(
|
|
"TB.Backprocessing",
|
|
new ItemStack(Items.blaze_rod, 1, 0),
|
|
new ItemStack(Items.blaze_powder, 1, 0),
|
|
new AspectList().add(Aspect.ORDER, 6)
|
|
.add(Aspect.FIRE, 3)
|
|
.add(Aspect.MAGIC, 2)
|
|
.add(Aspect.CRAFT, 8)
|
|
.add(Aspect.EXCHANGE, 6)
|
|
.add(Aspect.ENERGY, 3));
|
|
CrucibleRecipe boneRest = new CrucibleRecipe(
|
|
"TB.Backprocessing",
|
|
new ItemStack(Items.bone, 1, 0),
|
|
new ItemStack(Items.dye, 1, 15),
|
|
new AspectList().add(Aspect.ORDER, 2)
|
|
.add(Aspect.SENSES, 6)
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(Aspect.EXCHANGE, 1)
|
|
.add(Aspect.DEATH, 4));
|
|
CrucibleRecipe sugarRest = new CrucibleRecipe(
|
|
"TB.Backprocessing",
|
|
new ItemStack(Items.reeds, 1, 0),
|
|
new ItemStack(Items.sugar, 1, 0),
|
|
new AspectList().add(Aspect.ORDER, 1)
|
|
.add(Aspect.LIFE, 2));
|
|
CrucibleRecipe cactiRest = new CrucibleRecipe(
|
|
"TB.Backprocessing",
|
|
new ItemStack(Blocks.cactus, 1, 0),
|
|
new ItemStack(Items.dye, 1, 2),
|
|
new AspectList().add(Aspect.ORDER, 1)
|
|
.add(Aspect.LIFE, 2)
|
|
.add(Aspect.EARTH, 1));
|
|
|
|
CrucibleRecipe pyrofluidRec = new CrucibleRecipe(
|
|
"TB.Pyrofluid",
|
|
new ItemStack(TBItems.pyroBucket, 1, 0),
|
|
new ItemStack(Items.lava_bucket, 1, 0),
|
|
new AspectList().add(Aspect.FIRE, 24)
|
|
.add(Aspect.MAGIC, 8));
|
|
|
|
InfusionEnchantmentRecipe elderKnowledgeEnch = new InfusionEnchantmentRecipe(
|
|
"TB.ElderKnowledge",
|
|
TBEnchant.elderKnowledge,
|
|
2,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.MIND, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
new ItemStack[] { new ItemStack(Items.paper, 1, 0), new ItemStack(Items.paper, 1, 0),
|
|
new ItemStack(Items.paper, 1, 0), new ItemStack(ConfigItems.itemZombieBrain, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
InfusionEnchantmentRecipe elderBaneEnch = new InfusionEnchantmentRecipe(
|
|
"TB.Eldritchbane",
|
|
TBEnchant.eldritchBane,
|
|
2,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
new ItemStack[] { new ItemStack(Items.ender_pearl, 1, 0), new ItemStack(Items.ender_eye, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
InfusionEnchantmentRecipe magicTouchEnch = new InfusionEnchantmentRecipe(
|
|
"TB.MagicTouch",
|
|
TBEnchant.magicTouch,
|
|
2,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.AURA, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.paper, 1, 0) });
|
|
InfusionEnchantmentRecipe vaporisingEnch = new InfusionEnchantmentRecipe(
|
|
"TB.Vaporising",
|
|
TBEnchant.vaporising,
|
|
2,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.CRYSTAL, 8)
|
|
.add(Aspect.TRAP, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.diamond, 1, 0) });
|
|
InfusionEnchantmentRecipe taintedEnch = new InfusionEnchantmentRecipe(
|
|
"TB.Tainted",
|
|
TBEnchant.tainted,
|
|
5,
|
|
new AspectList().add(Aspect.TAINT, 16),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 11),
|
|
new ItemStack(ConfigItems.itemResource, 1, 12), new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
ShapelessArcaneRecipe salisMundusBlockRec = new ShapelessArcaneRecipe(
|
|
"TB.SMB",
|
|
TBBlocks.dustBlock,
|
|
new AspectList().add(primals(1)),
|
|
new Object[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
// thauminite
|
|
CrucibleRecipe thauminiteRec = new CrucibleRecipe(
|
|
"TB.Thauminite",
|
|
new ItemStack(TBItems.resource, 8, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 2),
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.CRYSTAL, 8)
|
|
.add(Aspect.MAGIC, 2));
|
|
|
|
ShapedArcaneRecipe[] toolsRec = new ShapedArcaneRecipe[10];
|
|
|
|
ItemStack tiG = new ItemStack(TBItems.resource, 1, 1);
|
|
|
|
toolsRec[0] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteAxe,
|
|
primals(15),
|
|
new Object[] { "##", "#|", " |", '#', tiG, '|', "stickWood" });
|
|
|
|
toolsRec[1] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteHoe,
|
|
primals(15),
|
|
new Object[] { "##", " |", " |", '#', tiG, '|', "stickWood" });
|
|
|
|
toolsRec[2] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteShovel,
|
|
primals(15),
|
|
new Object[] { "#", "|", "|", '#', tiG, '|', "stickWood" });
|
|
|
|
toolsRec[3] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteSword,
|
|
primals(15),
|
|
new Object[] { "#", "#", "|", '#', tiG, '|', "stickWood" });
|
|
|
|
toolsRec[4] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteShears,
|
|
primals(15),
|
|
new Object[] { " #", "# ", '#', tiG });
|
|
|
|
toolsRec[5] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminitePickaxe,
|
|
primals(15),
|
|
new Object[] { "###", " | ", " | ", '#', tiG, '|', "stickWood" });
|
|
|
|
toolsRec[6] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteHelmet,
|
|
primals(25),
|
|
new Object[] { "###", "# #", '#', tiG });
|
|
|
|
toolsRec[7] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteChest,
|
|
primals(25),
|
|
new Object[] { "# #", "###", "###", '#', tiG });
|
|
|
|
toolsRec[8] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteLeggings,
|
|
primals(25),
|
|
new Object[] { "###", "# #", "# #", '#', tiG });
|
|
|
|
toolsRec[9] = new ShapedArcaneRecipe(
|
|
"TB.Thauminite",
|
|
TBItems.thauminiteBoots,
|
|
primals(25),
|
|
new Object[] { "# #", "# #", '#', tiG });
|
|
|
|
ShapedArcaneRecipe thauminiteCaps = new ShapedArcaneRecipe(
|
|
"CAP_thauminite",
|
|
new ItemStack(TBItems.resource, 1, 2),
|
|
primals(25),
|
|
new Object[] { "###", "#@#", "@@@", '#', new ItemStack(TBItems.resource, 1, 0), '@',
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
ShapedArcaneRecipe thaumicWandCore = new ShapedArcaneRecipe(
|
|
"ROD_tbthaumium",
|
|
new ItemStack(TBItems.resource, 1, 3),
|
|
primals(50),
|
|
new Object[] { " @#", "@#@", "#@ ", '#', new ItemStack(ConfigItems.itemResource, 1, 2), '@',
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
CrucibleRecipe[] shards = new CrucibleRecipe[6];
|
|
if (Loader.isModLoaded("gregtech") && !Loader.isModLoaded("gregapi")) {
|
|
|
|
// Extend the size to support the new item inputs
|
|
shards = new CrucibleRecipe[12];
|
|
|
|
// Ore Blocks
|
|
shards[0] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 0),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 540),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.AIR, 3));
|
|
|
|
shards[1] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 1),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 541),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.FIRE, 3));
|
|
|
|
shards[2] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 2),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 543),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.WATER, 3));
|
|
|
|
shards[3] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 3),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 542),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.EARTH, 3));
|
|
|
|
shards[4] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 4),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 545),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.ORDER, 3));
|
|
|
|
shards[5] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 5),
|
|
new ItemStack(GameRegistry.findBlock("gregtech", "gt.blockores"), 1, 544),
|
|
new AspectList().add(Aspect.MAGIC, 1)
|
|
.add(Aspect.ENTROPY, 5));
|
|
|
|
// Raw Ore Item
|
|
shards[6] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 0),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5540),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.AIR, 3));
|
|
|
|
shards[7] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 1),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5541),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.FIRE, 3));
|
|
|
|
shards[8] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 2),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5543),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.WATER, 3));
|
|
|
|
shards[9] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 3),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5542),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.EARTH, 3));
|
|
|
|
shards[10] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 4),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5545),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(Aspect.ORDER, 3));
|
|
|
|
shards[11] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, 5),
|
|
new ItemStack(GameRegistry.findItem("gregtech", "gt.metaitem.03"), 1, 5544),
|
|
new AspectList().add(Aspect.MAGIC, 1)
|
|
.add(Aspect.ENTROPY, 5));
|
|
} else {
|
|
|
|
for (int i = 0; i < 6; ++i) shards[i] = new CrucibleRecipe(
|
|
"TB.OreDestruction",
|
|
new ItemStack(ConfigItems.itemShard, TBConfig.shardsFromOre, i),
|
|
new ItemStack(ConfigBlocks.blockCustomOre, 1, 1 + i),
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.MAGIC, 1)
|
|
.add(getPrimalForLoop(i), 3));
|
|
}
|
|
CrucibleRecipe[] cBlocks = new CrucibleRecipe[7];
|
|
|
|
for (int i = 0; i < 7; ++i) if (i < 6) cBlocks[i] = new CrucibleRecipe(
|
|
"TB.CrystalBlocks",
|
|
new ItemStack(TBBlocks.crystalBlock, 1, i),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, i),
|
|
new AspectList().add(primals(1))
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(getPrimalForLoop(i), 2));
|
|
else cBlocks[i] = new CrucibleRecipe(
|
|
"TB.CrystalBlocks",
|
|
new ItemStack(TBBlocks.crystalBlock, 1, i),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, i),
|
|
new AspectList().add(primals(1))
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(primals(1)));
|
|
|
|
CrucibleRecipe[] cTaintedBlocks = new CrucibleRecipe[7];
|
|
|
|
for (int i = 0; i < 7; ++i) if (i < 6) cTaintedBlocks[i] = new CrucibleRecipe(
|
|
"TB.CrystalBlocks",
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, i),
|
|
new AspectList().add(primals(1))
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(getPrimalForLoop(i), 2)
|
|
.add(Aspect.TAINT, 2));
|
|
else cTaintedBlocks[i] = new CrucibleRecipe(
|
|
"TB.CrystalBlocks",
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, i),
|
|
new AspectList().add(primals(1))
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(primals(1))
|
|
.add(Aspect.TAINT, 2));
|
|
|
|
InfusionRecipe voidRodRecipe = new InfusionRecipe(
|
|
"ROD_tbvoid",
|
|
new ItemStack(TBItems.resource, 1, 4),
|
|
6,
|
|
new AspectList().add(Aspect.ELDRITCH, 64)
|
|
.add(Aspect.VOID, 64)
|
|
.add(Aspect.MAGIC, 64)
|
|
.add(Aspect.AURA, 24)
|
|
.add(Aspect.ENERGY, 24),
|
|
new ItemStack(TBItems.resource, 1, 3),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(ConfigItems.itemResource, 1, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.dustBlock, 1, 0), new ItemStack(TBBlocks.crystalBlock, 1, 7),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7) });
|
|
|
|
InfusionRecipe drainFociRec = new InfusionRecipe(
|
|
"TB.Foci.Drain",
|
|
new ItemStack(TBItems.fociDrain),
|
|
0,
|
|
new AspectList().add(Aspect.WATER, 3)
|
|
.add(Aspect.VOID, 6),
|
|
new ItemStack(ConfigItems.itemFocusExcavation, 1, 0),
|
|
new ItemStack[] { new ItemStack(Items.bucket), new ItemStack(Items.bucket),
|
|
new ItemStack(ConfigBlocks.blockJar, 1, 3), new ItemStack(ConfigBlocks.blockJar, 1, 3) });
|
|
|
|
InfusionRecipe expFociRec = new InfusionRecipe(
|
|
"TB.Foci.Experience",
|
|
new ItemStack(TBItems.fociExperience),
|
|
5,
|
|
new AspectList().add(Aspect.GREED, 32)
|
|
.add(Aspect.VOID, 32)
|
|
.add(Aspect.MIND, 16)
|
|
.add(Aspect.HUNGER, 32)
|
|
.add(Aspect.MINE, 8),
|
|
new ItemStack(ConfigItems.itemFocusExcavation, 1, 0),
|
|
new ItemStack[] { new ItemStack(Items.gold_ingot), new ItemStack(Items.gold_ingot),
|
|
new ItemStack(Items.emerald), new ItemStack(Items.emerald),
|
|
new ItemStack(Items.iron_axe, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Items.iron_pickaxe, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Items.iron_shovel, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Items.shears, 1, OreDictionary.WILDCARD_VALUE) });
|
|
|
|
InfusionRecipe fluxFociRec = new InfusionRecipe(
|
|
"TB.Foci.Flux",
|
|
new ItemStack(TBItems.fociFlux),
|
|
3,
|
|
new AspectList().add(Aspect.WATER, 16)
|
|
.add(Aspect.VOID, 16)
|
|
.add(Aspect.ORDER, 16),
|
|
new ItemStack(Items.diamond, 1, 0),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(ConfigItems.itemShard, 1, 6),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 14), new ItemStack(ConfigBlocks.blockJar, 1, 3) });
|
|
|
|
InfusionRecipe activationFociRec = new InfusionRecipe(
|
|
"TB.Foci.Activation",
|
|
new ItemStack(TBItems.fociActivation),
|
|
0,
|
|
new AspectList().add(Aspect.TRAVEL, 8)
|
|
.add(Aspect.SENSES, 8)
|
|
.add(Aspect.MOTION, 8),
|
|
new ItemStack(ConfigItems.itemResource, 1, 10),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 9),
|
|
new ItemStack(ConfigItems.itemResource, 1, 9), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
Block[] recBlocks = new Block[] { Blocks.cobblestone, Blocks.gravel, Blocks.mossy_cobblestone,
|
|
Blocks.iron_block, Blocks.diamond_block, Blocks.lapis_block, Blocks.gold_block, Blocks.brick_block };
|
|
|
|
Block[] recResult = new Block[] { TBBlocks.oldCobble, TBBlocks.oldGravel, TBBlocks.oldCobbleMossy,
|
|
TBBlocks.oldIron, TBBlocks.oldDiamond, TBBlocks.oldLapis, TBBlocks.oldGold, TBBlocks.oldBrick };
|
|
|
|
ShapedArcaneRecipe[] oldRec = new ShapedArcaneRecipe[recResult.length];
|
|
|
|
for (int i = 0; i < oldRec.length; ++i) oldRec[i] = new ShapedArcaneRecipe(
|
|
"TB.DecoBlocks",
|
|
new ItemStack(recResult[i], 8, 0),
|
|
new AspectList().add(Aspect.ENTROPY, 5),
|
|
new Object[] { "###", "#@#", "###", '#', recBlocks[i], '@',
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, 5) });
|
|
|
|
ShapedArcaneRecipe advFurnaceRecipe = new ShapedArcaneRecipe(
|
|
"TB.AdvAlc",
|
|
TBBlocks.advAlchFurnace,
|
|
new AspectList().add(Aspect.WATER, 20)
|
|
.add(Aspect.FIRE, 20)
|
|
.add(Aspect.AIR, 10),
|
|
new Object[] { "# #", "#@#", "$$$", '#', new ItemStack(ConfigItems.itemResource, 1, 2), '@',
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 0), '$',
|
|
new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 0) });
|
|
|
|
InfusionRecipe cryingObsidianRec = new InfusionRecipe(
|
|
"TB.CryingObs",
|
|
new ItemStack(TBBlocks.cryingObsidian, 1, 0),
|
|
2,
|
|
new AspectList().add(Aspect.TRAVEL, 16)
|
|
.add(Aspect.LIFE, 16)
|
|
.add(Aspect.SOUL, 16),
|
|
new ItemStack(Blocks.obsidian),
|
|
new ItemStack[] { new ItemStack(Items.diamond), new ItemStack(Items.bed), new ItemStack(TBBlocks.oldLapis),
|
|
new ItemStack(TBBlocks.oldLapis) });
|
|
|
|
InfusionRecipe overchanterRec = new InfusionRecipe(
|
|
"TB.Overchanter",
|
|
new ItemStack(TBBlocks.overchanter, 1, 0),
|
|
4,
|
|
new AspectList().add(primals(32))
|
|
.add(Aspect.MAGIC, 32)
|
|
.add(Aspect.MECHANISM, 32)
|
|
.add(Aspect.MIND, 16),
|
|
new ItemStack(Blocks.enchanting_table),
|
|
new ItemStack[] { new ItemStack(TBBlocks.crystalBlock, 1, 0), new ItemStack(TBBlocks.crystalBlock, 1, 1),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 2), new ItemStack(TBBlocks.crystalBlock, 1, 3),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 4), new ItemStack(TBBlocks.crystalBlock, 1, 5),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.crystalBlock, 1, 6),
|
|
new ItemStack(TBBlocks.dustBlock, 1, 0), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 4),
|
|
new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 4) });
|
|
|
|
ShapedArcaneRecipe relocatorRec = new ShapedArcaneRecipe(
|
|
"TB.Relocator",
|
|
new ItemStack(TBBlocks.relocator, 1, 0),
|
|
new AspectList().add(Aspect.AIR, 5)
|
|
.add(Aspect.EARTH, 15)
|
|
.add(Aspect.WATER, 5),
|
|
new Object[] { "GAG", "ENE", "GWG", 'G', new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 6), 'A',
|
|
"shardAir", 'E', "shardEarth", 'W', "shardWater", 'N', new ItemStack(ConfigItems.itemResource, 1, 1) });
|
|
|
|
ShapedArcaneRecipe irelocatorRec = new ShapedArcaneRecipe(
|
|
"TB.Relocator",
|
|
new ItemStack(TBBlocks.relocator, 1, 6),
|
|
new AspectList().add(Aspect.AIR, 5)
|
|
.add(Aspect.EARTH, 15)
|
|
.add(Aspect.WATER, 5),
|
|
new Object[] { "GAG", "ENE", "GWG", 'G', new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 6), 'A',
|
|
"shardAir", 'E', "shardEarth", 'W', "shardWater", 'N', new ItemStack(ConfigItems.itemResource, 1, 0) });
|
|
|
|
ShapedArcaneRecipe thaumicAnvilRec = new ShapedArcaneRecipe(
|
|
"TB.ThaumicAnvil",
|
|
new ItemStack(TBBlocks.thaumicAnvil, 1, 0),
|
|
primals(25),
|
|
new Object[] { "###", " $ ", "$$$", '#', new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 4), '$',
|
|
new ItemStack(ConfigItems.itemResource, 1, 2) });
|
|
|
|
InfusionRecipe voidAnvilRec = new InfusionRecipe(
|
|
"TB.VoidAnvil",
|
|
new ItemStack(TBBlocks.voidAnvil, 1, 0),
|
|
3,
|
|
new AspectList().add(Aspect.CRAFT, 32)
|
|
.add(Aspect.TOOL, 24)
|
|
.add(Aspect.WEAPON, 24)
|
|
.add(Aspect.ORDER, 48),
|
|
new ItemStack(TBBlocks.thaumicAnvil, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack[] { new ItemStack(TBBlocks.voidBlock), new ItemStack(TBBlocks.voidBlock),
|
|
new ItemStack(TBBlocks.voidBlock), new ItemStack(TBBlocks.voidBlock),
|
|
new ItemStack(TBBlocks.voidBlock) });
|
|
|
|
ShapedArcaneRecipe campfireRec = new ShapedArcaneRecipe(
|
|
"TB.Campfire",
|
|
new ItemStack(TBBlocks.campfire),
|
|
new AspectList().add(Aspect.FIRE, 5)
|
|
.add(Aspect.ENTROPY, 3),
|
|
new Object[] { "SSS", "COC", "GGG", 'S', "stickWood", 'C', "cobblestone", 'O',
|
|
new ItemStack(Items.coal, 1, OreDictionary.WILDCARD_VALUE), 'G', Blocks.gravel });
|
|
|
|
ShapedArcaneRecipe brazierRec = new ShapedArcaneRecipe(
|
|
"TB.Brazier",
|
|
new ItemStack(TBBlocks.braizer),
|
|
new AspectList().add(Aspect.FIRE, 5)
|
|
.add(Aspect.ENTROPY, 3),
|
|
new Object[] { "SCS", " V ", "SSS", 'S', new ItemStack(ConfigBlocks.blockSlabStone, 1, 0), 'C',
|
|
new ItemStack(Items.coal, 1, OreDictionary.WILDCARD_VALUE), 'V',
|
|
new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 6) });
|
|
|
|
ShapedOreRecipe voidBlockRec = new ShapedOreRecipe(
|
|
new ItemStack(TBBlocks.voidBlock, 1, 0),
|
|
new Object[] { "###", "###", "###", '#', new ItemStack(ConfigItems.itemResource, 1, 16) });
|
|
|
|
ShapelessOreRecipe voidIngotRec = new ShapelessOreRecipe(
|
|
new ItemStack(ConfigItems.itemResource, 9, 16),
|
|
new ItemStack(TBBlocks.voidBlock));
|
|
|
|
// TODO recipes
|
|
|
|
// copy(ResearchCategories.getResearchList("ALCHEMY").research.get("CRUCIBLE"),"TB.CRUCIBLE",catName,0,3).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("ALCHEMY").research.get("THAUMIUM"),"TB.THAUMIUM",catName,8,0).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("ALCHEMY").research.get("DISTILESSENTIA"),"TB.DISTILESSENTIA",catName,6,2).setConcealed().setHidden().registerResearchItem();
|
|
|
|
// copy(ResearchCategories.getResearchList("ARTIFICE").research.get("INFUSION"),"TB.INFUSION",catName,0,-3).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("ARTIFICE").research.get("BELLOWS"),"TB.BELLOWS",catName,6,3).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("ARTIFICE").research.get("LEVITATOR"),"TB.LEVITATOR",catName,6,5).setConcealed().setHidden().registerResearchItem();
|
|
|
|
// copy(ResearchCategories.getResearchList("ELDRITCH").research.get("VOIDMETAL"),"TB.VOIDMETAL",catName,15,1).setConcealed().setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.CRUCIBLE",
|
|
"THAUMICBASES",
|
|
"CRUCIBLE",
|
|
"ALCHEMY",
|
|
0,
|
|
3,
|
|
ResearchCategories.getResearch("CRUCIBLE").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.THAUMIUM",
|
|
"THAUMICBASES",
|
|
"THAUMIUM",
|
|
"ALCHEMY",
|
|
8,
|
|
0,
|
|
ResearchCategories.getResearch("THAUMIUM").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.DISTILESSENTIA",
|
|
"THAUMICBASES",
|
|
"DISTILESSENTIA",
|
|
"ALCHEMY",
|
|
6,
|
|
2,
|
|
ResearchCategories.getResearch("DISTILESSENTIA").icon_item).registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.INFUSION",
|
|
"THAUMICBASES",
|
|
"INFUSION",
|
|
"ARTIFICE",
|
|
0,
|
|
-3,
|
|
ResearchCategories.getResearch("INFUSION").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.BELLOWS",
|
|
"THAUMICBASES",
|
|
"BELLOWS",
|
|
"ARTIFICE",
|
|
6,
|
|
3,
|
|
ResearchCategories.getResearch("BELLOWS").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.LEVITATOR",
|
|
"THAUMICBASES",
|
|
"LEVITATOR",
|
|
"ARTIFICE",
|
|
6,
|
|
5,
|
|
ResearchCategories.getResearch("LEVITATOR").icon_item).registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.VOIDMETAL",
|
|
"THAUMICBASES",
|
|
"VOIDMETAL",
|
|
"ELDRITCH",
|
|
15,
|
|
1,
|
|
ResearchCategories.getResearch("VOIDMETAL").icon_item).registerResearchItem();
|
|
|
|
// -2,-18
|
|
// 5,-3
|
|
|
|
IRecipe[] slabs = new IRecipe[12];
|
|
slabs = TBRecipes.slabs.toArray(slabs);
|
|
|
|
new ResearchItem(
|
|
"TB.DecoBlocks",
|
|
catName,
|
|
new AspectList(),
|
|
0,
|
|
2,
|
|
0,
|
|
new ItemStack(TBBlocks.quicksilverBlock, 1, 0)).setRound()
|
|
.setAutoUnlock()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.decoBlocks.page.0"),
|
|
new ResearchPage(TBRecipes.recipes.get("quicksilverBlock")),
|
|
new ResearchPage(TBRecipes.recipes.get("quicksilver")),
|
|
new ResearchPage(TBRecipes.recipes.get("quicksilverBrick")),
|
|
new ResearchPage(TBRecipes.recipes.get("eldritchArk")),
|
|
new ResearchPage(TBRecipes.recipes.get("ironGreatwood")),
|
|
new ResearchPage(oldRec),
|
|
new ResearchPage(slabs))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.AdvancedEntropy",
|
|
catName,
|
|
new AspectList().add(Aspect.ENTROPY, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3),
|
|
-3,
|
|
2,
|
|
1,
|
|
new ItemStack(Items.blaze_powder, 1, 0)).setParents("TB.CRUCIBLE")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.advEntr.page.0"),
|
|
new ResearchPage(wool3Rec),
|
|
new ResearchPage(sandstone3Rec),
|
|
new ResearchPage(blaze3Rec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.AlchemyRestoration",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3),
|
|
-3,
|
|
4,
|
|
1,
|
|
new ItemStack(Blocks.packed_ice, 1, 0)).setParents("TB.CRUCIBLE")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.alcRest.page.0"),
|
|
new ResearchPage(chiseledBricks),
|
|
new ResearchPage(gravel2Cobble),
|
|
new ResearchPage(icePacking))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Pyrofluid",
|
|
catName,
|
|
new AspectList().add(Aspect.FIRE, 16)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.GREED, 6),
|
|
1,
|
|
6,
|
|
4,
|
|
new ItemStack(TBItems.pyroBucket, 1, 0)).setParents("TB.CRUCIBLE")
|
|
.setPages(new ResearchPage("tb.rec.pyrofluid.page.0"), new ResearchPage(pyrofluidRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.CrystalBlocks",
|
|
catName,
|
|
new AspectList().add(primals(8)),
|
|
-4,
|
|
5,
|
|
1,
|
|
new ItemStack(TBBlocks.crystalBlock, 1, OreDictionary.WILDCARD_VALUE)).setParents("TB.AlchemyRestoration")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.cBlocks.page.0"),
|
|
new ResearchPage(cBlocks),
|
|
new ResearchPage(cTaintedBlocks))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Backprocessing",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.EXCHANGE, 8)
|
|
.add(Aspect.CRAFT, 8),
|
|
-6,
|
|
3,
|
|
1,
|
|
new ItemStack(Items.reeds, 1, 0)).setParents("TB.AlchemyRestoration", "TB.AdvancedEntropy")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.backProc.page.0"),
|
|
new ResearchPage(blazepowderRest),
|
|
new ResearchPage(boneRest),
|
|
new ResearchPage(sugarRest),
|
|
new ResearchPage(cactiRest))
|
|
.registerResearchItem();
|
|
|
|
// 0, -3
|
|
|
|
new ResearchItem(
|
|
"TB.MasterEntropy",
|
|
catName,
|
|
new AspectList().add(Aspect.ENTROPY, 8)
|
|
.add(Aspect.MAGIC, 4)
|
|
.add(Aspect.GREED, 2),
|
|
-5,
|
|
1,
|
|
3,
|
|
new ItemStack(Items.string, 1, 0)).setParents("TB.AdvancedEntropy")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.mastEntr.page.0"),
|
|
new ResearchPage(wool4Rec),
|
|
new ResearchPage(sandstone4Rec),
|
|
new ResearchPage(blaze4Rec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.StrongEntropy",
|
|
catName,
|
|
new AspectList().add(Aspect.ENTROPY, 2)
|
|
.add(Aspect.WEAPON, 2),
|
|
-1,
|
|
1,
|
|
3,
|
|
new ItemStack(Blocks.sand, 1, 0)).setParents("TB.AdvancedEntropy")
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.strEntr.page.0"),
|
|
new ResearchPage(glassSand),
|
|
new ResearchPage(gravelSand),
|
|
new ResearchPage(barsIron))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.SimpleDublication",
|
|
catName,
|
|
new AspectList().add(Aspect.EXCHANGE, 6)
|
|
.add(Aspect.ORDER, 6),
|
|
3,
|
|
5,
|
|
1,
|
|
new ItemStack(Items.arrow, 1, 0)).setParents("TB.CRUCIBLE")
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.simDup.page.0"),
|
|
new ResearchPage(arrows),
|
|
new ResearchPage(snowball),
|
|
new ResearchPage(redstone))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Amber",
|
|
catName,
|
|
new AspectList().add(Aspect.TRAP, 6)
|
|
.add(Aspect.ORDER, 6),
|
|
3,
|
|
4,
|
|
1,
|
|
new ItemStack(ConfigItems.itemResource, 1, 6)).setParents("TB.CRUCIBLE")
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.amber.page.0"), new ResearchPage(amber))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Quicksilver",
|
|
catName,
|
|
new AspectList().add(Aspect.TREE, 6)
|
|
.add(Aspect.ORDER, 6),
|
|
3,
|
|
2,
|
|
1,
|
|
new ItemStack(ConfigItems.itemResource, 1, 3)).setParents("TB.CRUCIBLE")
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.cinnabar.page.0"), new ResearchPage(cinnabar))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Thauminite",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRYSTAL, 8)
|
|
.add(Aspect.CRAFT, 2),
|
|
6,
|
|
-1,
|
|
2,
|
|
new ItemStack(TBItems.resource, 1, 1)).setParents("TB.THAUMIUM")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.thauminite.page.0"),
|
|
new ResearchPage(thauminiteRec),
|
|
new ResearchPage(TBRecipes.recipes.get("thauminiteIngot")),
|
|
new ResearchPage(TBRecipes.recipes.get("thauminiteNugget")),
|
|
new ResearchPage(TBRecipes.recipes.get("thauminiteBlock")),
|
|
new ResearchPage(toolsRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"ROD_tbthaumium",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.AURA, 4)
|
|
.add(Aspect.CRAFT, 2)
|
|
.add(Aspect.MAN, 6),
|
|
10,
|
|
-1,
|
|
2,
|
|
new ItemStack(TBItems.resource, 1, 3)).setParents("TB.THAUMIUM")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.thaumRod.page.0"), new ResearchPage(thaumicWandCore))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"ROD_tbvoid",
|
|
catName,
|
|
new AspectList().add(Aspect.ELDRITCH, 4)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.AURA, 4)
|
|
.add(Aspect.VOID, 2)
|
|
.add(Aspect.MIND, 6),
|
|
13,
|
|
-1,
|
|
4,
|
|
new ItemStack(TBItems.resource, 1, 4)).setParents("ROD_tbthaumium", "TB.VOIDMETAL")
|
|
.setConcealed()
|
|
.setSpecial()
|
|
.setPages(new ResearchPage("tb.rec.voidRod.page.0"), new ResearchPage(voidRodRecipe))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"CAP_thauminite",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.AURA, 4),
|
|
5,
|
|
0,
|
|
2,
|
|
new ItemStack(TBItems.resource, 1, 2)).setParents("TB.Thauminite")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.capthauminite.page.0"), new ResearchPage(thauminiteCaps))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.SM",
|
|
catName,
|
|
new AspectList().add(primals(4)),
|
|
3,
|
|
3,
|
|
1,
|
|
new ItemStack(ConfigItems.itemResource, 1, 14)).setParents("TB.CRUCIBLE", "TB.Quicksilver", "TB.Amber")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.sm.page.0"), new ResearchPage(salisMundis))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.SMB",
|
|
catName,
|
|
new AspectList().add(primals(6))
|
|
.add(Aspect.CRAFT, 2),
|
|
4,
|
|
3,
|
|
1,
|
|
new ItemStack(TBBlocks.dustBlock)).setParents("TB.SM")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.smb.page.0"), new ResearchPage(salisMundusBlockRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.OreDestruction",
|
|
catName,
|
|
new AspectList().add(Aspect.ENTROPY, 8)
|
|
.add(Aspect.MAGIC, 4)
|
|
.add(Aspect.ORDER, 1)
|
|
.add(Aspect.FIRE, 1)
|
|
.add(Aspect.AIR, 1)
|
|
.add(Aspect.EARTH, 1)
|
|
.add(Aspect.WATER, 1),
|
|
-7,
|
|
1,
|
|
3,
|
|
new ItemStack(ConfigItems.itemShard, 1, OreDictionary.WILDCARD_VALUE)).setParents("TB.MasterEntropy")
|
|
.setPages(new ResearchPage("tb.rec.oreDestr.page.0"), new ResearchPage(shards))
|
|
.registerResearchItem();
|
|
|
|
// copy(ResearchCategories.getResearchList("ARTIFICE").research.get("INFUSIONENCHANTMENT"),
|
|
// "TB.INFUSIONENCHANTMENT", catName, 0, 8).setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.INFUSIONENCHANTMENT",
|
|
"THAUMICBASES",
|
|
"INFUSIONENCHANTMENT",
|
|
"ARTIFICE",
|
|
0,
|
|
8,
|
|
ResearchCategories.getResearch("INFUSIONENCHANTMENT").icon_resource).registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.ElderKnowledge",
|
|
catName,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.MIND, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
-2,
|
|
8,
|
|
1,
|
|
new ResourceLocation("thaumicbases", "textures/enchantments/elder_knowledge.png"))
|
|
.setParents("TB.INFUSIONENCHANTMENT")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enchantments.ewisdom"), new ResearchPage(elderKnowledgeEnch))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.EldritchBane",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
-1,
|
|
10,
|
|
1,
|
|
new ResourceLocation("thaumicbases", "textures/enchantments/eldritch_bane.png"))
|
|
.setParents("TB.INFUSIONENCHANTMENT")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enchantments.ebane"), new ResearchPage(elderBaneEnch))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.MagicTouch",
|
|
catName,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.AURA, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
-1,
|
|
6,
|
|
1,
|
|
new ResourceLocation("thaumicbases", "textures/enchantments/magic_touched.png"))
|
|
.setParents("TB.INFUSIONENCHANTMENT")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enchantments.magictouched"), new ResearchPage(magicTouchEnch))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Vaporising",
|
|
catName,
|
|
new AspectList().add(Aspect.MAGIC, 8)
|
|
.add(Aspect.CRYSTAL, 8)
|
|
.add(Aspect.TRAP, 8),
|
|
-3,
|
|
7,
|
|
1,
|
|
new ResourceLocation("thaumicbases", "textures/enchantments/vaporising.png"))
|
|
.setParents("TB.INFUSIONENCHANTMENT")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enchantments.vaporising"), new ResearchPage(vaporisingEnch))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tainted",
|
|
catName,
|
|
new AspectList().add(Aspect.TAINT, 16)
|
|
.add(Aspect.MAGIC, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
-3,
|
|
9,
|
|
1,
|
|
new ResourceLocation("thaumicbases", "textures/enchantments/tainted.png"))
|
|
.setParents("TB.INFUSIONENCHANTMENT")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enchantments.taint"), new ResearchPage(taintedEnch))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Foci.Drain",
|
|
catName,
|
|
new AspectList().add(Aspect.WATER, 6)
|
|
.add(Aspect.VOID, 3),
|
|
-3,
|
|
-2,
|
|
0,
|
|
new ItemStack(TBItems.fociDrain)).setParents("TB.INFUSION")
|
|
.setParentsHidden("FOCUSEXCAVATION", "JARVOID")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.drainFoci.page.0"),
|
|
new ResearchPage(drainFociRec),
|
|
new ResearchPage("tb.rec.drainFoci.page.1"),
|
|
new ResearchPage("tb.rec.drainFoci.page.2"))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Foci.Experience",
|
|
catName,
|
|
new AspectList().add(Aspect.GREED, 16)
|
|
.add(Aspect.HUNGER, 16)
|
|
.add(Aspect.MINE, 2)
|
|
.add(Aspect.MIND, 8),
|
|
-2,
|
|
-5,
|
|
1,
|
|
new ItemStack(TBItems.fociExperience)).setParents("TB.INFUSION")
|
|
.setParentsHidden("FOCUSEXCAVATION")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.expFoci.page.0"),
|
|
new ResearchPage(expFociRec),
|
|
new ResearchPage("tb.rec.expFoci.page.1"),
|
|
new ResearchPage("tb.rec.expFoci.page.2"))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Foci.Flux",
|
|
catName,
|
|
new AspectList().add(Aspect.WATER, 4)
|
|
.add(Aspect.ORDER, 4)
|
|
.add(Aspect.VOID, 4),
|
|
-2,
|
|
-1,
|
|
0,
|
|
new ItemStack(TBItems.fociFlux)).setParents("TB.INFUSION")
|
|
.setParentsHidden("JARVOID", "FLUXSCRUB")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.fluxFoci.page.0"),
|
|
new ResearchPage(fluxFociRec),
|
|
new ResearchPage("tb.rec.fluxFoci.page.1"),
|
|
new ResearchPage("tb.rec.fluxFoci.page.2"),
|
|
new ResearchPage("tb.rec.fluxFoci.page.3"))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Foci.Activation",
|
|
catName,
|
|
new AspectList().add(Aspect.TRAVEL, 4)
|
|
.add(Aspect.MOTION, 4)
|
|
.add(Aspect.SENSES, 4),
|
|
-3,
|
|
-4,
|
|
0,
|
|
new ItemStack(TBItems.fociActivation)).setParents("TB.INFUSION")
|
|
.setParentsHidden("MIRRORHAND")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.actFoci.page.0"),
|
|
new ResearchPage(activationFociRec),
|
|
new ResearchPage("tb.rec.actFoci.page.1"))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.AdvAlc",
|
|
catName,
|
|
new AspectList().add(Aspect.MOTION, 16)
|
|
.add(Aspect.AIR, 16)
|
|
.add(Aspect.FIRE, 8)
|
|
.add(Aspect.CRAFT, 4),
|
|
8,
|
|
2,
|
|
2,
|
|
new ItemStack(TBBlocks.advAlchFurnace)).setParents("TB.THAUMIUM", "TB.DISTILESSENTIA", "TB.BELLOWS")
|
|
.setPages(new ResearchPage("tb.rec.advAlc.page.0"), new ResearchPage(advFurnaceRecipe))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.CryingObs",
|
|
catName,
|
|
new AspectList().add(Aspect.TRAVEL, 8)
|
|
.add(Aspect.LIFE, 8)
|
|
.add(Aspect.SOUL, 8),
|
|
3,
|
|
-4,
|
|
2,
|
|
new ItemStack(TBBlocks.cryingObsidian, 1, 0)).setParents("TB.INFUSION")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.cryingObs.page.0"), new ResearchPage(cryingObsidianRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Overchanter",
|
|
catName,
|
|
new AspectList().add(primals(8))
|
|
.add(Aspect.MIND, 8)
|
|
.add(Aspect.MAGIC, 8),
|
|
-5,
|
|
-3,
|
|
3,
|
|
new ItemStack(TBBlocks.overchanter, 1, 0)).setParents("TB.INFUSION")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.overchanter.page.0"),
|
|
new ResearchPage("tb.rec.overchanter.page.1"),
|
|
new ResearchPage("tb.rec.overchanter.page.2"),
|
|
new ResearchPage("tb.rec.overchanter.page.3"),
|
|
new ResearchPage(overchanterRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Relocator",
|
|
catName,
|
|
new AspectList().add(Aspect.MOTION, 4)
|
|
.add(Aspect.AIR, 4)
|
|
.add(Aspect.VOID, 4),
|
|
6,
|
|
7,
|
|
1,
|
|
new ItemStack(TBBlocks.relocator, 1, 0)).setParents("TB.LEVITATOR")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.relocator.page.0"),
|
|
new ResearchPage(relocatorRec),
|
|
new ResearchPage(irelocatorRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.ThaumicAnvil",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.CRAFT, 3),
|
|
10,
|
|
2,
|
|
2,
|
|
new ItemStack(TBBlocks.thaumicAnvil, 1, 0)).setParents("TB.THAUMIUM")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.thaumicAnvil.page.0"), new ResearchPage(thaumicAnvilRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.VoidAnvil",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 4)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.TOOL, 4)
|
|
.add(Aspect.ELDRITCH, 4),
|
|
13,
|
|
2,
|
|
2,
|
|
new ItemStack(TBBlocks.voidAnvil, 1, 0)).setParents("TB.VOIDMETAL", "TB.ThaumicAnvil")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.voidAnvil.page.0"),
|
|
new ResearchPage("tb.rec.voidAnvil.page.1"),
|
|
new ResearchPage(voidAnvilRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Campfire",
|
|
catName,
|
|
new AspectList().add(Aspect.FIRE, 3)
|
|
.add(Aspect.MIND, 3)
|
|
.add(Aspect.ENTROPY, 3),
|
|
9,
|
|
5,
|
|
1,
|
|
new ItemStack(TBBlocks.campfire, 1, 0)).setRound()
|
|
.setPages(new ResearchPage("tb.rec.campfire.page.0"), new ResearchPage(campfireRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Brazier",
|
|
catName,
|
|
new AspectList().add(Aspect.FIRE, 3)
|
|
.add(Aspect.MIND, 3)
|
|
.add(Aspect.ENTROPY, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.MOTION, 3),
|
|
9,
|
|
7,
|
|
0,
|
|
new ItemStack(TBBlocks.braizer, 1, 0)).setParents("TB.Campfire")
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.brazier.page.0"), new ResearchPage(brazierRec))
|
|
.registerResearchItem();
|
|
|
|
// TODO last recipes
|
|
// -4,-14
|
|
|
|
// Add warp to research
|
|
ThaumcraftApi.addWarpToResearch("TB.HerobrinesScythe", 4);
|
|
// ench
|
|
ThaumcraftApi.addWarpToResearch("TB.Tainted", 3);
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.CryingObs", 1);
|
|
ThaumcraftApi.addWarpToResearch("TB.EntityDec", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.VoidAnvil", 2);
|
|
|
|
// Add new crudible recips
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(wool3Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sandstone3Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(blaze3Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(wool4Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sandstone4Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(blaze4Rec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(glassSand);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(gravelSand);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(barsIron);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(arrows);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(snowball);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(redstone);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(amber);
|
|
|
|
// Infusion enchants
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(elderKnowledgeEnch);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(elderBaneEnch);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(magicTouchEnch);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(vaporisingEnch);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(taintedEnch);
|
|
|
|
//
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(cinnabar);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(salisMundis);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(chiseledBricks);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(gravel2Cobble);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(icePacking);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(blazepowderRest);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(boneRest);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sugarRest);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(cactiRest);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(salisMundusBlockRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thauminiteRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thauminiteCaps);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(pyrofluidRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thaumicWandCore);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidRodRecipe);
|
|
|
|
// TODO Tobacco
|
|
if (TBConfig.allowTobacco) {
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.Tobacco.Eldritch", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.Tobacco.Tainted", 3);
|
|
|
|
ThaumcraftApi.addWarpToItem(new ItemStack(TBItems.tobacco, 1, 1), 1);
|
|
|
|
ShapelessArcaneRecipe saturatingTobaccoRec = new ShapelessArcaneRecipe(
|
|
"TB.Tobacco.Saturating",
|
|
new ItemStack(TBItems.tobacco, 1, 3),
|
|
new AspectList().add(Aspect.EARTH, 10)
|
|
.add(Aspect.FIRE, 10)
|
|
.add(Aspect.WATER, 10),
|
|
new Object[] { new ItemStack(TBItems.tobacco, 1, 0), new ItemStack(Items.pumpkin_seeds) });
|
|
ShapelessArcaneRecipe saturatingTobaccoRecM = new ShapelessArcaneRecipe(
|
|
"TB.Tobacco.Saturating",
|
|
new ItemStack(TBItems.tobacco, 1, 3),
|
|
new AspectList().add(Aspect.EARTH, 10)
|
|
.add(Aspect.FIRE, 10)
|
|
.add(Aspect.WATER, 10),
|
|
new Object[] { new ItemStack(TBItems.tobacco, 1, 0), new ItemStack(Items.melon_seeds) });
|
|
|
|
// Seeds
|
|
CrucibleRecipe tobaccoSeedRec = new CrucibleRecipe(
|
|
"TB.Tobacco",
|
|
new ItemStack(TBItems.tobaccoSeeds, 1, 0),
|
|
new ItemStack(Items.wheat_seeds, 1, 0),
|
|
new AspectList().add(Aspect.MIND, 4)
|
|
.add(Aspect.WATER, 4)
|
|
.add(Aspect.MAN, 4)
|
|
.add(Aspect.CROP, 4));
|
|
|
|
// M&P
|
|
ShapelessArcaneRecipe pestleRecipe = new ShapelessArcaneRecipe(
|
|
"TB.Tobacco",
|
|
TBItems.mortar,
|
|
new AspectList().add(primals(4)),
|
|
new Object[] { new ItemStack(Items.bowl), new ItemStack(Items.stick), new ItemStack(Blocks.wooden_slab),
|
|
new ItemStack(Blocks.wooden_slab), new ItemStack(Blocks.wooden_slab) });
|
|
|
|
ShapelessArcaneRecipe genTobaccoRec = new ShapelessArcaneRecipe(
|
|
"TB.Tobacco",
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.ORDER, 1)
|
|
.add(Aspect.ENTROPY, 1),
|
|
new Object[] { "pestleAndMortar", new ItemStack(TBItems.resource, 1, 7) });
|
|
|
|
// GW pipe
|
|
ShapedArcaneRecipe pipeRecipe = new ShapedArcaneRecipe(
|
|
"TB.Tobacco",
|
|
TBItems.greatwoodPipe,
|
|
new AspectList().add(primals(4)),
|
|
new Object[] { "#@ ", " ##", '#', new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 6), '@',
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco",
|
|
catName,
|
|
new AspectList().add(Aspect.CROP, 4)
|
|
.add(Aspect.HARVEST, 4)
|
|
.add(Aspect.MAN, 4)
|
|
.add(Aspect.MIND, 4),
|
|
11,
|
|
-7,
|
|
3,
|
|
new ItemStack(TBItems.greatwoodPipe, 1, 0)).setParentsHidden("TB.Plax")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.tobacco.page.0"),
|
|
new ResearchPage(tobaccoSeedRec),
|
|
new ResearchPage("tb.rec.tobacco.page.1"),
|
|
new ResearchPage(pipeRecipe),
|
|
new ResearchPage(pestleRecipe),
|
|
new ResearchPage(genTobaccoRec),
|
|
new ResearchPage("tb.rec.tobacco.page.2"))
|
|
.registerResearchItem();
|
|
|
|
// SW Pipe
|
|
InfusionRecipe silverwoodPipeRec = new InfusionRecipe(
|
|
"TB.SilverwoodPipe",
|
|
new ItemStack(TBItems.silverwoodPipe, 1, 0),
|
|
4,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.ORDER, 32)
|
|
.add(Aspect.HEAL, 16),
|
|
new ItemStack(TBItems.greatwoodPipe, 1, 0),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockWoodenDevice, 1, 7),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 2) });
|
|
|
|
new ResearchItem(
|
|
"TB.SilverwoodPipe",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.HEAL, 8)
|
|
.add(Aspect.AURA, 8),
|
|
13,
|
|
-9,
|
|
1,
|
|
new ItemStack(TBItems.silverwoodPipe, 1, 0)).setParents("TB.Tobacco")
|
|
.setParentsHidden("TB.INFUSION")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.silverPipe.page.0"), new ResearchPage(silverwoodPipeRec))
|
|
.registerResearchItem();
|
|
|
|
//
|
|
|
|
InfusionRecipe eldritchTobacoRec = new InfusionRecipe(
|
|
"TB.Tobacco.Eldritch",
|
|
new ItemStack(TBItems.tobacco, 1, 1),
|
|
1,
|
|
new AspectList().add(Aspect.ELDRITCH, 4)
|
|
.add(Aspect.DEATH, 1),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new ItemStack[] { new ItemStack(Items.ender_eye, 1, 0), new ItemStack(Items.arrow, 1, 0) });
|
|
|
|
InfusionRecipe wispyTobaccoRec = new InfusionRecipe(
|
|
"TB.Tobacco.Wispy",
|
|
new ItemStack(TBItems.tobacco, 1, 8),
|
|
1,
|
|
new AspectList().add(Aspect.AURA, 4)
|
|
.add(Aspect.MAGIC, 6),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemCrystalEssence, 1, OreDictionary.WILDCARD_VALUE) });
|
|
|
|
CrucibleRecipe angryTobaccoRec = new CrucibleRecipe(
|
|
"TB.Tobacco.Angry",
|
|
new ItemStack(TBItems.tobacco, 1, 2),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.WEAPON, 4)
|
|
.add(Aspect.HUNGER, 4));
|
|
CrucibleRecipe miningTobaccoRec = new CrucibleRecipe(
|
|
"TB.Tobacco.Mining",
|
|
new ItemStack(TBItems.tobacco, 1, 5),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.MINE, 4)
|
|
.add(Aspect.MOTION, 4));
|
|
CrucibleRecipe wisdomTobaccoRec = new CrucibleRecipe(
|
|
"TB.Tobacco.Wisdom",
|
|
new ItemStack(TBItems.tobacco, 1, 4),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.MIND, 4)
|
|
.add(Aspect.AIR, 4));
|
|
CrucibleRecipe taintTobaccoRec = new CrucibleRecipe(
|
|
"TB.Tobacco.Tainted",
|
|
new ItemStack(TBItems.tobacco, 1, 7),
|
|
new ItemStack(TBItems.tobacco, 1, 0),
|
|
new AspectList().add(Aspect.TAINT, 4)
|
|
.add(Aspect.MIND, 4));
|
|
ShapelessArcaneRecipe sanityTobaccoRec = new ShapelessArcaneRecipe(
|
|
"TB.Tobacco.Sanity",
|
|
new ItemStack(TBItems.tobacco, 1, 6),
|
|
new AspectList().add(Aspect.ORDER, 10)
|
|
.add(Aspect.AIR, 10)
|
|
.add(Aspect.ENTROPY, 10),
|
|
new Object[] { new ItemStack(TBItems.tobacco, 1, 0) });
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Eldritch",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 4)
|
|
.add(Aspect.ELDRITCH, 4),
|
|
14,
|
|
-7,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 1)).setParents("TB.Tobacco")
|
|
.setParentsHidden("TB.INFUSION")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.etobacco.page.0"), new ResearchPage(eldritchTobacoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Wispy",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 4)
|
|
.add(Aspect.MAGIC, 4),
|
|
15,
|
|
-9,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 8)).setParents("TB.Tobacco")
|
|
.setParentsHidden("TB.INFUSION")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.wtobacco.page.0"), new ResearchPage(wispyTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Angry",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 4)
|
|
.add(Aspect.HUNGER, 4),
|
|
11,
|
|
-9,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 2)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.atobacco.page.0"), new ResearchPage(angryTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Mining",
|
|
catName,
|
|
new AspectList().add(Aspect.MINE, 4)
|
|
.add(Aspect.MOTION, 4),
|
|
8,
|
|
-7,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 5)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.mtobacco.page.0"), new ResearchPage(miningTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Wisdom",
|
|
catName,
|
|
new AspectList().add(Aspect.MIND, 4)
|
|
.add(Aspect.AIR, 4),
|
|
13,
|
|
-6,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 4)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.witobacco.page.0"), new ResearchPage(wisdomTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Tainted",
|
|
catName,
|
|
new AspectList().add(Aspect.MIND, 4)
|
|
.add(Aspect.TAINT, 4),
|
|
15,
|
|
-8,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 7)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.ttobacco.page.0"), new ResearchPage(taintTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Saturating",
|
|
catName,
|
|
new AspectList().add(Aspect.FLESH, 4)
|
|
.add(Aspect.HUNGER, 4),
|
|
10,
|
|
-9,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 3)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.stobacco.page.0"),
|
|
new ResearchPage(new ShapelessArcaneRecipe[] { saturatingTobaccoRec, saturatingTobaccoRecM }))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Tobacco.Sanity",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 4)
|
|
.add(Aspect.MIND, 4),
|
|
9,
|
|
-8,
|
|
0,
|
|
new ItemStack(TBItems.tobacco, 1, 6)).setParents("TB.Tobacco")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.satobacco.page.0"), new ResearchPage(sanityTobaccoRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(tobaccoSeedRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(pestleRecipe);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(pipeRecipe);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(genTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(eldritchTobacoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(wispyTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(angryTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(miningTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(wisdomTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(taintTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(saturatingTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(saturatingTobaccoRecM);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sanityTobaccoRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(silverwoodPipeRec);
|
|
}
|
|
|
|
// TODO BloodyMess
|
|
if (TBConfig.enableBloodyMess) {
|
|
|
|
// copy(ResearchCategories.getResearchList("ARTIFICE").research.get("ENCHFABRIC"),"TB.ENCHFABRIC",catName,8,-3).setConcealed().setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.ENCHFABRIC",
|
|
"THAUMICBASES",
|
|
"ENCHFABRIC",
|
|
"ARTIFICE",
|
|
8,
|
|
-3,
|
|
ResearchCategories.getResearch("ENCHFABRIC").icon_item).registerResearchItem();
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.BloodyRobes", 2);
|
|
|
|
ShapedArcaneRecipe bloodyChestRec = new ShapedArcaneRecipe(
|
|
"TB.BloodyRobes",
|
|
new ItemStack(TBItems.bloodyChest, 1, 0),
|
|
new AspectList().add(Aspect.AIR, 5),
|
|
new Object[] { "# #", "###", "###", '#', new ItemStack(TBItems.resource, 1, 8) });
|
|
|
|
ShapedArcaneRecipe bloodyLegsRec = new ShapedArcaneRecipe(
|
|
"TB.BloodyRobes",
|
|
new ItemStack(TBItems.bloodyLeggings, 1, 0),
|
|
new AspectList().add(Aspect.WATER, 5),
|
|
new Object[] { "###", "# #", "# #", '#', new ItemStack(TBItems.resource, 1, 8) });
|
|
|
|
ShapedArcaneRecipe bloodyBootsRec = new ShapedArcaneRecipe(
|
|
"TB.BloodyRobes",
|
|
new ItemStack(TBItems.bloodyBoots, 1, 0),
|
|
new AspectList().add(Aspect.EARTH, 3),
|
|
new Object[] { "# #", "# #", '#', new ItemStack(TBItems.resource, 1, 8) });
|
|
|
|
ShapedArcaneRecipe ironSpikeRec = new ShapedArcaneRecipe(
|
|
"TB.Spike.Iron",
|
|
new ItemStack(TBBlocks.spike, 1, 0),
|
|
new AspectList().add(Aspect.FIRE, 1)
|
|
.add(Aspect.ENTROPY, 1),
|
|
new Object[] { " * ", "*#*", "#_#", '*', "nuggetIron", '#', "ingotIron", '_',
|
|
new ItemStack(Blocks.heavy_weighted_pressure_plate, 1, 0) });
|
|
|
|
ShapedArcaneRecipe thaumiumSpikeRec = new ShapedArcaneRecipe(
|
|
"TB.Spike.Thaumic",
|
|
new ItemStack(TBBlocks.spike, 1, 2),
|
|
primals(4),
|
|
new Object[] { " * ", "*#*", "#_#", '*', "nuggetThaumium", '#', "ingotThaumium", '_',
|
|
new ItemStack(TBBlocks.spike, 1, 0) });
|
|
|
|
ShapedArcaneRecipe voidSpikeRec = new ShapedArcaneRecipe(
|
|
"TB.Spike.Void",
|
|
new ItemStack(TBBlocks.spike, 1, 4),
|
|
primals(4),
|
|
new Object[] { " * ", "*#*", "#_#", '*', "nuggetVoid", '#', "ingotVoid", '_',
|
|
new ItemStack(TBBlocks.spike, 1, 2) });
|
|
|
|
CrucibleRecipe cleanEFabricRec = new CrucibleRecipe(
|
|
"TB.Spike.Iron",
|
|
new ItemStack(ConfigItems.itemResource, 1, 7),
|
|
new ItemStack(TBItems.resource, 1, 8),
|
|
new AspectList().add(Aspect.ORDER, 1));
|
|
|
|
new ResearchItem(
|
|
"TB.Spike.Iron",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 6)
|
|
.add(Aspect.HUNGER, 6)
|
|
.add(Aspect.METAL, 6),
|
|
10,
|
|
-3,
|
|
1,
|
|
new ItemStack(TBBlocks.spike, 1, 0)).setParents("TB.ENCHFABRIC")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.spikeIron.page.0"),
|
|
new ResearchPage(ironSpikeRec),
|
|
new ResearchPage(cleanEFabricRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Spike.Thaumic",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.MECHANISM, 6),
|
|
13,
|
|
-3,
|
|
1,
|
|
new ItemStack(TBBlocks.spike, 1, 2)).setConcealed()
|
|
.setParents("TB.Spike.Iron")
|
|
.setParentsHidden("TB.THAUMIUM")
|
|
.setPages(new ResearchPage("tb.rec.spikeThaumic.page.0"), new ResearchPage(thaumiumSpikeRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.BloodyRobes",
|
|
catName,
|
|
new AspectList().add(Aspect.HUNGER, 6)
|
|
.add(Aspect.FLESH, 6)
|
|
.add(Aspect.ARMOR, 6),
|
|
12,
|
|
-4,
|
|
1,
|
|
new ItemStack(TBItems.bloodyChest, 1, 0)).setConcealed()
|
|
.setParents("TB.Spike.Iron")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bloodyRobes.page.0"),
|
|
new ResearchPage(bloodyChestRec),
|
|
new ResearchPage(bloodyLegsRec),
|
|
new ResearchPage(bloodyBootsRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Spike.Void",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 6)
|
|
.add(Aspect.ELDRITCH, 6)
|
|
.add(Aspect.ARMOR, 6),
|
|
15,
|
|
-2,
|
|
2,
|
|
new ItemStack(TBBlocks.spike, 1, 4)).setConcealed()
|
|
.setParents("TB.Spike.Thaumic")
|
|
.setParentsHidden("TB.VOIDMETAL")
|
|
.setPages(new ResearchPage("tb.rec.spikeVoid.page.0"), new ResearchPage(voidSpikeRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(ironSpikeRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thaumiumSpikeRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidSpikeRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(cleanEFabricRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(bloodyChestRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(bloodyLegsRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(bloodyBootsRec);
|
|
}
|
|
|
|
// TODO Bracelets
|
|
if (TBConfig.enableBracelets) {
|
|
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("CAP_gold"),"TB.CAP_gold",catName,-8,10).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_greatwood"),"TB.ROD_greatwood",catName,-10,6).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_silverwood"),"TB.ROD_silverwood",catName,-12,6).setConcealed().setHidden().registerResearchItem();
|
|
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_reed"),"TB.ROD_reed",catName,-19,5).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_blaze"),"TB.ROD_blaze",catName,-15,5).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_obsidian"),"TB.ROD_obsidian",catName,-19,11).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_ice"),"TB.ROD_ice",catName,-17,5).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_quartz"),"TB.ROD_quartz",catName,-17,11).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("ROD_bone"),"TB.ROD_bone",catName,-15,11).setConcealed().setHidden().registerResearchItem();
|
|
|
|
// copy(ResearchCategories.getResearchList("ELDRITCH").research.get("ROD_primal_staff"),"TB.ROD_primal_staff",catName,-19,8).setConcealed().setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.CAP_gold",
|
|
"THAUMICBASES",
|
|
"CAP_gold",
|
|
"THAUMATURGY",
|
|
-8,
|
|
10,
|
|
ResearchCategories.getResearch("CAP_gold").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_greatwood",
|
|
"THAUMICBASES",
|
|
"ROD_greatwood",
|
|
"THAUMATURGY",
|
|
-10,
|
|
6,
|
|
ResearchCategories.getResearch("ROD_greatwood").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_silverwood",
|
|
"THAUMICBASES",
|
|
"ROD_silverwood",
|
|
"THAUMATURGY",
|
|
-12,
|
|
6,
|
|
ResearchCategories.getResearch("ROD_silverwood").icon_item).registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.ROD_reed",
|
|
"THAUMICBASES",
|
|
"ROD_reed",
|
|
"THAUMATURGY",
|
|
-19,
|
|
5,
|
|
ResearchCategories.getResearch("ROD_reed").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_blaze",
|
|
"THAUMICBASES",
|
|
"ROD_blaze",
|
|
"THAUMATURGY",
|
|
-15,
|
|
5,
|
|
ResearchCategories.getResearch("ROD_blaze").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_obsidian",
|
|
"THAUMICBASES",
|
|
"ROD_obsidian",
|
|
"THAUMATURGY",
|
|
-19,
|
|
11,
|
|
ResearchCategories.getResearch("ROD_obsidian").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_ice",
|
|
"THAUMICBASES",
|
|
"ROD_ice",
|
|
"THAUMATURGY",
|
|
-17,
|
|
5,
|
|
ResearchCategories.getResearch("ROD_ice").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_quartz",
|
|
"THAUMICBASES",
|
|
"ROD_quartz",
|
|
"THAUMATURGY",
|
|
-17,
|
|
11,
|
|
ResearchCategories.getResearch("ROD_quartz").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.ROD_bone",
|
|
"THAUMICBASES",
|
|
"ROD_bone",
|
|
"THAUMATURGY",
|
|
-15,
|
|
11,
|
|
ResearchCategories.getResearch("ROD_bone").icon_item).registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.ROD_primal_staff",
|
|
"THAUMICBASES",
|
|
"ROD_primal_staff",
|
|
"THAUMATURGY",
|
|
-19,
|
|
8,
|
|
ResearchCategories.getResearch("ROD_primal_staff").icon_item).registerResearchItem();
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.Bracelet.Void", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.Bracelet.Bone", 1);
|
|
ThaumcraftApi.addWarpToResearch("TB.Bracelet.Primal", 4);
|
|
|
|
ThaumcraftApi.addWarpToItem(new ItemStack(TBItems.castingBracelet, 1, 12), 3);
|
|
|
|
ShapedArcaneRecipe ironBraceletRec = new ShapedArcaneRecipe(
|
|
"TB.Bracelet.Iron",
|
|
new ItemStack(TBItems.castingBracelet, 1, 0),
|
|
primals(1),
|
|
new Object[] { "CIC", "N N", 'C', new ItemStack(ConfigItems.itemWandCap, 1, 0), 'I', "ingotIron", 'N',
|
|
"nuggetIron" });
|
|
|
|
ShapedArcaneRecipe goldBraceletRec = new ShapedArcaneRecipe(
|
|
"TB.Bracelet.Gold",
|
|
new ItemStack(TBItems.castingBracelet, 1, 1),
|
|
primals(5),
|
|
new Object[] { "CIC", "N N", 'C', new ItemStack(ConfigItems.itemWandCap, 1, 1), 'I', "ingotGold", 'N',
|
|
"nuggetGold" });
|
|
|
|
ShapedArcaneRecipe greatwoodBraceletRec = new ShapedArcaneRecipe(
|
|
"TB.Bracelet.Greatwood",
|
|
new ItemStack(TBItems.castingBracelet, 1, 2),
|
|
primals(25),
|
|
new Object[] { "CIC", "I I", 'C', new ItemStack(ConfigItems.itemWandCap, 1, 1), 'I',
|
|
new ItemStack(ConfigBlocks.blockMagicalLog, 1, 0) });
|
|
|
|
ShapedArcaneRecipe thaumiumBraceletRec = new ShapedArcaneRecipe(
|
|
"TB.Bracelet.Thaumium",
|
|
new ItemStack(TBItems.castingBracelet, 1, 3),
|
|
primals(25),
|
|
new Object[] { "CIC", "INI", "N N", 'C', new ItemStack(TBItems.resource, 1, 2), 'I',
|
|
new ItemStack(ConfigItems.itemResource, 1, 2), 'N',
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
InfusionRecipe silverwoodBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Silverwood",
|
|
new ItemStack(TBItems.castingBracelet, 1, 4),
|
|
5,
|
|
primals(17).add(Aspect.MAGIC, 17),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 2),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(ConfigBlocks.blockMagicalLog, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, 6), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(ConfigBlocks.blockMagicalLog, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, 6) });
|
|
|
|
InfusionRecipe voidBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Void",
|
|
new ItemStack(TBItems.castingBracelet, 1, 11),
|
|
8,
|
|
new AspectList().add(Aspect.ELDRITCH, 64)
|
|
.add(Aspect.VOID, 64)
|
|
.add(Aspect.MAGIC, 64)
|
|
.add(Aspect.AURA, 24)
|
|
.add(Aspect.ENERGY, 24),
|
|
new ItemStack(TBItems.resource, 1, 4),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(TBBlocks.crystalBlock, 1, 6),
|
|
new ItemStack(ConfigItems.itemWandCap, 1, 2), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(TBBlocks.crystalBlock, 1, 6) });
|
|
|
|
InfusionRecipe reedBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Reed",
|
|
new ItemStack(TBItems.castingBracelet, 1, 5),
|
|
2,
|
|
new AspectList().add(Aspect.AIR, 24)
|
|
.add(Aspect.MOTION, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 5),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 0), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 0) });
|
|
|
|
InfusionRecipe boneBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Bone",
|
|
new ItemStack(TBItems.castingBracelet, 1, 6),
|
|
2,
|
|
new AspectList().add(Aspect.ENTROPY, 24)
|
|
.add(Aspect.UNDEAD, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 7),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 5), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 5) });
|
|
|
|
InfusionRecipe obsidianBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Obsidian",
|
|
new ItemStack(TBItems.castingBracelet, 1, 7),
|
|
2,
|
|
new AspectList().add(Aspect.EARTH, 24)
|
|
.add(Aspect.DARKNESS, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 1),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 3), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 3) });
|
|
|
|
InfusionRecipe blazeBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Blaze",
|
|
new ItemStack(TBItems.castingBracelet, 1, 8),
|
|
2,
|
|
new AspectList().add(Aspect.FIRE, 24)
|
|
.add(Aspect.BEAST, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 6),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 1), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 1) });
|
|
|
|
InfusionRecipe iceBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Ice",
|
|
new ItemStack(TBItems.castingBracelet, 1, 9),
|
|
2,
|
|
new AspectList().add(Aspect.WATER, 24)
|
|
.add(Aspect.COLD, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 3),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 2), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 2) });
|
|
|
|
InfusionRecipe quartzBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Quartz",
|
|
new ItemStack(TBItems.castingBracelet, 1, 10),
|
|
2,
|
|
new AspectList().add(Aspect.ORDER, 24)
|
|
.add(Aspect.ENERGY, 12)
|
|
.add(Aspect.MAGIC, 8),
|
|
new ItemStack(ConfigItems.itemWandRod, 1, 4),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 4), new ItemStack(ConfigItems.itemWandCap, 1, 2),
|
|
new ItemStack(ConfigItems.itemShard, 1, 4) });
|
|
|
|
InfusionRecipe primalBraceletRec = new InfusionRecipe(
|
|
"TB.Bracelet.Primal",
|
|
new ItemStack(TBItems.castingBracelet, 1, 12),
|
|
7,
|
|
primals(48).add(Aspect.MAGIC, 96),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWandCap, 1, 7),
|
|
new ItemStack(TBItems.castingBracelet, 1, 5), new ItemStack(TBItems.castingBracelet, 1, 6),
|
|
new ItemStack(TBItems.castingBracelet, 1, 7), new ItemStack(ConfigItems.itemWandCap, 1, 7),
|
|
new ItemStack(TBItems.castingBracelet, 1, 8), new ItemStack(TBItems.castingBracelet, 1, 9),
|
|
new ItemStack(TBItems.castingBracelet, 1, 10) });
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Iron",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 3)
|
|
.add(Aspect.MAGIC, 3),
|
|
-6,
|
|
7,
|
|
0,
|
|
new ItemStack(TBItems.castingBracelet, 1, 0)).setRound()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bracelet.iron.page.0"),
|
|
new ResearchPage("tb.rec.bracelet.iron.page.1"),
|
|
new ResearchPage("tb.rec.bracelet.iron.page.2"),
|
|
new ResearchPage(ironBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Gold",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.GREED, 3),
|
|
-8,
|
|
8,
|
|
0,
|
|
new ItemStack(TBItems.castingBracelet, 1, 1)).setParents("TB.Bracelet.Iron", "TB.CAP_gold")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.gold.page.0"), new ResearchPage(goldBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Greatwood",
|
|
catName,
|
|
new AspectList().add(Aspect.TREE, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.ENERGY, 3),
|
|
-10,
|
|
8,
|
|
0,
|
|
new ItemStack(TBItems.castingBracelet, 1, 2)).setConcealed()
|
|
.setParents("TB.Bracelet.Gold", "TB.ROD_greatwood")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bracelet.greatwood.page.0"),
|
|
new ResearchPage(greatwoodBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Thaumium",
|
|
catName,
|
|
new AspectList().add(Aspect.METAL, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.ENERGY, 3)
|
|
.add(Aspect.AURA, 3),
|
|
-10,
|
|
11,
|
|
0,
|
|
new ItemStack(TBItems.castingBracelet, 1, 3)).setConcealed()
|
|
.setParents("TB.Bracelet.Greatwood")
|
|
.setParentsHidden("TB.THAUMIUM", "CAP_thauminite")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bracelet.thaumium.page.0"),
|
|
new ResearchPage(thaumiumBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Silverwood",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.TREE, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-12,
|
|
8,
|
|
1,
|
|
new ItemStack(TBItems.castingBracelet, 1, 4)).setConcealed()
|
|
.setParents("TB.Bracelet.Greatwood", "TB.ROD_silverwood")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bracelet.silverwood.page.0"),
|
|
new ResearchPage(silverwoodBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Void",
|
|
catName,
|
|
new AspectList().add(Aspect.VOID, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.ELDRITCH, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-12,
|
|
11,
|
|
3,
|
|
new ItemStack(TBItems.castingBracelet, 1, 11)).setConcealed()
|
|
.setParents("TB.Bracelet.Silverwood")
|
|
.setParentsHidden("TB.VOIDMETAL")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.void.page.0"), new ResearchPage(voidBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Reed",
|
|
catName,
|
|
new AspectList().add(Aspect.AIR, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-19,
|
|
6,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 5)).setConcealed()
|
|
.setParents("TB.ROD_reed")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.reed.page.0"), new ResearchPage(reedBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Blaze",
|
|
catName,
|
|
new AspectList().add(Aspect.FIRE, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-15,
|
|
6,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 8)).setConcealed()
|
|
.setParents("TB.ROD_blaze")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.blaze.page.0"), new ResearchPage(blazeBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Obsidian",
|
|
catName,
|
|
new AspectList().add(Aspect.EARTH, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-19,
|
|
10,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 7)).setConcealed()
|
|
.setParents("TB.ROD_obsidian")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.bracelet.obsidian.page.0"),
|
|
new ResearchPage(obsidianBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Ice",
|
|
catName,
|
|
new AspectList().add(Aspect.WATER, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-17,
|
|
6,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 9)).setConcealed()
|
|
.setParents("TB.ROD_ice")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.ice.page.0"), new ResearchPage(iceBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Quartz",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-17,
|
|
10,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 10)).setConcealed()
|
|
.setParents("TB.ROD_quartz")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.quartz.page.0"), new ResearchPage(quartzBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Bone",
|
|
catName,
|
|
new AspectList().add(Aspect.ENTROPY, 3)
|
|
.add(Aspect.MAGIC, 3)
|
|
.add(Aspect.CRAFT, 3)
|
|
.add(Aspect.AURA, 3)
|
|
.add(Aspect.EXCHANGE, 3),
|
|
-15,
|
|
10,
|
|
2,
|
|
new ItemStack(TBItems.castingBracelet, 1, 6)).setConcealed()
|
|
.setParents("TB.ROD_bone")
|
|
.setParentsHidden("TB.Bracelet.Greatwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.bone.page.0"), new ResearchPage(boneBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Bracelet.Primal",
|
|
catName,
|
|
primals(6).add(Aspect.MAGIC, 12)
|
|
.add(Aspect.ELDRITCH, 12),
|
|
-17,
|
|
8,
|
|
4,
|
|
new ItemStack(TBItems.castingBracelet, 1, 12)).setConcealed()
|
|
.setSpecial()
|
|
.setParents(
|
|
"TB.ROD_primal_staff",
|
|
"TB.Bracelet.Bone",
|
|
"TB.Bracelet.Quartz",
|
|
"TB.Bracelet.Ice",
|
|
"TB.Bracelet.Obsidian",
|
|
"TB.Bracelet.Blaze",
|
|
"TB.Bracelet.Reed",
|
|
"TB.Bracelet.Silverwood")
|
|
.setPages(new ResearchPage("tb.rec.bracelet.primal.page.0"), new ResearchPage(primalBraceletRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(ironBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(goldBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(greatwoodBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thaumiumBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(silverwoodBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(reedBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(boneBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(obsidianBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(blazeBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(iceBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(quartzBraceletRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(primalBraceletRec);
|
|
}
|
|
|
|
// TODO Flora
|
|
if (TBConfig.enableFlora) {
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.Aurelia", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.Flaxium", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.Lucrite", 1);
|
|
|
|
CrucibleRecipe plaxRec = new CrucibleRecipe(
|
|
"TB.Plax",
|
|
new ItemStack(TBItems.plaxSeed, 1, 0),
|
|
new ItemStack(Items.wheat_seeds),
|
|
new AspectList().add(Aspect.CLOTH, 4));
|
|
CrucibleRecipe metalleatRec = new CrucibleRecipe(
|
|
"TB.Metalleat",
|
|
new ItemStack(TBItems.metalleatSeeds, 1, 0),
|
|
new ItemStack(Items.wheat_seeds),
|
|
new AspectList().add(Aspect.ORDER, 4)
|
|
.add(Aspect.METAL, 12)
|
|
.add(Aspect.LIFE, 4));
|
|
CrucibleRecipe lucriteRec = new CrucibleRecipe(
|
|
"TB.Lucrite",
|
|
new ItemStack(TBItems.lucriteSeeds, 1, 0),
|
|
new ItemStack(Items.golden_carrot),
|
|
new AspectList().add(Aspect.HUNGER, 4)
|
|
.add(Aspect.GREED, 12)
|
|
.add(Aspect.LIFE, 4));
|
|
|
|
CrucibleRecipe aureliaRec = new CrucibleRecipe(
|
|
"TB.Aurelia",
|
|
new ItemStack(TBBlocks.aurelia),
|
|
new ItemStack(Blocks.red_flower, 1, 7),
|
|
new AspectList().add(Aspect.PLANT, 8)
|
|
.add(Aspect.ELDRITCH, 2)
|
|
.add(Aspect.AURA, 2));
|
|
CrucibleRecipe knoseRec = new CrucibleRecipe(
|
|
"TB.Knose",
|
|
new ItemStack(TBItems.knoseSeed),
|
|
new ItemStack(Blocks.double_plant, 1, 4),
|
|
new AspectList().add(Aspect.MIND, 16)
|
|
.add(Aspect.LIFE, 8)
|
|
.add(Aspect.ENERGY, 2));
|
|
CrucibleRecipe knowledgeFragmentRec = new CrucibleRecipe(
|
|
"TB.Knose",
|
|
new ItemStack(ConfigItems.itemResource, 1, 9),
|
|
new ItemStack(TBItems.knoseFragment, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.ORDER, 1)
|
|
.add(Aspect.EXCHANGE, 1));
|
|
CrucibleRecipe sweedRec = new CrucibleRecipe(
|
|
"TB.BasicPlants",
|
|
new ItemStack(TBItems.sweedSeeds),
|
|
new ItemStack(Blocks.tallgrass, 1, OreDictionary.WILDCARD_VALUE),
|
|
new AspectList().add(Aspect.MOTION, 2)
|
|
.add(Aspect.LIFE, 1));
|
|
CrucibleRecipe lazulliaRec = new CrucibleRecipe(
|
|
"TB.Lazullia",
|
|
new ItemStack(TBItems.lazulliaSeeds),
|
|
new ItemStack(Items.wheat_seeds),
|
|
new AspectList().add(Aspect.SENSES, 12)
|
|
.add(Aspect.GREED, 3));
|
|
CrucibleRecipe rainbowCactiRec = new CrucibleRecipe(
|
|
"TB.RainbowCacti",
|
|
new ItemStack(TBBlocks.rainbowCactus),
|
|
new ItemStack(Blocks.cactus),
|
|
new AspectList().add(Aspect.EXCHANGE, 24)
|
|
.add(Aspect.SENSES, 6));
|
|
CrucibleRecipe redlonRec = new CrucibleRecipe(
|
|
"TB.Redlon",
|
|
new ItemStack(TBItems.redlonSeeds),
|
|
new ItemStack(Items.melon_seeds),
|
|
new AspectList().add(Aspect.MECHANISM, 16)
|
|
.add(Aspect.ENERGY, 16));
|
|
CrucibleRecipe aspectShroomRec = new CrucibleRecipe(
|
|
"TB.Ashroom",
|
|
new ItemStack(TBBlocks.ashroom, 1, 0),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 5),
|
|
new AspectList().add(Aspect.ENTROPY, 4)
|
|
.add(Aspect.CROP, 2));
|
|
CrucibleRecipe flaxiumRec = new CrucibleRecipe(
|
|
"TB.Flaxium",
|
|
new ItemStack(TBBlocks.flaxium, 1, 0),
|
|
new ItemStack(Blocks.red_flower, 1, 2),
|
|
new AspectList().add(Aspect.ENTROPY, 1)
|
|
.add(Aspect.MAGIC, 2));
|
|
CrucibleRecipe glieoniaRec = new CrucibleRecipe(
|
|
"TB.Glieonia",
|
|
new ItemStack(TBItems.glieoniaSeed, 1, 0),
|
|
new ItemStack(Blocks.red_flower, 1, 3),
|
|
new AspectList().add(Aspect.LIGHT, 8)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.LIFE, 4));
|
|
CrucibleRecipe briarRec = new CrucibleRecipe(
|
|
"TB.Briar",
|
|
new ItemStack(TBBlocks.briar, 1, 0),
|
|
new ItemStack(Blocks.double_plant, 1, 4),
|
|
new AspectList().add(Aspect.HEAL, 4)
|
|
.add(Aspect.LIFE, 4)
|
|
.add(Aspect.PLANT, 4));
|
|
|
|
ShapelessArcaneRecipe rosehipRec = new ShapelessArcaneRecipe(
|
|
"TB.Briar",
|
|
TBItems.rosehipSyrup,
|
|
new AspectList().add(Aspect.FIRE, 3)
|
|
.add(Aspect.WATER, 5),
|
|
new Object[] { new ItemStack(ConfigItems.itemEssence, 1, 0), new ItemStack(TBItems.resource, 1, 6),
|
|
new ItemStack(Items.sugar, 1, 0) });
|
|
|
|
InfusionRecipe voidSeedRec = new InfusionRecipe(
|
|
"TB.VoidSeed",
|
|
new ItemStack(TBItems.voidSeed, 1, 0),
|
|
3,
|
|
new AspectList().add(Aspect.ELDRITCH, 16)
|
|
.add(Aspect.DARKNESS, 16)
|
|
.add(Aspect.CROP, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 17),
|
|
new ItemStack[] { new ItemStack(Items.wheat_seeds, 1, 0), new ItemStack(Items.pumpkin_seeds, 1, 0),
|
|
new ItemStack(Items.melon_seeds, 1, 0), new ItemStack(Items.poisonous_potato, 1, 0),
|
|
new ItemStack(Items.carrot, 1, 0), new ItemStack(Items.nether_wart, 1, 0), });
|
|
|
|
InfusionRecipe goldenOakRec = new InfusionRecipe(
|
|
"TB.GoldenOak",
|
|
new ItemStack(TBBlocks.sapling),
|
|
2,
|
|
new AspectList().add(Aspect.PLANT, 16)
|
|
.add(Aspect.GREED, 64),
|
|
new ItemStack(Blocks.sapling, 1, 0),
|
|
new ItemStack[] { new ItemStack(Items.apple), new ItemStack(Items.apple),
|
|
new ItemStack(Items.golden_apple), new ItemStack(Items.golden_apple) });
|
|
|
|
InfusionRecipe peacefulSaplingRec = new InfusionRecipe(
|
|
"TB.PeacefulSapling",
|
|
new ItemStack(TBBlocks.sapling, 1, 1),
|
|
2,
|
|
new AspectList().add(Aspect.TREE, 16)
|
|
.add(Aspect.LIFE, 12)
|
|
.add(Aspect.HEAL, 6),
|
|
new ItemStack(Blocks.sapling, 1, 2),
|
|
new ItemStack[] { new ItemStack(Items.slime_ball), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.slime_ball), new ItemStack(ConfigBlocks.blockCustomPlant, 1, 2),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigBlocks.blockMetalDevice, 1, 13),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 2) });
|
|
|
|
InfusionRecipe netherSaplingRec = new InfusionRecipe(
|
|
"TB.NetherSapling",
|
|
new ItemStack(TBBlocks.sapling, 1, 2),
|
|
5,
|
|
new AspectList().add(Aspect.TREE, 32)
|
|
.add(nether, 32)
|
|
.add(Aspect.HUNGER, 16),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 0),
|
|
new ItemStack[] { new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3),
|
|
new ItemStack(ConfigItems.itemShard, 1, 1), new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 4),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3), new ItemStack(ConfigItems.itemShard, 1, 1),
|
|
new ItemStack(Items.lava_bucket, 1, 0), new ItemStack(ConfigItems.itemShard, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 4) });
|
|
|
|
InfusionRecipe enderSaplingRec = new InfusionRecipe(
|
|
"TB.EnderSapling",
|
|
new ItemStack(TBBlocks.sapling, 1, 3),
|
|
7,
|
|
new AspectList().add(Aspect.TREE, 64)
|
|
.add(Aspect.ELDRITCH, 24)
|
|
.add(Aspect.VOID, 16)
|
|
.add(Aspect.DARKNESS, 8),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 1),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(Items.ender_pearl, 1, 0),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(ConfigItems.itemResource, 1, 1),
|
|
new ItemStack(Items.ender_pearl, 1, 0), new ItemStack(Items.ender_pearl, 1, 0),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 4), new ItemStack(ConfigItems.itemShard, 1, 6),
|
|
new ItemStack(Items.ender_pearl, 1, 0), new ItemStack(ConfigItems.itemShard, 1, 6),
|
|
new ItemStack(ConfigItems.itemResource, 1, 1) });
|
|
|
|
new ResearchItem(
|
|
"TB.BasicPlants",
|
|
catName,
|
|
new AspectList().add(Aspect.CROP, 2)
|
|
.add(Aspect.PLANT, 2),
|
|
-8,
|
|
-2,
|
|
1,
|
|
new ItemStack(Items.wheat_seeds, 1, 0)).setParentsHidden("TB.CRUCIBLE")
|
|
.setRound()
|
|
.setPages(new ResearchPage("tb.rec.basicPlants.page.0"), new ResearchPage(sweedRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Plax",
|
|
catName,
|
|
new AspectList().add(Aspect.CROP, 1)
|
|
.add(Aspect.CLOTH, 1),
|
|
-11,
|
|
-2,
|
|
1,
|
|
new ItemStack(TBItems.plaxSeed, 1, 0)).setParents("TB.BasicPlants")
|
|
.setPages(new ResearchPage("tb.rec.plax.page.0"), new ResearchPage(plaxRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Briar",
|
|
catName,
|
|
new AspectList().add(Aspect.CROP, 4)
|
|
.add(Aspect.PLANT, 4)
|
|
.add(Aspect.HEAL, 4),
|
|
-13,
|
|
-3,
|
|
1,
|
|
new ItemStack(TBItems.resource, 1, 6)).setParents("TB.Plax")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.briar.page.0"),
|
|
new ResearchPage(briarRec),
|
|
new ResearchPage(rosehipRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Aurelia",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.AURA, 6),
|
|
-10,
|
|
0,
|
|
0,
|
|
new ItemStack(TBBlocks.aurelia, 1, 0)).setParents("TB.BasicPlants")
|
|
.setPages(
|
|
new ResearchPage("tb.rec.aurelia.page.0"),
|
|
new ResearchPage("tb.rec.aurelia.page.1"),
|
|
new ResearchPage(aureliaRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Knose",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MIND, 6)
|
|
.add(Aspect.EARTH, 6),
|
|
-10,
|
|
2,
|
|
0,
|
|
new ItemStack(TBItems.knoseFragment, 1, OreDictionary.WILDCARD_VALUE)).setParents("TB.Aurelia")
|
|
.setParentsHidden("TB.CrystalBlocks")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.knose.page.0"),
|
|
new ResearchPage("tb.rec.knose.page.1"),
|
|
new ResearchPage(knoseRec),
|
|
new ResearchPage(knowledgeFragmentRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Ashroom",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.ENTROPY, 6)
|
|
.add(Aspect.AURA, 6)
|
|
.add(Aspect.AIR, 6)
|
|
.add(Aspect.CROP, 4),
|
|
-9,
|
|
2,
|
|
2,
|
|
new ItemStack(TBBlocks.ashroom)).setParents("TB.Aurelia")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.ashroom.page.0"), new ResearchPage(aspectShroomRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Glieonia",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.LIGHT, 6)
|
|
.add(Aspect.SENSES, 6)
|
|
.add(Aspect.FIRE, 6)
|
|
.add(Aspect.PLANT, 4),
|
|
-12,
|
|
1,
|
|
2,
|
|
new ItemStack(TBItems.glieoniaSeed)).setParents("TB.Aurelia")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.glieonia.page.0"), new ResearchPage(glieoniaRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Flaxium",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.ENTROPY, 6)
|
|
.add(Aspect.AURA, 6)
|
|
.add(Aspect.MAGIC, 6),
|
|
-11,
|
|
2,
|
|
2,
|
|
new ItemStack(TBBlocks.flaxium)).setParents("TB.Aurelia")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.flaxium.page.0"), new ResearchPage(flaxiumRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Metalleat",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.METAL, 6)
|
|
.add(Aspect.EXCHANGE, 6),
|
|
-10,
|
|
-4,
|
|
0,
|
|
new ItemStack(TBItems.metalleatSeeds, 1, 0)).setParents("TB.BasicPlants")
|
|
.setPages(new ResearchPage("tb.rec.metalleat.page.0"), new ResearchPage(metalleatRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Lazullia",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.GREED, 6)
|
|
.add(Aspect.CRYSTAL, 6)
|
|
.add(Aspect.PLANT, 6)
|
|
.add(Aspect.SENSES, 8),
|
|
-8,
|
|
-5,
|
|
2,
|
|
new ItemStack(TBItems.lazulliaSeeds, 1, 0)).setParents("TB.Metalleat")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage(
|
|
"tb.rec.lazullia.page.0" + (Loader.isModLoaded("essentialcraft") ? "_ec3" : "")),
|
|
new ResearchPage(lazulliaRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.RainbowCacti",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.EXCHANGE, 6)
|
|
.add(Aspect.CROP, 6)
|
|
.add(Aspect.ENTROPY, 6)
|
|
.add(Aspect.SENSES, 8),
|
|
-11,
|
|
-6,
|
|
2,
|
|
new ItemStack(TBBlocks.rainbowCactus, 1, 0)).setParents("TB.Metalleat")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage(
|
|
(Loader.isModLoaded("gregtech") && !Loader.isModLoaded("gregapi"))
|
|
? "tb.rec.rainCacti.page.0.gt"
|
|
: "tb.rec.rainCacti.page.0"),
|
|
new ResearchPage(rainbowCactiRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Lucrite",
|
|
catName,
|
|
new AspectList().add(Aspect.GREED, 6)
|
|
.add(Aspect.MAGIC, 6)
|
|
.add(Aspect.PLANT, 6)
|
|
.add(Aspect.HUNGER, 6),
|
|
-9,
|
|
-6,
|
|
0,
|
|
new ItemStack(TBItems.lucriteSeeds, 1, 0)).setParents("TB.Metalleat")
|
|
.setParentsHidden("TB.SMB")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.lucrite.page.0"), new ResearchPage(lucriteRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Redlon",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.MECHANISM, 6)
|
|
.add(Aspect.ENERGY, 6)
|
|
.add(Aspect.CROP, 6)
|
|
.add(Aspect.ORDER, 6)
|
|
.add(Aspect.GREED, 8),
|
|
-10,
|
|
-6,
|
|
3,
|
|
new ItemStack(TBItems.redlonSeeds, 1, 0)).setParents("TB.Metalleat")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.redlon.page.0"), new ResearchPage(redlonRec))
|
|
.registerResearchItem();
|
|
|
|
// void seed
|
|
new ResearchItem(
|
|
"TB.VoidSeed",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 6)
|
|
.add(Aspect.ELDRITCH, 6)
|
|
.add(Aspect.DARKNESS, 6),
|
|
16,
|
|
3,
|
|
1,
|
|
new ItemStack(TBItems.voidSeed, 1, 0)).setParents("TB.VOIDMETAL")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.voidSeed.page.0"), new ResearchPage(voidSeedRec))
|
|
.registerResearchItem();
|
|
|
|
// saplings
|
|
new ResearchItem(
|
|
"TB.GoldenOak",
|
|
catName,
|
|
new AspectList().add(Aspect.GREED, 8)
|
|
.add(Aspect.HUNGER, 8)
|
|
.add(Aspect.CROP, 8),
|
|
-15,
|
|
-1,
|
|
0,
|
|
new ItemStack(TBBlocks.sapling, 1, 0)).setParents("TB.Briar")
|
|
.setParentsHidden("TB.INFUSION")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.goldenOak.page.0"),
|
|
new ResearchPage(goldenOakRec),
|
|
new ResearchPage("tb.rec.goldenOak.page.1"))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.PeacefulSapling",
|
|
catName,
|
|
new AspectList().add(Aspect.LIFE, 8)
|
|
.add(Aspect.HEAL, 8)
|
|
.add(Aspect.TREE, 8),
|
|
-18,
|
|
-1,
|
|
0,
|
|
new ItemStack(TBBlocks.sapling, 1, 1)).setParents("TB.GoldenOak")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.peacefulTree.page.0"), new ResearchPage(peacefulSaplingRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NetherSapling",
|
|
catName,
|
|
new AspectList().add(Aspect.TREE, 8)
|
|
.add(Aspect.FIRE, 8)
|
|
.add(nether, 8),
|
|
-17,
|
|
0,
|
|
0,
|
|
new ItemStack(TBBlocks.sapling, 1, 2)).setParents("TB.GoldenOak")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.netherTree.page.0"), new ResearchPage(netherSaplingRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.EnderSapling",
|
|
catName,
|
|
new AspectList().add(Aspect.TREE, 8)
|
|
.add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.VOID, 8),
|
|
-17,
|
|
-2,
|
|
0,
|
|
new ItemStack(TBBlocks.sapling, 1, 3)).setParents("TB.GoldenOak")
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.enderTree.page.0"), new ResearchPage(enderSaplingRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(plaxRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(metalleatRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(lucriteRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(knoseRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(knowledgeFragmentRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sweedRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(lazulliaRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(rainbowCactiRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(redlonRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(aspectShroomRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(flaxiumRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(glieoniaRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(briarRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(rosehipRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(aureliaRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidSeedRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(peacefulSaplingRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(netherSaplingRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(enderSaplingRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(goldenOakRec);
|
|
}
|
|
|
|
// TODO nodes
|
|
if (TBConfig.enableNodeTools) {
|
|
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("NODESTABILIZERADV"),"TB.NODESTABILIZERADV",catName,-2,-7).setConcealed().setHidden().registerResearchItem();
|
|
// copy(ResearchCategories.getResearchList("THAUMATURGY").research.get("VISPOWER"),"TB.VISPOWER",catName,2,-7).setConcealed().setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.NODESTABILIZERADV",
|
|
"THAUMICBASES",
|
|
"NODESTABILIZERADV",
|
|
"THAUMATURGY",
|
|
-2,
|
|
-7,
|
|
ResearchCategories.getResearch("NODESTABILIZERADV").icon_item).registerResearchItem();
|
|
new FakeResearchItem(
|
|
"TB.VISPOWER",
|
|
"THAUMICBASES",
|
|
"VISPOWER",
|
|
"THAUMATURGY",
|
|
2,
|
|
-7,
|
|
ResearchCategories.getResearch("VISPOWER").icon_item).registerResearchItem();
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.NodeMan", 1);
|
|
ThaumcraftApi.addWarpToResearch("TB.NodeFoci.Destr", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.NodeFoci.Taint", 3);
|
|
|
|
ThaumcraftApi.addWarpToItem(new ItemStack(TBItems.nodeFoci, 1, 1), 1);
|
|
ThaumcraftApi.addWarpToItem(new ItemStack(TBItems.nodeFoci, 1, 9), 2);
|
|
|
|
InfusionRecipe nodeManipulatorRec = new InfusionRecipe(
|
|
"TB.NodeMan",
|
|
new ItemStack(TBBlocks.nodeManipulator, 1, 0),
|
|
6,
|
|
new AspectList().add(Aspect.MECHANISM, 32)
|
|
.add(Aspect.AURA, 32)
|
|
.add(Aspect.MAGIC, 16)
|
|
.add(Aspect.ENERGY, 64)
|
|
.add(Aspect.VOID, 16),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 11),
|
|
new ItemStack[] { new ItemStack(ConfigBlocks.blockStoneDevice, 1, 10),
|
|
new ItemStack(ConfigBlocks.blockMirror, 1, 0), new ItemStack(ConfigBlocks.blockMirror, 1, 6),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 14), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 10), new ItemStack(ConfigBlocks.blockMirror, 1, 0),
|
|
new ItemStack(ConfigBlocks.blockMirror, 1, 6), new ItemStack(ConfigBlocks.blockStoneDevice, 1, 14),
|
|
new ItemStack(TBBlocks.dustBlock, 1, 0) });
|
|
|
|
boolean flag = TBConfig.brightFociRequiresPrimordialPearl;
|
|
|
|
InfusionRecipe brightFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Bright",
|
|
new ItemStack(TBItems.nodeFoci, 1, 0),
|
|
3,
|
|
new AspectList().add(Aspect.AURA, flag ? 256 : 64)
|
|
.add(Aspect.LIGHT, flag ? 64 : 16)
|
|
.add(Aspect.ENERGY, flag ? 256 : 32),
|
|
flag ? new ItemStack(ConfigItems.itemEldritchObject, 1, 3)
|
|
: new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigBlocks.blockMetalDevice, 1, 7),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigBlocks.blockMetalDevice, 1, 7),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigBlocks.blockCustomPlant, 1, 3),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
InfusionRecipe destructionFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Destr",
|
|
new ItemStack(TBItems.nodeFoci, 1, 1),
|
|
5,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.VOID, 16)
|
|
.add(Aspect.DEATH, 32),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 6),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigBlocks.blockTube, 1, 7),
|
|
new ItemStack(ConfigItems.itemFocusExcavation, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 6),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigBlocks.blockTube, 1, 7),
|
|
new ItemStack(ConfigItems.itemFocusExcavation, 1, 0) });
|
|
|
|
InfusionRecipe efficiencyFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Efficiency",
|
|
new ItemStack(TBItems.nodeFoci, 1, 2),
|
|
1,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.VOID, 16)
|
|
.add(Aspect.DEATH, 32),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemShard, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0) });
|
|
|
|
InfusionRecipe hungerFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Hunger",
|
|
new ItemStack(TBItems.nodeFoci, 1, 3),
|
|
7,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.VOID, 64)
|
|
.add(Aspect.HUNGER, 256)
|
|
.add(Aspect.GREED, 64)
|
|
.add(Aspect.ENERGY, 128),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemThaumometer, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 11), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemThaumometer, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigBlocks.blockStoneDevice, 1, 11) });
|
|
|
|
InfusionRecipe unstableFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Unstable",
|
|
new ItemStack(TBItems.nodeFoci, 1, 4),
|
|
3,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.DEATH, 32)
|
|
.add(Aspect.ENTROPY, 64),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(Items.ender_pearl), new ItemStack(TBBlocks.crystalBlock, 1, 5),
|
|
new ItemStack(Items.ender_pearl), new ItemStack(TBBlocks.crystalBlock, 1, 5),
|
|
new ItemStack(Items.ender_pearl), new ItemStack(TBBlocks.crystalBlock, 1, 5),
|
|
new ItemStack(Items.ender_pearl), new ItemStack(TBBlocks.crystalBlock, 1, 5) });
|
|
|
|
InfusionRecipe pureFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Purity",
|
|
new ItemStack(TBItems.nodeFoci, 1, 5),
|
|
0,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.LIFE, 64)
|
|
.add(Aspect.ORDER, 64),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigBlocks.blockCustomPlant, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 4),
|
|
new ItemStack(ConfigBlocks.blockMagicalLog, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 2),
|
|
new ItemStack(ConfigBlocks.blockMagicalLeaves, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 4),
|
|
new ItemStack(ConfigBlocks.blockMagicalLog, 1, 1),
|
|
new ItemStack(ConfigBlocks.blockCustomPlant, 1, 2) });
|
|
|
|
InfusionRecipe sinisterFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Sinister",
|
|
new ItemStack(TBItems.nodeFoci, 1, 6),
|
|
4,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.DARKNESS, 32)
|
|
.add(Aspect.UNDEAD, 64),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemWispEssence, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigItems.itemFocusPech, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6),
|
|
new ItemStack(ConfigItems.itemWispEssence, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigItems.itemFocusPech, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6) });
|
|
|
|
InfusionRecipe speedFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Speed",
|
|
new ItemStack(TBItems.nodeFoci, 1, 7),
|
|
1,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.MOTION, 32)
|
|
.add(Aspect.MAGIC, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0) });
|
|
|
|
InfusionRecipe stabilityFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Stability",
|
|
new ItemStack(TBItems.nodeFoci, 1, 8),
|
|
1,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.ORDER, 32)
|
|
.add(Aspect.EXCHANGE, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 10), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 10), new ItemStack(TBBlocks.dustBlock, 1, 0),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 6) });
|
|
|
|
InfusionRecipe taintFociRec = new InfusionRecipe(
|
|
"TB.NodeFoci.Taint",
|
|
new ItemStack(TBItems.nodeFoci, 1, 9),
|
|
5,
|
|
new AspectList().add(Aspect.AURA, 64)
|
|
.add(Aspect.TAINT, 64)
|
|
.add(Aspect.ENTROPY, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 11),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigItems.itemResource, 1, 12),
|
|
new ItemStack(TBItems.knoseFragment, 1, 7), new ItemStack(ConfigItems.itemResource, 1, 11),
|
|
new ItemStack(TBBlocks.crystalBlock, 1, 7), new ItemStack(ConfigItems.itemResource, 1, 12),
|
|
new ItemStack(TBItems.knoseFragment, 1, 7), });
|
|
|
|
ShapedArcaneRecipe nodeLinkRec = new ShapedArcaneRecipe(
|
|
"TB.NodeLinker",
|
|
new ItemStack(TBBlocks.nodeLinker, 1, 0),
|
|
primals(5),
|
|
new Object[] { "TPT", "ANA", "BOB", 'T', new ItemStack(ConfigBlocks.blockMetalDevice, 1, 14), 'P',
|
|
new ItemStack(ConfigItems.itemResource, 1, 15), 'A',
|
|
new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 6), 'B',
|
|
new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 7), 'O', Blocks.obsidian, 'N',
|
|
new ItemStack(ConfigItems.itemResource, 1, 0) });
|
|
|
|
new ResearchItem(
|
|
"TB.NodeMan",
|
|
catName,
|
|
new AspectList().add(Aspect.MECHANISM, 8)
|
|
.add(Aspect.AURA, 8)
|
|
.add(Aspect.ENERGY, 16)
|
|
.add(Aspect.MAGIC, 8),
|
|
0,
|
|
-8,
|
|
3,
|
|
new ItemStack(TBBlocks.nodeManipulator))
|
|
.setParents("TB.INFUSION", "TB.NODESTABILIZERADV", "TB.VISPOWER")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.nodeMan.page.0"),
|
|
new ResearchPage("tb.rec.nodeMan.page.1"),
|
|
new ResearchPage("tb.rec.nodeMan.page.2"),
|
|
new ResearchPage("tb.rec.nodeMan.page.3"),
|
|
new ResearchPage(nodeManipulatorRec))
|
|
.registerResearchItem();
|
|
|
|
if (flag) {
|
|
// copy(ResearchCategories.getResearchList("ELDRITCH").research.get("PRIMPEARL"),"TB.PRIMPEARL",catName,0,-13).setConcealed().setHidden().registerResearchItem();
|
|
|
|
new FakeResearchItem(
|
|
"TB.PRIMPEARL",
|
|
"THAUMICBASES",
|
|
"PRIMPEARL",
|
|
"ELDRITCH",
|
|
0,
|
|
-13,
|
|
ResearchCategories.getResearch("PRIMPEARL").icon_item).registerResearchItem();
|
|
}
|
|
|
|
String[] bParents = flag ? new String[] { "TB.NodeMan", "TB.PRIMPEARL" } : new String[] { "TB.NodeMan" };
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Bright",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.LIGHT, 8),
|
|
0,
|
|
-11,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 0)).setParents(bParents)
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.bright.page.0"), new ResearchPage(brightFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Destr",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.DEATH, 8)
|
|
.add(Aspect.VOID, 8),
|
|
2,
|
|
-10,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 1)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.destr.page.0"), new ResearchPage(destructionFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Efficiency",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.MAGIC, 8)
|
|
.add(Aspect.ENERGY, 8),
|
|
-4,
|
|
-8,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 2)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.efficiency.page.0"), new ResearchPage(efficiencyFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Hunger",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.HUNGER, 16)
|
|
.add(Aspect.ENERGY, 16),
|
|
4,
|
|
-9,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 3)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setSpecial()
|
|
.setPages(new ResearchPage("tb.rec.foci.hunger.page.0"), new ResearchPage(hungerFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Unstable",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.ENTROPY, 8)
|
|
.add(Aspect.VOID, 8),
|
|
-2,
|
|
-10,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 4)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.unstable.page.0"), new ResearchPage(unstableFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Purity",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.LIFE, 8)
|
|
.add(Aspect.ORDER, 8),
|
|
-1,
|
|
-11,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 5)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.pure.page.0"), new ResearchPage(pureFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Sinister",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.UNDEAD, 8)
|
|
.add(Aspect.ENTROPY, 8),
|
|
-3,
|
|
-10,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 6)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.sinister.page.0"), new ResearchPage(sinisterFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Speed",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.MOTION, 8)
|
|
.add(Aspect.ENERGY, 8),
|
|
-4,
|
|
-9,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 7)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.speed.page.0"), new ResearchPage(speedFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Stability",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.ORDER, 8)
|
|
.add(Aspect.EXCHANGE, 8),
|
|
1,
|
|
-11,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 8)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.stability.page.0"), new ResearchPage(stabilityFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeFoci.Taint",
|
|
catName,
|
|
new AspectList().add(Aspect.AURA, 8)
|
|
.add(Aspect.TAINT, 16)
|
|
.add(Aspect.ENERGY, 8),
|
|
3,
|
|
-10,
|
|
0,
|
|
new ItemStack(TBItems.nodeFoci, 1, 9)).setParents("TB.NodeMan")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.foci.taint.page.0"), new ResearchPage(taintFociRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.NodeLinker",
|
|
catName,
|
|
new AspectList().add(Aspect.MECHANISM, 8)
|
|
.add(Aspect.AURA, 8)
|
|
.add(Aspect.TRAVEL, 16)
|
|
.add(Aspect.MAGIC, 8),
|
|
5,
|
|
-6,
|
|
3,
|
|
new ItemStack(TBBlocks.nodeLinker)).setParents("TB.VISPOWER")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.nodeLink.page.0"),
|
|
new ResearchPage("tb.rec.nodeLink.page.1"),
|
|
new ResearchPage("tb.rec.nodeLink.page.2"),
|
|
new ResearchPage(nodeLinkRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(nodeManipulatorRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(brightFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(destructionFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(efficiencyFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(hungerFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(unstableFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(pureFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(sinisterFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(speedFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(stabilityFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(taintFociRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(nodeLinkRec);
|
|
}
|
|
|
|
// TODO revolver
|
|
if (TBConfig.enableRevolver) {
|
|
|
|
ThaumcraftApi.addWarpToResearch("TB.Revolver.Eldritch", 2);
|
|
ThaumcraftApi.addWarpToResearch("TB.Revolver.Primal", 4);
|
|
ThaumcraftApi.addWarpToResearch("TB.Revolver.Tainted", 3);
|
|
ThaumcraftApi.addWarpToResearch("TB.Revolver.Void", 2);
|
|
|
|
InfusionRecipe revolverRec = new InfusionRecipe(
|
|
"TB.Revolver",
|
|
new ItemStack(TBItems.revolver, 1, 0),
|
|
5,
|
|
new AspectList().add(Aspect.WEAPON, 256)
|
|
.add(Aspect.METAL, 32)
|
|
.add(Aspect.TREE, 16)
|
|
.add(Aspect.TOOL, 12)
|
|
.add(Aspect.ENERGY, 32)
|
|
.add(Aspect.MECHANISM, 12)
|
|
.add(Aspect.VOID, 16)
|
|
.add(Aspect.FIRE, 32),
|
|
new ItemStack(Blocks.iron_block),
|
|
new ItemStack[] { new ItemStack(Items.fire_charge, 1, 0), new ItemStack(Items.gunpowder, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15), new ItemStack(ConfigBlocks.blockMagicalLog, 1, 0),
|
|
new ItemStack(Items.gunpowder, 1, 0),
|
|
new ItemStack(ConfigItems.itemFocusFire, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Items.fire_charge, 1, 0), new ItemStack(Items.gunpowder, 1, 0),
|
|
new ItemStack(ConfigItems.itemBowBone, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(ConfigBlocks.blockMagicalLog, 1, 0), new ItemStack(Items.gunpowder, 1, 0),
|
|
new ItemStack(Blocks.redstone_torch, 1, 0) });
|
|
|
|
RevolverInfusionRecipe accuracyRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Accuracy",
|
|
RevolverUpgrade.accuracy,
|
|
1,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.SENSES, 8),
|
|
new ItemStack[] { new ItemStack(Blocks.glass_pane, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Items.carrot, 1, 0),
|
|
new ItemStack(Blocks.glass_pane, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(Blocks.glass_pane, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Blocks.glass_pane, 1, OreDictionary.WILDCARD_VALUE) });
|
|
|
|
RevolverInfusionRecipe atropodsRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Atropods",
|
|
RevolverUpgrade.atropodsBane,
|
|
1,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.BEAST, 8)
|
|
.add(Aspect.CLOTH, 8),
|
|
new ItemStack[] { new ItemStack(Items.spider_eye, 1, 0),
|
|
new ItemStack(Items.fermented_spider_eye, 1, 0), new ItemStack(Items.spider_eye, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe eldritchBRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.EldritchBane",
|
|
RevolverUpgrade.eldritchBane,
|
|
2,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.ELDRITCH, 8),
|
|
new ItemStack[] { new ItemStack(Items.ender_eye, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.ender_pearl, 1, 0) });
|
|
|
|
RevolverInfusionRecipe duelingRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Dueling",
|
|
RevolverUpgrade.dueling,
|
|
2,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.MAN, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.bed, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.ghast_tear, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe efficiencyRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Efficiency",
|
|
RevolverUpgrade.efficiency,
|
|
0,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.EXCHANGE, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.blaze_powder, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.enchanted_book, 1, 0), new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe eldritchRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Eldritch",
|
|
RevolverUpgrade.eldritch,
|
|
5,
|
|
new AspectList().add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.VOID, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemEldritchObject, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemEldritchObject, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe heavyRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Heavy",
|
|
RevolverUpgrade.heavy,
|
|
0,
|
|
new AspectList().add(Aspect.WEAPON, 8)
|
|
.add(Aspect.METAL, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.iron_sword, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe knowledgeRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Knowledge",
|
|
RevolverUpgrade.knowledge,
|
|
0,
|
|
new AspectList().add(Aspect.MIND, 8)
|
|
.add(Aspect.AURA, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemInkwell, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.book, 1, 0),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.paper, 1, 0) });
|
|
|
|
RevolverInfusionRecipe piercingRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Piercing",
|
|
RevolverUpgrade.piercig,
|
|
12,
|
|
new AspectList().add(Aspect.WEAPON, 32)
|
|
.add(Aspect.AIR, 64),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemPrimalArrow, 1, 0),
|
|
new ItemStack(ConfigItems.itemPrimalArrow, 1, 1), new ItemStack(ConfigItems.itemPrimalArrow, 1, 2),
|
|
new ItemStack(Items.diamond_sword, 1, OreDictionary.WILDCARD_VALUE),
|
|
new ItemStack(ConfigItems.itemPrimalArrow, 1, 3), new ItemStack(ConfigItems.itemPrimalArrow, 1, 4),
|
|
new ItemStack(ConfigItems.itemPrimalArrow, 1, 5) });
|
|
|
|
RevolverInfusionRecipe powerRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Power",
|
|
RevolverUpgrade.power,
|
|
2,
|
|
new AspectList().add(Aspect.WEAPON, 16),
|
|
new ItemStack[] { new ItemStack(Items.gunpowder), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.fire_charge), new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(Items.fireworks, 1, OreDictionary.WILDCARD_VALUE) });
|
|
|
|
RevolverInfusionRecipe primalRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Primal",
|
|
RevolverUpgrade.primal,
|
|
12,
|
|
new AspectList().add(Aspect.WEAPON, 64)
|
|
.add(primals(64))
|
|
.add(Aspect.MAGIC, 64),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemEldritchObject, 1, 3), new ItemStack(Items.diamond),
|
|
new ItemStack(ConfigItems.itemEldritchObject, 1, 3),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), });
|
|
|
|
ItemStack silver = OreDictionary.doesOreNameExist("ingotSilver")
|
|
&& OreDictionary.getOres("ingotSilver") != null
|
|
&& OreDictionary.getOres("ingotSilver")
|
|
.size() > 0 ? OreDictionary.getOres("ingotSilver")
|
|
.get(0) : new ItemStack(ConfigItems.itemResource, 1, 15);
|
|
|
|
RevolverInfusionRecipe silverRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Silver",
|
|
RevolverUpgrade.silver,
|
|
0,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.BEAST, 8)
|
|
.add(Aspect.UNDEAD, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14),
|
|
new ItemStack(ConfigItems.itemResource, 1, 3), silver,
|
|
new ItemStack(ConfigItems.itemResource, 1, 3), new ItemStack(ConfigItems.itemResource, 1, 14), });
|
|
|
|
RevolverInfusionRecipe speedRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Speed",
|
|
RevolverUpgrade.speed,
|
|
2,
|
|
new AspectList().add(Aspect.MOTION, 8)
|
|
.add(Aspect.AIR, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(Items.feather),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), });
|
|
|
|
RevolverInfusionRecipe taintedRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Tainted",
|
|
RevolverUpgrade.tainted,
|
|
4,
|
|
new AspectList().add(Aspect.TAINT, 8)
|
|
.add(Aspect.WEAPON, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 11),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14), new ItemStack(ConfigItems.itemResource, 1, 12),
|
|
new ItemStack(ConfigItems.itemResource, 1, 14) });
|
|
|
|
RevolverInfusionRecipe voidRec = new RevolverInfusionRecipe(
|
|
"TB.Revolver.Void",
|
|
RevolverUpgrade.uvoid,
|
|
4,
|
|
new AspectList().add(Aspect.VOID, 8)
|
|
.add(Aspect.TOOL, 8),
|
|
new ItemStack[] { new ItemStack(ConfigItems.itemResource, 1, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(ConfigItems.itemResource, 1, 16),
|
|
new ItemStack(ConfigItems.itemResource, 1, 16), new ItemStack(ConfigItems.itemResource, 1, 16) });
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 5)
|
|
.add(Aspect.FIRE, 5)
|
|
.add(Aspect.VOID, 4)
|
|
.add(Aspect.TOOL, 2)
|
|
.add(Aspect.ENERGY, 2),
|
|
-16,
|
|
-7,
|
|
4,
|
|
new ItemStack(TBItems.revolver, 1, 0)).setParentsHidden("TB.INFUSION")
|
|
.setConcealed()
|
|
.setPages(
|
|
new ResearchPage("tb.rec.revolver.page.0"),
|
|
new ResearchPage("tb.rec.revolver.page.1"),
|
|
new ResearchPage("tb.rec.revolver.page.2"),
|
|
new ResearchPage(revolverRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Accuracy",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.MECHANISM, 8)
|
|
.add(Aspect.SENSES, 4),
|
|
-19,
|
|
-7,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/ACCURACY.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.acc.page.0"), new ResearchPage(accuracyRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Atropods",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.BEAST, 8)
|
|
.add(Aspect.CLOTH, 4),
|
|
-14,
|
|
-10,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/BANE_OF_ATROPODS.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.atr.page.0"), new ResearchPage(atropodsRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.EldritchBane",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.ELDRITCH, 4),
|
|
-13,
|
|
-8,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/BANE_OF_ELDRITCH.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.elb.page.0"), new ResearchPage(eldritchBRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Dueling",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.MAN, 8),
|
|
-15,
|
|
-10,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/DUELING.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.duel.page.0"), new ResearchPage(duelingRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Efficiency",
|
|
catName,
|
|
new AspectList().add(Aspect.ORDER, 8)
|
|
.add(Aspect.EXCHANGE, 8),
|
|
-19,
|
|
-8,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/EFFICIENCY.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.eff.page.0"), new ResearchPage(efficiencyRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Eldritch",
|
|
catName,
|
|
new AspectList().add(Aspect.ELDRITCH, 8)
|
|
.add(Aspect.VOID, 8),
|
|
-13,
|
|
-7,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/ELDRITCH.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.eld.page.0"), new ResearchPage(eldritchRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Heavy",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 8)
|
|
.add(Aspect.METAL, 8),
|
|
-19,
|
|
-6,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/HEAVY.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.hev.page.0"), new ResearchPage(heavyRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Knowledge",
|
|
catName,
|
|
new AspectList().add(Aspect.MIND, 8)
|
|
.add(Aspect.MAGIC, 8),
|
|
-18,
|
|
-10,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/KNOWLEGDE.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.kno.page.0"), new ResearchPage(knowledgeRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Piercing",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 8)
|
|
.add(Aspect.AIR, 8),
|
|
-17,
|
|
-10,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/PIERCING.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.pir.page.0"), new ResearchPage(piercingRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Power",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 8)
|
|
.add(Aspect.MECHANISM, 8),
|
|
-16,
|
|
-10,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/POWER.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.pow.page.0"), new ResearchPage(powerRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Primal",
|
|
catName,
|
|
new AspectList().add(Aspect.WEAPON, 8)
|
|
.add(Aspect.AURA, 8)
|
|
.add(primals(16)),
|
|
-15,
|
|
-5,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/PRIMAL.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setSpecial()
|
|
.setPages(new ResearchPage("tb.rec.revolver.primal.page.0"), new ResearchPage(primalRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Silver",
|
|
catName,
|
|
new AspectList().add(Aspect.DEATH, 8)
|
|
.add(Aspect.UNDEAD, 8),
|
|
-13,
|
|
-9,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/SILVER.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.sil.page.0"), new ResearchPage(silverRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Speed",
|
|
catName,
|
|
new AspectList().add(Aspect.MOTION, 8)
|
|
.add(Aspect.AIR, 8),
|
|
-19,
|
|
-9,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/SPEED.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.spe.page.0"), new ResearchPage(speedRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Tainted",
|
|
catName,
|
|
new AspectList().add(Aspect.TAINT, 8)
|
|
.add(Aspect.MAGIC, 8),
|
|
-18,
|
|
-4,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/TAINTED.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.tai.page.0"), new ResearchPage(taintedRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.Revolver.Void",
|
|
catName,
|
|
new AspectList().add(Aspect.VOID, 8)
|
|
.add(Aspect.METAL, 8),
|
|
-19,
|
|
-5,
|
|
0,
|
|
new ResourceLocation("thaumicbases", "textures/thaumonomicon/revolver/VOID.png"))
|
|
.setParents("TB.Revolver")
|
|
.setConcealed()
|
|
.setSecondary()
|
|
.setPages(new ResearchPage("tb.rec.revolver.void.page.0"), new ResearchPage(voidRec))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(revolverRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(accuracyRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(atropodsRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(eldritchBRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(duelingRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(efficiencyRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(eldritchRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(heavyRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(knowledgeRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(piercingRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(powerRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(primalRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(silverRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(speedRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(taintedRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidRec);
|
|
}
|
|
|
|
// TODO void metal stuff
|
|
ShapedOreRecipe voidShearsRec = new ShapedOreRecipe(
|
|
new ItemStack(TBItems.voidShears),
|
|
new Object[] { " #", "# ", '#', new ItemStack(ConfigItems.itemResource, 1, 16) });
|
|
|
|
ShapedOreRecipe voidFlint = new ShapedOreRecipe(
|
|
new ItemStack(TBItems.voidFAS),
|
|
new Object[] { "# ", " C", '#', new ItemStack(ConfigItems.itemResource, 1, 16), 'C',
|
|
new ItemStack(Items.flint) });
|
|
|
|
ResearchItem voidIngot = ResearchCategories.getResearchList("ELDRITCH").research.get("VOIDMETAL");
|
|
|
|
ResearchPage[] currentPages = voidIngot.getPages();
|
|
ResearchPage[] newPages = new ResearchPage[currentPages.length + 4];
|
|
System.arraycopy(currentPages, 0, newPages, 0, currentPages.length);
|
|
newPages[newPages.length - 4] = new ResearchPage(voidFlint);
|
|
newPages[newPages.length - 3] = new ResearchPage(voidShearsRec);
|
|
newPages[newPages.length - 2] = new ResearchPage(voidBlockRec);
|
|
newPages[newPages.length - 1] = new ResearchPage(voidIngotRec);
|
|
voidIngot.setPages(newPages);
|
|
|
|
CraftingManager.getInstance()
|
|
.getRecipeList()
|
|
.add(voidShearsRec);
|
|
CraftingManager.getInstance()
|
|
.getRecipeList()
|
|
.add(voidFlint);
|
|
|
|
CraftingManager.getInstance()
|
|
.getRecipeList()
|
|
.add(voidBlockRec);
|
|
CraftingManager.getInstance()
|
|
.getRecipeList()
|
|
.add(voidIngotRec);
|
|
|
|
// TODO entity decon
|
|
|
|
InfusionRecipe entityDeconstructorRec = new InfusionRecipe(
|
|
"TB.EntityDec",
|
|
new ItemStack(TBBlocks.entityDeconstructor, 1, 0),
|
|
4,
|
|
new AspectList().add(Aspect.DEATH, 16)
|
|
.add(Aspect.SOUL, 4)
|
|
.add(Aspect.MIND, 16),
|
|
new ItemStack(ConfigItems.itemThaumometer),
|
|
new ItemStack[] { new ItemStack(Blocks.light_weighted_pressure_plate),
|
|
new ItemStack(Blocks.light_weighted_pressure_plate),
|
|
new ItemStack(Blocks.heavy_weighted_pressure_plate),
|
|
new ItemStack(Blocks.heavy_weighted_pressure_plate), new ItemStack(ConfigItems.itemResource, 1, 9),
|
|
new ItemStack(ConfigItems.itemResource, 1, 9), new ItemStack(ConfigItems.itemResource, 1, 15),
|
|
new ItemStack(ConfigItems.itemResource, 1, 15) });
|
|
|
|
new ResearchItem(
|
|
"TB.EntityDec",
|
|
catName,
|
|
new AspectList().add(Aspect.MIND, 8)
|
|
.add(Aspect.DEATH, 8)
|
|
.add(Aspect.SOUL, 8),
|
|
3,
|
|
-2,
|
|
1,
|
|
new ItemStack(TBBlocks.entityDeconstructor, 1, 0)).setParents("TB.INFUSION")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.eDec.page.0"), new ResearchPage(entityDeconstructorRec))
|
|
.registerResearchItem();
|
|
|
|
new ResearchItem(
|
|
"TB.EntityDecAdv",
|
|
catName,
|
|
new AspectList().add(Aspect.MIND, 8)
|
|
.add(Aspect.DEATH, 8),
|
|
5,
|
|
-3,
|
|
1,
|
|
new ItemStack(ConfigBlocks.blockCrystal, 1, OreDictionary.WILDCARD_VALUE)).setParents("TB.EntityDec")
|
|
.setSecondary()
|
|
.setConcealed()
|
|
.setPages(new ResearchPage("tb.rec.eDeca.page.0"), new ResearchPage("tb.rec.eDeca.page.1"))
|
|
.registerResearchItem();
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(entityDeconstructorRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(drainFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(expFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(fluxFociRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(activationFociRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(advFurnaceRecipe);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(cryingObsidianRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(overchanterRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(relocatorRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(irelocatorRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(thaumicAnvilRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(voidAnvilRec);
|
|
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(campfireRec);
|
|
ThaumcraftApi.getCraftingRecipes()
|
|
.add(brazierRec);
|
|
|
|
// TODO actual recipes
|
|
|
|
for (int i = 0; i < shards.length; ++i) ThaumcraftApi.getCraftingRecipes()
|
|
.add(shards[i]);
|
|
|
|
for (int i = 0; i < oldRec.length; ++i) ThaumcraftApi.getCraftingRecipes()
|
|
.add(oldRec[i]);
|
|
|
|
for (int i = 0; i < toolsRec.length; ++i) ThaumcraftApi.getCraftingRecipes()
|
|
.add(toolsRec[i]);
|
|
|
|
for (int i = 0; i < cBlocks.length; ++i) ThaumcraftApi.getCraftingRecipes()
|
|
.add(cBlocks[i]);
|
|
|
|
for (int i = 0; i < cTaintedBlocks.length; ++i) ThaumcraftApi.getCraftingRecipes()
|
|
.add(cTaintedBlocks[i]);
|
|
|
|
}
|
|
|
|
public static Aspect getPrimalForLoop(int loopInt) {
|
|
switch (loopInt) {
|
|
case 0:
|
|
return Aspect.AIR;
|
|
case 1:
|
|
return Aspect.FIRE;
|
|
case 2:
|
|
return Aspect.WATER;
|
|
case 3:
|
|
return Aspect.EARTH;
|
|
case 4:
|
|
return Aspect.ORDER;
|
|
case 5:
|
|
return Aspect.ENTROPY;
|
|
default:
|
|
return Aspect.AIR;
|
|
}
|
|
}
|
|
|
|
public static AspectList primals(int amount) {
|
|
return new AspectList().add(Aspect.AIR, amount)
|
|
.add(Aspect.WATER, amount)
|
|
.add(Aspect.EARTH, amount)
|
|
.add(Aspect.FIRE, amount)
|
|
.add(Aspect.ORDER, amount)
|
|
.add(Aspect.ENTROPY, amount);
|
|
}
|
|
|
|
/*
|
|
* public static ResearchItem copy(ResearchItem res, String newKey, String newCat, int dC, int dR) { ResearchItem
|
|
* rItem; if(res.icon_resource != null) rItem = new
|
|
* ResearchItem(newKey,newCat,res.tags,dC,dR,res.getComplexity(),res.icon_resource); else rItem = new
|
|
* ResearchItem(newKey,newCat,res.tags,dC,dR,res.getComplexity(),res.icon_item); rItem.parents = res.parents;
|
|
* rItem.parentsHidden = res.parentsHidden; rItem.siblings = res.siblings; rItem.setPages(res.getPages());
|
|
* rItem.setAspectTriggers(new Aspect[0]); rItem.setEntityTriggers(new String[0]); rItem.setItemTriggers(new
|
|
* ItemStack[0]); if(res.isAutoUnlock()) rItem.setAutoUnlock(); if(res.isConcealed()) rItem.setConcealed();
|
|
* if(res.isHidden()) rItem.setHidden(); if(res.isLost()) rItem.setLost(); if(res.isRound()) rItem.setRound();
|
|
* if(res.isSecondary()) rItem.setSecondary(); if(res.isSpecial()) rItem.setSpecial(); if(res.isStub())
|
|
* rItem.setStub(); if(res.siblings != null && res.siblings.length > 0) { String[] sibStr = new
|
|
* String[res.siblings.length+1]; for(int i = 0; i < res.siblings.length; ++i) sibStr[i] = res.siblings[i];
|
|
* sibStr[sibStr.length - 1] = newKey; res.setSiblings(sibStr); }else { res.setSiblings(newKey); } return rItem; }
|
|
*/
|
|
|
|
}
|