diff --git a/magicbees_res/assets/magicbees/lang/en_US.xml b/magicbees_res/assets/magicbees/lang/en_US.xml
index 1b45537..3e56714 100644
--- a/magicbees_res/assets/magicbees/lang/en_US.xml
+++ b/magicbees_res/assets/magicbees/lang/en_US.xml
@@ -293,6 +293,9 @@
"I could've sworn this was made out of stone yesterday!"|Sengir, Mad Apiarist
Crumbling
They have a corrosive effect on their surroundings, rapidly aging them.|Apinomicon
+
+ Invisible
+ Easy to miss, their glassy body is difficult to spot in the countryside.|Apinomicon
Aer
"They work so fast it's breathtaking."|Sengir, Mad Apiarist
@@ -379,6 +382,7 @@
Withering
Transmuting
Crumbling
+ Invisibility
Aura Attract
Purify Aura
Aura Flux
diff --git a/magicbees_res/build.xml b/magicbees_res/build.xml
index ed48646..8a61ad4 100644
--- a/magicbees_res/build.xml
+++ b/magicbees_res/build.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/magicbees_res/changelog.txt b/magicbees_res/changelog.txt
index c553eb4..c28e4a1 100644
--- a/magicbees_res/changelog.txt
+++ b/magicbees_res/changelog.txt
@@ -1,5 +1,10 @@
+2.1.6
+How about not crashing because I forgot a colour tuple? >.>
+Presenting a new bee species: You can't see it though, because it's invisible. >_>
+
2.1.5
Behold! The Mysterious Magnet! It attracts items to it, and thus, you, from great distances! (well, greater than your arms anyhow.)
+Updating TC4 API for when it releases.
2.1.4
Some cleanup of Helper code
diff --git a/magicbees_src/magicbees/bees/Allele.java b/magicbees_src/magicbees/bees/Allele.java
index 753830d..6c7add2 100644
--- a/magicbees_src/magicbees/bees/Allele.java
+++ b/magicbees_src/magicbees/bees/Allele.java
@@ -30,6 +30,7 @@ public class Allele implements IAllele
public static IAlleleEffect effectWithering;
public static IAlleleEffect effectTransmuting;
public static IAlleleEffect effectCrumbling;
+ public static IAlleleEffect effectInvisibility;
public static IAlleleEffect spawnBrainyZombie;
public static IAlleleEffect spawnWisp;
@@ -103,6 +104,8 @@ public class Allele implements IAllele
Allele.effectTransmuting = new AlleleEffectTransmuting("Transmuting", true);
Allele.effectCrumbling = new AlleleEffectCrumbling("Crumbling", true);
+
+ Allele.effectInvisibility = new AlleleEffectPotion("Invisibility", Potion.invisibility, 10, false);
Allele.spawnGhast = new AlleleEffectSpawnMob("Ghastly", false, "Ghast", "mob.ghast.moan")
.setThrottle(2060).setChanceToSpawn(10).setMaxMobsInSpawnZone(1);
diff --git a/magicbees_src/magicbees/bees/BeeGenomeManager.java b/magicbees_src/magicbees/bees/BeeGenomeManager.java
index bac4ac1..337d9cd 100644
--- a/magicbees_src/magicbees/bees/BeeGenomeManager.java
+++ b/magicbees_src/magicbees/bees/BeeGenomeManager.java
@@ -758,6 +758,16 @@ public class BeeGenomeManager
return genome;
}
+ public static IAllele[] getTemplateInvisible()
+ {
+ IAllele[] genome = getTemplateMutableBase();
+
+ genome[EnumBeeChromosome.SPECIES.ordinal()] = BeeSpecies.INVISIBLE;
+ genome[EnumBeeChromosome.EFFECT.ordinal()] = Allele.effectInvisibility;
+
+ return genome;
+ }
+
private static IAllele[] getTemplateTCBase()
{
IAllele[] genome = getTemplateModBase();
diff --git a/magicbees_src/magicbees/bees/BeeMutation.java b/magicbees_src/magicbees/bees/BeeMutation.java
index 7cb4533..573b700 100644
--- a/magicbees_src/magicbees/bees/BeeMutation.java
+++ b/magicbees_src/magicbees/bees/BeeMutation.java
@@ -117,6 +117,8 @@ public class BeeMutation implements IBeeMutation
new BeeMutation(BeeSpecies.UNUSUAL, BeeSpecies.MUTABLE, BeeSpecies.TRANSMUTING, 9);
new BeeMutation(BeeSpecies.UNUSUAL, BeeSpecies.MUTABLE, BeeSpecies.CRUMBLING, 9);
+ new BeeMutation(BeeSpecies.MYSTICAL, BeeSpecies.MUTABLE, BeeSpecies.INVISIBLE, 15);
+
if (BeeSpecies.COPPER.isActive())
{
new BeeMutation(Allele.getBaseSpecies("Industrious"), Allele.getBaseSpecies("Meadows"), BeeSpecies.COPPER, 12)
diff --git a/magicbees_src/magicbees/bees/BeeSpecies.java b/magicbees_src/magicbees/bees/BeeSpecies.java
index 54b477a..6a23923 100644
--- a/magicbees_src/magicbees/bees/BeeSpecies.java
+++ b/magicbees_src/magicbees/bees/BeeSpecies.java
@@ -166,6 +166,9 @@ public enum BeeSpecies implements IAlleleBeeSpecies, IIconProvider
BeeClassification.TRANSMUTING, 0xDBB24C, 0xA2D2D8, EnumTemperature.NORMAL, EnumHumidity.NORMAL, false, false),
CRUMBLING("Crumbling", "crumbling",
BeeClassification.TRANSMUTING, 0xDBB24C, 0xDBA4A4, EnumTemperature.HOT, EnumHumidity.ARID, false, false),
+
+ INVISIBLE("Invisible", "invisible",
+ BeeClassification.VEILED, 0xffccff, 0xffffff, EnumTemperature.NORMAL, EnumHumidity.NORMAL, false, false),
// --------- Thaumcraft Bees ---------------------------------------------------------------------------------------
TC_AIR("TCAir", "aether",
@@ -597,6 +600,9 @@ public enum BeeSpecies implements IAlleleBeeSpecies, IIconProvider
.setGenome(BeeGenomeManager.getTemplateCrumbling())
.register();
+ INVISIBLE.addProduct(Config.combs.getStackForType(CombType.MUNDANE), 35)
+ .setGenome(BeeGenomeManager.getTemplateInvisible())
+ .register();
TC_AIR.addProduct(Config.combs.getStackForType(CombType.AIRY), 20)
.setGenome(BeeGenomeManager.getTemplateTCAir())
diff --git a/magicbees_src/magicbees/block/BlockHive.java b/magicbees_src/magicbees/block/BlockHive.java
index e828ad4..1c42e7b 100644
--- a/magicbees_src/magicbees/block/BlockHive.java
+++ b/magicbees_src/magicbees/block/BlockHive.java
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List;
import magicbees.block.types.HiveType;
+import magicbees.main.MagicBees;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -57,7 +58,7 @@ public class BlockHive extends Block
{
for (HiveType type : HiveType.values())
{
- if (type.show)
+ if (type.show || MagicBees.getConfig().ForestryDebugEnabled)
{
itemsList.add(new ItemStack(this, 1, type.ordinal()));
}
diff --git a/magicbees_src/magicbees/item/ItemComb.java b/magicbees_src/magicbees/item/ItemComb.java
index 69377e4..1b45c47 100644
--- a/magicbees_src/magicbees/item/ItemComb.java
+++ b/magicbees_src/magicbees/item/ItemComb.java
@@ -8,6 +8,7 @@ import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
import magicbees.item.types.CombType;
import magicbees.main.CommonProxy;
+import magicbees.main.Config;
import magicbees.main.MagicBees;
import magicbees.main.utils.VersionInfo;
import magicbees.main.utils.compat.ForestryHelper;
@@ -44,7 +45,7 @@ public class ItemComb extends Item
{
for (CombType type : CombType.values())
{
- if (type.showInList)
+ if (type.showInList || MagicBees.getConfig().ForestryDebugEnabled)
{
list.add(this.getStackForType(type));
}
diff --git a/magicbees_src/magicbees/item/ItemMysteriousMagnet.java b/magicbees_src/magicbees/item/ItemMysteriousMagnet.java
index e82cd01..4825231 100644
--- a/magicbees_src/magicbees/item/ItemMysteriousMagnet.java
+++ b/magicbees_src/magicbees/item/ItemMysteriousMagnet.java
@@ -5,6 +5,7 @@ import java.util.List;
import magicbees.main.CommonProxy;
import magicbees.main.utils.LocalizationManager;
+import magicbees.main.utils.TabMagicBees;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
@@ -27,7 +28,8 @@ public class ItemMysteriousMagnet extends Item
private float rangeBase;
private float multiplier;
- private HashMap special = new HashMap();
+ private int maxLevel;
+ private final float fudgeFactor = 0.2f;
public ItemMysteriousMagnet(int par1)
{
@@ -36,10 +38,9 @@ public class ItemMysteriousMagnet extends Item
this.setHasSubtypes(true);
this.rangeBase = 3f;
this.multiplier = 0.75f;
- this.special.put(792499080, 6f);
- this.special.put(-1813233790, 0.4f);
- this.special.put(902599041, 5.5f);
+ this.maxLevel = 8;
this.setUnlocalizedName(CommonProxy.DOMAIN + ":mysteriousMagnet");
+ this.setCreativeTab(TabMagicBees.tabMagicBees);
}
public void setBaseRange(float value)
@@ -51,6 +52,16 @@ public class ItemMysteriousMagnet extends Item
{
this.multiplier = value;
}
+
+ public void setMaximumLevel(int value)
+ {
+ this.maxLevel = value;
+ }
+
+ public int getMaximumLevel()
+ {
+ return this.maxLevel;
+ }
@Override
@SideOnly(Side.CLIENT)
@@ -69,9 +80,12 @@ public class ItemMysteriousMagnet extends Item
@Override
@SideOnly(Side.CLIENT)
- public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List list)
+ public void getSubItems(int id, CreativeTabs tabs, List list)
{
- super.getSubItems(par1, par2CreativeTabs, list);
+ for (int i = 0; i <= this.maxLevel; i++)
+ {
+ list.add(new ItemStack(this, 1, i * 2));
+ }
}
@Override
@@ -89,6 +103,13 @@ public class ItemMysteriousMagnet extends Item
return isMagnetActive(damage) ? this.activeIcon : this.itemIcon;
}
+ @Override
+ @SideOnly(Side.CLIENT)
+ public boolean hasEffect(ItemStack itemStack, int pass)
+ {
+ return isMagnetActive(itemStack);
+ }
+
@Override
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player)
{
@@ -106,8 +127,29 @@ public class ItemMysteriousMagnet extends Item
{
EntityPlayer player = (EntityPlayer)entity;
int dragCount = player.username.hashCode();
- float radius = getRadius(itemStack.getItemDamage());
+ float radius = getRadius(itemStack.getItemDamage()) - fudgeFactor;
AxisAlignedBB bounds = player.boundingBox.expand(radius, radius, radius);
+
+ if (FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER)
+ {
+ bounds.expand(fudgeFactor, fudgeFactor, fudgeFactor);
+
+ if ((itemStack.getItemDamage() >> 1) >= 7)
+ {
+ List arrows = world.getEntitiesWithinAABB(EntityArrow.class, bounds);
+
+ for (EntityArrow arrow : arrows)
+ {
+ if (arrow.canBePickedUp == 1 && world.rand.nextInt(6) == 0)
+ {
+ EntityItem replacement = new EntityItem(world, arrow.posX, arrow.posY, arrow.posZ, new ItemStack(Item.arrow));
+ world.spawnEntityInWorld(replacement);
+ }
+ world.removeEntity(arrow);
+ }
+ }
+ }
+
List list = world.getEntitiesWithinAABB(EntityItem.class, bounds);
for (EntityItem e : list)
@@ -136,29 +178,10 @@ public class ItemMysteriousMagnet extends Item
if (world.rand.nextInt(20) == 0)
{
- float pitch = 0.9f - world.rand.nextFloat() / 10f;
+ float pitch = 0.85f - world.rand.nextFloat() * 3f / 10f;
world.playSoundEffect(e.posX, e.posY, e.posZ, "mob.endermen.portal", 0.6f, pitch);
}
}
- if (this.special.containsKey(dragCount) && world.rand.nextInt(15) == 0)
- {
- world.playSoundEffect(entity.posX, entity.posY, entity.posZ, "mob.endermen.portal", 1.5f, this.special.get(dragCount));
- }
- }
-
- if ((itemStack.getItemDamage() >> 1) >= 7 && FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER)
- {
- List arrows = world.getEntitiesWithinAABB(EntityArrow.class, bounds);
-
- for (EntityArrow arrow : arrows)
- {
- if (world.rand.nextInt(10) == 0)
- {
- EntityItem replacement = new EntityItem(world, arrow.posX, arrow.posY, arrow.posZ, new ItemStack(Item.arrow));
- world.spawnEntityInWorld(replacement);
- }
- world.removeEntity(arrow);
- }
}
}
}
diff --git a/magicbees_src/magicbees/item/types/CombType.java b/magicbees_src/magicbees/item/types/CombType.java
index 13f96ac..a72aa77 100644
--- a/magicbees_src/magicbees/item/types/CombType.java
+++ b/magicbees_src/magicbees/item/types/CombType.java
@@ -10,9 +10,10 @@ public enum CombType
OCCULT("occult", true),
OTHERWORLDLY("otherworldly", true),
TRANSMUTED("transmuted", true),
+
PAPERY("paper", true),
SOUL("soul", true),
- FURTIVE("furtive", true),
+ FURTIVE("furtive", false),
INTELLECT("aware", false),
TEMPORAL("time", false),
FORGOTTEN("forgotten", false),
@@ -22,12 +23,12 @@ public enum CombType
WATERY("water", false),
EARTHY("earth", false),
- TC_AIR("TCair", true),
- TC_FIRE("TCfire", true),
- TC_WATER("TCwater", true),
- TC_EARTH("TCearth", true),
- TC_ORDER("TCorder", true),
- TC_CHAOS("TCchaos", true),
+ TC_AIR("TCair", false),
+ TC_FIRE("TCfire", false),
+ TC_WATER("TCwater", false),
+ TC_EARTH("TCearth", false),
+ TC_ORDER("TCorder", false),
+ TC_CHAOS("TCchaos", false),
AM_ESSENCE("essence", false),
AM_POTENT("potent", false),
@@ -42,9 +43,10 @@ public enum CombType
{0xBCA664, 0x35332E},
{0x7F7171, 0x876D53},
- {0xcda6cd, 0x545454},
+ {0xB7ACB7, 0x636363},
{0x0092e9, 0x618fff},
{0x2F9381, 0x773C31},
+ {0xB191D8, 0x35443B},
{0xffff7e, 0x606308},
{0xff3C01, 0x5B0D10},
diff --git a/magicbees_src/magicbees/main/Config.java b/magicbees_src/magicbees/main/Config.java
index 1ab5b70..4a70073 100644
--- a/magicbees_src/magicbees/main/Config.java
+++ b/magicbees_src/magicbees/main/Config.java
@@ -70,7 +70,9 @@ public class Config
public float MagnetBaseRange;
public float MagnetLevelMultiplier;
+ public int MagnetMaxLevel;
+ public boolean ForestryDebugEnabled;
public static BlockPlanks planksWood;
public static BlockWoodSlab slabWoodHalf;
@@ -162,6 +164,8 @@ public class Config
this.configuration = new Configuration(configFile);
this.configuration.load();
this.doMiscConfig();
+
+ this.ForestryDebugEnabled = (new File("./config/forestry/DEBUG.ON")).exists();
}
public void saveConfigs()
@@ -330,6 +334,7 @@ public class Config
magnet = new ItemMysteriousMagnet(configuration.getItem("magicMagnet", itemIDBase++).getInt() - 256);
magnet.setBaseRange(3f); // magnet.setBaseRange(MagnetBaseRange);
magnet.setLevelMultiplier(0.75f); // magnet.setLevelMultiplier(MagnetLevelMultiplier);
+ magnet.setMaximumLevel(8); // magnet.setMaxiumumLevel(MagnetMaxLevel);
for (int level = 0; level <= 8; level++)
{
@@ -423,7 +428,11 @@ public class Config
p = configuration.get("general", "magnetRangeMultiplier", 0.75);
p.comment = "Range multiplier per level of the Mysterious Magnet. Total range = base range + level * multiplier";
- this.MagnetLevelMultiplier = (float)p.getDouble(0.75);*/
+ this.MagnetLevelMultiplier = (float)p.getDouble(0.75);
+
+ p = configuration.get("general", "magnetMaximumLevel", 8);
+ p.comment = "Maximum level of the magnets.";
+ this.MagnetMaxLevel = p.getInt();*/
}
}
diff --git a/magicbees_src/magicbees/main/utils/CraftingManager.java b/magicbees_src/magicbees/main/utils/CraftingManager.java
index 6739b2d..d637c42 100644
--- a/magicbees_src/magicbees/main/utils/CraftingManager.java
+++ b/magicbees_src/magicbees/main/utils/CraftingManager.java
@@ -333,10 +333,10 @@ public class CraftingManager
output = new ItemStack(Config.magnet);
GameRegistry.addRecipe(output, new Object[] {
- " i ", "cSc", " B ",
+ " i ", "cSc", " d ",
'i', Item.ingotIron,
'c', Item.compass,
- 'B', Block.blockDiamond,
+ 'd', Item.diamond,
'S', Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY)
});
@@ -344,9 +344,10 @@ public class CraftingManager
{
output = new ItemStack(Config.magnet, 1, level * 2);
GameRegistry.addRecipe(new ShapedOreRecipe(output, new Object[] {
- " m ", "mSm", " B ",
+ " d ", "mSm", " B ",
+ 'd', Item.diamond,
'm', "mb.magnet.level" + (level - 1),
- 'B', Item.diamond,
+ 'B', Block.blockRedstone,
'S', Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY)
}));
}
diff --git a/magicbees_src/magicbees/main/utils/compat/ThaumcraftHelper.java b/magicbees_src/magicbees/main/utils/compat/ThaumcraftHelper.java
index 09a81d9..c1d0732 100644
--- a/magicbees_src/magicbees/main/utils/compat/ThaumcraftHelper.java
+++ b/magicbees_src/magicbees/main/utils/compat/ThaumcraftHelper.java
@@ -19,8 +19,9 @@ import net.minecraft.util.ResourceLocation;
import thaumcraft.api.ThaumcraftApi;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
+import thaumcraft.api.crafting.CrucibleRecipe;
import thaumcraft.api.crafting.IArcaneRecipe;
-import thaumcraft.api.crafting.RecipeCrucible;
+import thaumcraft.api.crafting.InfusionRecipe;
import thaumcraft.api.research.ResearchCategories;
import thaumcraft.api.research.ResearchItem;
import thaumcraft.api.research.ResearchPage;
@@ -155,6 +156,9 @@ public class ThaumcraftHelper
getBlocks();
getItems();
+ aspectTime = new Aspect("tempus", 0xB68CFF, new Aspect[] { Aspect.VOID, Aspect.ORDER },
+ new ResourceLocation(CommonProxy.DOMAIN, CommonProxy.TEXTURE + "aspects/tempus.png"), 1);
+
//addItemsToBackpack();
setupItemAspects();
setupCrafting();
@@ -162,6 +166,8 @@ public class ThaumcraftHelper
}
}
+ private static Object aspectTime;
+
private static void getBlocks()
{
Config.tcPlant = GameRegistry.findBlock(Name, "blockCustomPlant");
@@ -301,8 +307,17 @@ public class ThaumcraftHelper
essenceTime = ThaumcraftApi.addCrucibleRecipe("MB_EssenceTime", Config.miscResources.getStackForType(ResourceType.ESSENCE_LOST_TIME),
new ItemStack(Item.pocketSundial), new AspectList().add(Aspect.ORDER, 10).add(Aspect.VOID, 10).add(Aspect.TRAP, 4));
- singularity = ThaumcraftApi.addCrucibleRecipe("MB_DimensionalSingularity", Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY, 3),
- new ItemStack(Block.blockDiamond), new AspectList().add(Aspect.ELDRITCH, 10).add(Aspect.EXCHANGE, 20));
+ input = new ItemStack(Item.enderPearl);
+ singularityA = ThaumcraftApi.addInfusionCraftingRecipe("MB_DimensionalSingularity", Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY, 3),
+ 5, new AspectList().add(Aspect.ELDRITCH, 10).add(Aspect.EXCHANGE, 20),
+ new ItemStack(Block.blockDiamond),
+ new ItemStack[] { input, input});
+
+ ItemStack in2 = new ItemStack(Item.diamond);
+ singularityB = ThaumcraftApi.addInfusionCraftingRecipe("MB_DimensionalSingularity", Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY, 3),
+ 6, new AspectList().add(Aspect.ELDRITCH, 10).add(Aspect.EXCHANGE, 20).add(Aspect.VOID, 15),
+ Config.propolis.getStackForType(PropolisType.UNSTABLE),
+ new ItemStack[] { input, input, in2, in2 });
essenceOblivion = ThaumcraftApi.addShapelessArcaneCraftingRecipe("MB_EssenceOblivion", Config.miscResources.getStackForType(ResourceType.ESSENCE_SCORNFUL_OBLIVION),
new AspectList().add(Aspect.ENTROPY, 25).add(Aspect.AIR, 40).add(Aspect.ORDER, 15), new Object[] {
@@ -315,7 +330,8 @@ public class ThaumcraftHelper
private static Object frameOblivion;
private static Object thaumScoop;
private static Object thaumGrafter;
- private static Object singularity;
+ private static Object singularityA;
+ private static Object singularityB;
private static Object essenceLife;
private static Object essenceDeath;
private static Object essenceArmor;
@@ -385,7 +401,7 @@ public class ThaumcraftHelper
ResearchItem essenceFalseLifeR = new ResearchItem("MB_EssenceLife", category, new AspectList().add(Aspect.LIFE, 2).add(Aspect.MAGIC, 1),
2, -1, 2,
Config.miscResources.getStackForType(ResourceType.ESSENCE_FALSE_LIFE))
- .setPages(getResearchPage("MB_EssenceLife.1"), new ResearchPage((RecipeCrucible)essenceLife), new ResearchPage(recipe) )
+ .setPages(getResearchPage("MB_EssenceLife.1"), new ResearchPage((CrucibleRecipe)essenceLife), new ResearchPage(recipe) )
.setParentsHidden("CRUCIBLE")
.registerResearchItem();
@@ -397,7 +413,7 @@ public class ThaumcraftHelper
ResearchItem essenceDurabilityR = new ResearchItem("MB_EssenceArmor", category, new AspectList().add(Aspect.ARMOR, 1),
5, 0, 3,
Config.miscResources.getStackForType(ResourceType.ESSENCE_EVERLASTING_DURABILITY))
- .setPages(getResearchPage("MB_EssenceArmor.1"), new ResearchPage((RecipeCrucible)essenceArmor), new ResearchPage(recipe) )
+ .setPages(getResearchPage("MB_EssenceArmor.1"), new ResearchPage((CrucibleRecipe)essenceArmor), new ResearchPage(recipe) )
.setParents("MB_EssenceLife")
.registerResearchItem();
@@ -409,8 +425,8 @@ public class ThaumcraftHelper
ResearchItem essenceUnstableR = new ResearchItem("MB_EssenceUnstable", category, new AspectList().add(Aspect.ENTROPY, 2).add(Aspect.ORDER, 1),
3, 1, 4,
Config.miscResources.getStackForType(ResourceType.ESSENCE_FICKLE_PERMANENCE))
- .setPages(getResearchPage("MB_EssenceUnstable.1"), new ResearchPage((RecipeCrucible)essenceUnstableA),
- new ResearchPage((RecipeCrucible)essenceUnstableB), new ResearchPage(recipe) )
+ .setPages(getResearchPage("MB_EssenceUnstable.1"), new ResearchPage((CrucibleRecipe)essenceUnstableA),
+ new ResearchPage((CrucibleRecipe)essenceUnstableB), new ResearchPage(recipe) )
.setParents("MB_EssenceLife")
.setConcealed()
.registerResearchItem();
@@ -423,7 +439,7 @@ public class ThaumcraftHelper
ResearchItem essenceShallowGraveR = new ResearchItem("MB_EssenceDeath", category, new AspectList().add(Aspect.DEATH, 2).add(Aspect.MAGIC, 1),
2, 3, 2,
Config.miscResources.getStackForType(ResourceType.ESSENCE_SHALLOW_GRAVE))
- .setPages(getResearchPage("MB_EssenceDeath.1"), new ResearchPage((RecipeCrucible)essenceDeath), new ResearchPage(recipe) )
+ .setPages(getResearchPage("MB_EssenceDeath.1"), new ResearchPage((CrucibleRecipe)essenceDeath), new ResearchPage(recipe) )
.setParents("MB_EssenceUnstable")
.setConcealed()
.registerResearchItem();
@@ -433,18 +449,18 @@ public class ThaumcraftHelper
list.add(input);
recipe = new ShapelessRecipes(new ItemStack(Config.hiveFrameTemporal), list);
- ResearchItem essenceTimeR = new ResearchItem("MB_EssenceTime", category, new AspectList().add(Aspect.TRAP, 2).add(Aspect.VOID, 1),
+ ResearchItem essenceTimeR = new ResearchItem("MB_EssenceTime", category, new AspectList().add((Aspect)aspectTime, 2),
0, 2, 5,
Config.miscResources.getStackForType(ResourceType.ESSENCE_LOST_TIME))
- .setPages(getResearchPage("MB_EssenceTime.1"), new ResearchPage((RecipeCrucible)essenceTime), new ResearchPage(recipe) )
+ .setPages(getResearchPage("MB_EssenceTime.1"), new ResearchPage((CrucibleRecipe)essenceTime), new ResearchPage(recipe) )
.setParents("MB_EssenceUnstable")
.setConcealed()
.registerResearchItem();
- ResearchItem singularityR = new ResearchItem("MB_DimensionalSingularity", category, new AspectList().add(Aspect.ELDRITCH, 2).add(Aspect.VOID, 1),
+ ResearchItem singularityR = new ResearchItem("MB_DimensionalSingularity", category, new AspectList().add(Aspect.ELDRITCH, 2).add((Aspect)aspectTime, 1).add(Aspect.VOID, 1),
-1, 4, 5,
Config.miscResources.getStackForType(ResourceType.DIMENSIONAL_SINGULARITY))
- .setPages(getResearchPage("MB_DimensionalSingularity.1"), new ResearchPage((RecipeCrucible)singularity) )
+ .setPages(getResearchPage("MB_DimensionalSingularity.1"), new ResearchPage((InfusionRecipe)singularityA) , new ResearchPage((InfusionRecipe)singularityB))
.setParents("MB_FrameMagic", "MB_EssenceTime", "MB_EssenceDeath")
.setConcealed()
.setSpecial()
@@ -455,7 +471,7 @@ public class ThaumcraftHelper
list.add(forestry.api.core.ItemInterface.getItem("frameProven"));
recipe = new ShapelessRecipes(new ItemStack(Config.hiveFrameOblivion), list);
- ResearchItem essenceOblivionR = new ResearchItem("MB_EssenceOblivion", category, new AspectList().add(Aspect.VOID, 2).add(Aspect.HUNGER, 1),
+ ResearchItem essenceOblivionR = new ResearchItem("MB_EssenceOblivion", category, new AspectList().add(Aspect.VOID, 2).add(Aspect.HUNGER, 1).add((Aspect)aspectTime, 1),
-3, 3, 5,
Config.miscResources.getStackForType(ResourceType.ESSENCE_SCORNFUL_OBLIVION))
.setPages(getResearchPage("MB_EssenceOblivion.1"), new ResearchPage((IArcaneRecipe)essenceOblivion), new ResearchPage(recipe) )
@@ -479,6 +495,9 @@ public class ThaumcraftHelper
ItemStack item;
AspectList list;
+ ThaumcraftApi.registerObjectTag(Item.pocketSundial.itemID, 0, new AspectList(Item.pocketSundial.itemID, 0).add((Aspect)aspectTime, 4));
+ ThaumcraftApi.registerObjectTag(Item.redstoneRepeater.itemID, 0, new AspectList(Item.redstoneRepeater.itemID, 0).add((Aspect)aspectTime, 2));
+
list = new AspectList(Block.wood.blockID, 0);
for (int i = 1; i <= 8; i++)
{
@@ -582,16 +601,16 @@ public class ThaumcraftHelper
list = new AspectList().add(Aspect.PLANT, 2);
item = forestry.api.core.ItemInterface.getItem("pollen");
ThaumcraftApi.registerObjectTag(item.itemID, ForestryHelper.Pollen.NORMAL.ordinal(), list);
- ThaumcraftApi.registerObjectTag(item.itemID, ForestryHelper.Pollen.CRYSTALLINE.ordinal(), list.copy().add(Aspect.ICE, 1));
- ThaumcraftApi.registerObjectTag(Config.pollen.itemID, PollenType.UNUSUAL.ordinal(), list.copy().add(Aspect.MAGIC, 1));
- ThaumcraftApi.registerObjectTag(Config.pollen.itemID, PollenType.PHASED.ordinal(), list.copy().add(Aspect.ELDRITCH, 1));
+ ThaumcraftApi.registerObjectTag(item.itemID, ForestryHelper.Pollen.CRYSTALLINE.ordinal(), list.copy().add(Aspect.ICE, 2));
+ ThaumcraftApi.registerObjectTag(Config.pollen.itemID, PollenType.UNUSUAL.ordinal(), list.copy().add(Aspect.MAGIC, 2));
+ ThaumcraftApi.registerObjectTag(Config.pollen.itemID, PollenType.PHASED.ordinal(), list.copy().add((Aspect)aspectTime, 2));
list = new AspectList().add(Aspect.ORDER, 1);
item = forestry.api.core.ItemInterface.getItem("beeswax");
- ThaumcraftApi.registerObjectTag(item.itemID, item.getItemDamage(), list);
- ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.MAGIC.ordinal(), list.copy().add(Aspect.MAGIC, 1));
- ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.SOUL.ordinal(), list.copy().add(Aspect.SOUL, 1));
- ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.AMNESIC.ordinal(), list.copy().add(Aspect.MIND, 1));
+ ThaumcraftApi.registerObjectTag(item.itemID, item.getItemDamage(), list.copy().add(Aspect.ORDER, 2));
+ ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.MAGIC.ordinal(), list.copy().add(Aspect.MAGIC, 2));
+ ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.SOUL.ordinal(), list.copy().add(Aspect.SOUL, 2));
+ ThaumcraftApi.registerObjectTag(Config.wax.itemID, WaxType.AMNESIC.ordinal(), list.copy().add(Aspect.MIND, 2));
list = new AspectList().add(Aspect.EXCHANGE, 2).add(Aspect.LIFE, 2);
item = forestry.api.core.ItemInterface.getItem("honeyDrop");
@@ -619,6 +638,6 @@ public class ThaumcraftHelper
ThaumcraftApi.registerObjectTag(item.itemID, item.getItemDamage(), new AspectList().add(Aspect.ARMOR, 6));
item = Config.miscResources.getStackForType(ResourceType.ESSENCE_LOST_TIME);
- ThaumcraftApi.registerObjectTag(item.itemID, item.getItemDamage(), new AspectList().add(Aspect.VOID, 6));
+ ThaumcraftApi.registerObjectTag(item.itemID, item.getItemDamage(), new AspectList().add(Aspect.VOID, 6).add((Aspect)aspectTime, 8 ));
}
}