diff --git a/MODSRC/vazkii/botania/client/render/tile/RenderTilePool.java b/MODSRC/vazkii/botania/client/render/tile/RenderTilePool.java
index 9e2b04b4c..967a65d81 100644
--- a/MODSRC/vazkii/botania/client/render/tile/RenderTilePool.java
+++ b/MODSRC/vazkii/botania/client/render/tile/RenderTilePool.java
@@ -16,6 +16,7 @@ import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
+import net.minecraft.entity.passive.EntitySheep;
import net.minecraft.init.Blocks;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
@@ -53,7 +54,11 @@ public class RenderTilePool extends TileEntitySpecialRenderer {
GL11.glTranslatef(0.5F, 1.5F, 0.5F);
GL11.glScalef(1F, -1F, -1F);
+ int color = pool.color;
+ float[] acolor = EntitySheep.fleeceColorTable[color];
+ GL11.glColor3f(acolor[0], acolor[1], acolor[2]);
model.render();
+ GL11.glColor3f(1F, 1F, 1F);
GL11.glScalef(1F, -1F, -1F);
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
diff --git a/MODSRC/vazkii/botania/common/block/BlockAltar.java b/MODSRC/vazkii/botania/common/block/BlockAltar.java
index e317a581e..c0441a7d5 100644
--- a/MODSRC/vazkii/botania/common/block/BlockAltar.java
+++ b/MODSRC/vazkii/botania/common/block/BlockAltar.java
@@ -59,8 +59,7 @@ public class BlockAltar extends BlockModContainer implements ILexiconable {
public void onEntityCollidedWithBlock(World par1World, int par2, int par3, int par4, Entity par5Entity) {
if(par5Entity instanceof EntityItem) {
TileAltar tile = (TileAltar) par1World.getTileEntity(par2, par3, par4);
- if(tile.collideEntityItem((EntityItem) par5Entity))
- par1World.markBlockForUpdate(par2, par3, par4);
+ tile.collideEntityItem((EntityItem) par5Entity);
}
}
diff --git a/MODSRC/vazkii/botania/common/block/tile/mana/TilePool.java b/MODSRC/vazkii/botania/common/block/tile/mana/TilePool.java
index 192da0329..892e3c5c0 100644
--- a/MODSRC/vazkii/botania/common/block/tile/mana/TilePool.java
+++ b/MODSRC/vazkii/botania/common/block/tile/mana/TilePool.java
@@ -38,6 +38,7 @@ import vazkii.botania.client.lib.LibResources;
import vazkii.botania.common.Botania;
import vazkii.botania.common.block.ModBlocks;
import vazkii.botania.common.block.tile.TileMod;
+import vazkii.botania.common.item.ModItems;
public class TilePool extends TileMod implements IManaPool {
@@ -46,10 +47,12 @@ public class TilePool extends TileMod implements IManaPool {
private static final String TAG_MANA = "mana";
private static final String TAG_KNOWN_MANA = "knownMana";
private static final String TAG_OUTPUTTING = "outputting";
+ private static final String TAG_COLOR = "color";
boolean outputting = false;
public boolean alchemy = false;
+ public int color = 0;
int mana;
int knownMana = -1;
int craftCooldown = 20;
@@ -90,6 +93,17 @@ public class TilePool extends TileMod implements IManaPool {
ItemStack stack = item.getEntityItem();
if(stack == null)
return false;
+
+ if(stack.getItem() == ModItems.dye && !worldObj.isRemote) {
+ int meta = stack.getItemDamage();
+ if(meta != color) {
+ color = meta;
+ stack.stackSize--;
+ if(stack.stackSize == 0)
+ item.setDead();
+ worldObj.markBlockForUpdate(xCoord, yCoord, zCoord);
+ }
+ }
for(RecipeManaInfusion recipe : BotaniaAPI.manaInfusionRecipes) {
if(recipe.matches(stack) && (!recipe.isAlchemy() || alchemy)) {
@@ -195,12 +209,14 @@ public class TilePool extends TileMod implements IManaPool {
public void writeCustomNBT(NBTTagCompound cmp) {
cmp.setInteger(TAG_MANA, mana);
cmp.setBoolean(TAG_OUTPUTTING, outputting);
+ cmp.setInteger(TAG_COLOR, color);
}
@Override
public void readCustomNBT(NBTTagCompound cmp) {
mana = cmp.getInteger(TAG_MANA);
outputting = cmp.getBoolean(TAG_OUTPUTTING);
+ color = cmp.getInteger(TAG_COLOR);
if(cmp.hasKey(TAG_KNOWN_MANA))
knownMana = cmp.getInteger(TAG_KNOWN_MANA);
diff --git a/MODSRC/vazkii/botania/common/lexicon/LexiconData.java b/MODSRC/vazkii/botania/common/lexicon/LexiconData.java
index c3fd7ec24..8099239ba 100644
--- a/MODSRC/vazkii/botania/common/lexicon/LexiconData.java
+++ b/MODSRC/vazkii/botania/common/lexicon/LexiconData.java
@@ -194,7 +194,7 @@ public final class LexiconData {
spreader.setPriority().setLexiconPages(new PageText("0"), new PageImage("1", LibResources.ENTRY_SPREADER), new PageText("2"), new PageText("3"), new PageText("4"), new PageCraftingRecipe("5", ModCrafingRecipes.recipesSpreader), new PageText("6"), new PageCraftingRecipe("7", ModCrafingRecipes.recipeManaLens), new PageCraftingRecipe("8", ModCrafingRecipes.recipesLensDying), new PageCraftingRecipe("9", ModCrafingRecipes.recipeRainbowLens));
pool = new BLexiconEntry(LibLexicon.MANA_POOL, categoryMana);
- pool.setPriority().setLexiconPages(new PageText("0"), new PageCraftingRecipe("1", ModCrafingRecipes.recipePool), new PageText("2"), new PageManaInfusionRecipe("3", ModManaInfusionRecipes.manasteelRecipes), new PageManaInfusionRecipe("4", ModManaInfusionRecipes.manaPearlRecipe), new PageManaInfusionRecipe("5", ModManaInfusionRecipes.manaDiamondRecipe), new PageManaInfusionRecipe("6", ModManaInfusionRecipes.manaPetalRecipes), new PageManaInfusionRecipe("7", ModManaInfusionRecipes.manaCookieRecipe));
+ pool.setPriority().setLexiconPages(new PageText("0"), new PageCraftingRecipe("1", ModCrafingRecipes.recipePool), new PageText("2"), new PageText("8"), new PageManaInfusionRecipe("3", ModManaInfusionRecipes.manasteelRecipes), new PageManaInfusionRecipe("4", ModManaInfusionRecipes.manaPearlRecipe), new PageManaInfusionRecipe("5", ModManaInfusionRecipes.manaDiamondRecipe), new PageManaInfusionRecipe("6", ModManaInfusionRecipes.manaPetalRecipes), new PageManaInfusionRecipe("7", ModManaInfusionRecipes.manaCookieRecipe));
distributor = new BLexiconEntry(LibLexicon.MANA_DISTRIBUTOR, categoryMana);
distributor.setLexiconPages(new PageText("0"), new PageCraftingRecipe("1", ModCrafingRecipes.recipeDistributor));
diff --git a/resources/assets/botania/lang/en_US.lang b/resources/assets/botania/lang/en_US.lang
index 8c2c6a045..1fd5df8a8 100644
--- a/resources/assets/botania/lang/en_US.lang
+++ b/resources/assets/botania/lang/en_US.lang
@@ -544,6 +544,7 @@ botania.entry.pool=Mana Pool
botania.page.pool0=The &1Mana Pool&0 is, simply put, a storage of &4Mana&0.
Mana can be inserted into it by usage of a &1Mana Spreader&0, and any adjacent &1Mana Spreaders&0 will pull mana from it to increase their internal buffer automatically.
Any &4Functional Flowers&0 require a nearby &1Mana Pool&0 to draw power from.
botania.page.pool1=Making the &1Mana Pool&0.
botania.page.pool2=Tossing in some resources into the Mana Pool will cause them to get infused with &4Mana&0, turning them into more powerful forms.
A few examples are &1Iron Ingots&0 or &1Mystical Petals&0.
&4Mana&0 reading for this block functions like the &1Mana Spreader&0. A &1Redstone Comparator&0 can also output a signal based on the contents.
+botania.page.pool8=For the artistic types, tossing any color of &1Floral Powder&0 in the pool will have it take it's color, all sixteen colors are viable for decoration and/or easy labelling.
botania.page.pool3=Infusing &1Manasteel&0
botania.page.pool4=Infusing &1Mana Pearls&0
botania.page.pool5=Infusing &1Mana Diamonds&0