Almost ready for final 1.2.0 push

This commit is contained in:
WayofTime 2014-10-13 10:33:43 -04:00
parent 4a1f13d988
commit 3d6d7bcdd6
12 changed files with 136 additions and 46 deletions

View file

@ -31,6 +31,9 @@ import net.minecraftforge.oredict.OreDictionary;
import net.minecraftforge.oredict.RecipeSorter; import net.minecraftforge.oredict.RecipeSorter;
import net.minecraftforge.oredict.RecipeSorter.Category; import net.minecraftforge.oredict.RecipeSorter.Category;
import thaumcraft.api.ItemApi; import thaumcraft.api.ItemApi;
import thaumcraft.api.ThaumcraftApi;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import WayofTime.alchemicalWizardry.api.alchemy.AlchemicalPotionCreationHandler; import WayofTime.alchemicalWizardry.api.alchemy.AlchemicalPotionCreationHandler;
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry; import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
@ -97,6 +100,7 @@ import WayofTime.alchemicalWizardry.common.rituals.RitualEffectExpulsion;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredEarth; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredEarth;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredKnife; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredKnife;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFlight; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFlight;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFullStomach;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectGrowth; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectGrowth;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHarvest; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHarvest;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHealing; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHealing;
@ -162,7 +166,7 @@ import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.GameRegistry;
@Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.2.0Beta25") @Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.2.0Candidate1")
//@NetworkMod(clientSideRequired = true, serverSideRequired = false, channels = {"BloodAltar", "particle", "SetLifeEssence", "GetLifeEssence", "Ritual", "GetAltarEssence", "TESocket", "TEWritingTable", "CustomParticle", "SetPlayerVel", "SetPlayerPos", "TEPedestal", "TEPlinth", "TETeleposer", "InfiniteLPPath", "TEOrientor"}, packetHandler = PacketHandler.class) //@NetworkMod(clientSideRequired = true, serverSideRequired = false, channels = {"BloodAltar", "particle", "SetLifeEssence", "GetLifeEssence", "Ritual", "GetAltarEssence", "TESocket", "TEWritingTable", "CustomParticle", "SetPlayerVel", "SetPlayerPos", "TEPedestal", "TEPlinth", "TETeleposer", "InfiniteLPPath", "TEOrientor"}, packetHandler = PacketHandler.class)
public class AlchemicalWizardry public class AlchemicalWizardry
@ -920,6 +924,15 @@ public class AlchemicalWizardry
Item itemThaumChest = GameRegistry.findItem("Thaumcraft", "ItemChestplateThaumium"); Item itemThaumChest = GameRegistry.findItem("Thaumcraft", "ItemChestplateThaumium");
Item itemThaumLeggings = GameRegistry.findItem("Thaumcraft", "ItemLeggingsThaumium"); Item itemThaumLeggings = GameRegistry.findItem("Thaumcraft", "ItemLeggingsThaumium");
Item itemThaumBoots = GameRegistry.findItem("Thaumcraft", "ItemBootsThaumium"); Item itemThaumBoots = GameRegistry.findItem("Thaumcraft", "ItemBootsThaumium");
AspectList aspectList = new AspectList();
aspectList.add(Aspect.ARMOR, 5).add(Aspect.MAGIC, 5);
ThaumcraftApi.registerObjectTag(new ItemStack(ModItems.sanguineHelmet), aspectList);
ThaumcraftApi.registerObjectTag(new ItemStack(ModItems.sanguineRobe), aspectList);
ThaumcraftApi.registerObjectTag(new ItemStack(ModItems.sanguinePants), aspectList);
ThaumcraftApi.registerObjectTag(new ItemStack(ModItems.sanguineBoots), aspectList);
if (itemGoggles != null) if (itemGoggles != null)
@ -1070,10 +1083,11 @@ public class AlchemicalWizardry
Rituals.registerRitual("AW023Zephyr", 1, 25000, new RitualEffectItemSuction(),"Call of the Zephyr", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW023Zephyr", 1, 25000, new RitualEffectItemSuction(),"Call of the Zephyr", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW024Harvest", 1, 20000, new RitualEffectHarvest(), "Reap of the Harvest Moon", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW024Harvest", 1, 20000, new RitualEffectHarvest(), "Reap of the Harvest Moon", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW025Conduit", 2, 2000000, new RitualEffectLifeConduit(), "Cry of the Eternal Soul", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW025Conduit", 2, 2000000, new RitualEffectLifeConduit(), "Cry of the Eternal Soul", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW026Ellipsoid", 1, 25000, new RitualEffectEllipsoid(), "Ellipsoid", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW026Ellipsoid", 1, 25000, new RitualEffectEllipsoid(), "Focus of the Ellipsoid", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW027Evaporation", 1, 20000, new RitualEffectEvaporation(), "Evaporation", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW027Evaporation", 1, 20000, new RitualEffectEvaporation(), "Song of Evaporation", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW028SpawnWard", 1, 150000, new RitualEffectSpawnWard(), "Ward of Sacrosanctity", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW028SpawnWard", 1, 150000, new RitualEffectSpawnWard(), "Ward of Sacrosanctity", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW029VeilOfEvil", 1, 150000, new RitualEffectVeilOfEvil(), "Veil of Evil", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW029VeilOfEvil", 1, 150000, new RitualEffectVeilOfEvil(), "Veil of Evil", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
Rituals.registerRitual("AW030FullStomach", 1, 100000, new RitualEffectFullStomach(), "Requiem of the Satiated Stomach", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"),0,0,0,255, 0, 0.501, 0.501, 0, 1.5, false));
//Rituals.registerRitual(1,100,new RitualEffectApiaryOverclock(),"Apiary Overclock")); //Rituals.registerRitual(1,100,new RitualEffectApiaryOverclock(),"Apiary Overclock"));
} }

View file

@ -23,6 +23,7 @@ import WayofTime.alchemicalWizardry.common.PacketHandler;
import WayofTime.alchemicalWizardry.common.items.EnergyBattery; import WayofTime.alchemicalWizardry.common.items.EnergyBattery;
import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar; import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBellJar;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
@ -78,6 +79,34 @@ public class BlockAltar extends BlockContainer
return sideIcon2; return sideIcon2;
} }
} }
@Override
public boolean hasComparatorInputOverride()
{
return true;
}
@Override
public int getComparatorInputOverride(World world, int x, int y, int z, int meta)
{
TileEntity tile = world.getTileEntity(x, y, z);
if (tile instanceof TEAltar)
{
ItemStack stack = ((TEAltar) tile).getStackInSlot(0);
if (stack != null && stack.getItem() instanceof EnergyBattery)
{
EnergyBattery bloodOrb = (EnergyBattery) stack.getItem();
int maxEssence = bloodOrb.getMaxEssence();
int currentEssence = bloodOrb.getCurrentEssence(stack);
int level = currentEssence * 15 / maxEssence;
return ((int) (Math.min(15, level))) % 16;
}
}
return 0;
}
@Override @Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int idk, float what, float these, float are) public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int idk, float what, float these, float are)
@ -271,11 +300,11 @@ public class BlockAltar extends BlockContainer
// return 1; // return 1;
// } // }
@Override // @Override
public boolean canProvidePower() // public boolean canProvidePower()
{ // {
return true; // return true;
} // }
@Override @Override
public int isProvidingWeakPower(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) public int isProvidingWeakPower(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5)

View file

@ -111,13 +111,13 @@ public class BlockBelljar extends BlockContainer
} }
@Override @Override
public boolean canProvidePower() public boolean hasComparatorInputOverride()
{ {
return true; return true;
} }
@Override @Override
public int isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int meta) public int getComparatorInputOverride(World world, int x, int y, int z, int meta)
{ {
TileEntity tile = world.getTileEntity(x, y, z); TileEntity tile = world.getTileEntity(x, y, z);
if(tile instanceof TEBellJar) if(tile instanceof TEBellJar)

View file

@ -180,7 +180,7 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles,ISpecialAr
if(player.isPotionActive(AlchemicalWizardry.customPotionSoulHarden)) if(player.isPotionActive(AlchemicalWizardry.customPotionSoulHarden))
{ {
int i = player.getActivePotionEffect(AlchemicalWizardry.customPotionSoulHarden).getAmplifier() + 1; int i = player.getActivePotionEffect(AlchemicalWizardry.customPotionSoulHarden).getAmplifier() + 1;
damageAmount /= (1 - i*0.1); damageAmount /= Math.max((1 - i*0.1), 0.1);
}else }else
{ {
damageAmount *= 0.9; damageAmount *= 0.9;
@ -309,8 +309,8 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles,ISpecialAr
{ {
return "alchemicalwizardry:models/armor/BloodArmour_WIP.png"; return "alchemicalwizardry:models/armor/BloodArmour_WIP.png";
} }
//TODO Make the armour invisible when the player has Invisibility on.
if (entity instanceof EntityLivingBase) if (entity instanceof EntityLivingBase)
{ {
if (this.getIsInvisible(stack)) if (this.getIsInvisible(stack))
{ {

View file

@ -86,12 +86,12 @@ public class ItemSanguineArmour extends ItemArmor implements ArmourUpgrade, IGog
if (this == ModItems.sanguineRobe || this == ModItems.sanguineBoots) if (this == ModItems.sanguineRobe || this == ModItems.sanguineBoots)
{ {
return "alchemicalwizardry:models/armor/boundArmour_layer_1.png"; return "alchemicalwizardry:models/armor/sanguineArmour_layer_1.png";
} }
if (this == ModItems.sanguinePants) if (this == ModItems.sanguinePants)
{ {
return "alchemicalwizardry:models/armor/boundArmour_layer_2.png"; return "alchemicalwizardry:models/armor/sanguineArmour_layer_2.png";
} else } else
{ {
return null; return null;
@ -106,16 +106,16 @@ public class ItemSanguineArmour extends ItemArmor implements ArmourUpgrade, IGog
switch(this.armorType) switch(this.armorType)
{ {
case 0: case 0:
discount = 8; discount = 6;
break; break;
case 1: case 1:
discount = 4; discount = 3;
break; break;
case 2: case 2:
discount = 3; discount = 3;
break; break;
case 3: case 3:
discount = 3; discount = 2;
break; break;
} }

View file

@ -147,6 +147,7 @@ public class ModelOmegaArmour extends ModelBiped
setRotation(leftFacePlate, 0.296706F, -0.3490659F, -0.0872665F); setRotation(leftFacePlate, 0.296706F, -0.3490659F, -0.0872665F);
rightFacePlate = new ModelRenderer(this, 66, 52); rightFacePlate = new ModelRenderer(this, 66, 52);
rightFacePlate.mirror = true;
rightFacePlate.addBox(-3F, -5F, -5F, 5, 4, 1); rightFacePlate.addBox(-3F, -5F, -5F, 5, 4, 1);
rightFacePlate.setRotationPoint(0F, 0F, 0F); rightFacePlate.setRotationPoint(0F, 0F, 0F);
rightFacePlate.setTextureSize(128, 128); rightFacePlate.setTextureSize(128, 128);
@ -190,6 +191,7 @@ public class ModelOmegaArmour extends ModelBiped
setRotation(leftWingPlate2, 0.2617994F, 0.1745329F, 0F); setRotation(leftWingPlate2, 0.2617994F, 0.1745329F, 0F);
rightWingPlate1 = new ModelRenderer(this, 66, 58); rightWingPlate1 = new ModelRenderer(this, 66, 58);
rightWingPlate1.mirror = true;
rightWingPlate1.addBox(-6F, -5F, -2.5F, 1, 5, 8); rightWingPlate1.addBox(-6F, -5F, -2.5F, 1, 5, 8);
rightWingPlate1.setRotationPoint(0F, 0F, 0F); rightWingPlate1.setRotationPoint(0F, 0F, 0F);
rightWingPlate1.setTextureSize(128, 128); rightWingPlate1.setTextureSize(128, 128);
@ -198,6 +200,7 @@ public class ModelOmegaArmour extends ModelBiped
rightWingPlate1.mirror = false; rightWingPlate1.mirror = false;
rightWingPlate2 = new ModelRenderer(this, 66, 72); rightWingPlate2 = new ModelRenderer(this, 66, 72);
rightWingPlate2.mirror = true;
rightWingPlate2.addBox(-6F, -8F, -2F, 1, 3, 10); rightWingPlate2.addBox(-6F, -8F, -2F, 1, 3, 10);
rightWingPlate2.setRotationPoint(0F, 0F, 0F); rightWingPlate2.setRotationPoint(0F, 0F, 0F);
rightWingPlate2.setTextureSize(128, 128); rightWingPlate2.setTextureSize(128, 128);
@ -227,6 +230,7 @@ public class ModelOmegaArmour extends ModelBiped
setRotation(topPlate3, 0.4363323F, 0F, 0F); setRotation(topPlate3, 0.4363323F, 0F, 0F);
backPlate1 = new ModelRenderer(this, 66, 86); backPlate1 = new ModelRenderer(this, 66, 86);
backPlate1.mirror = true;
backPlate1.addBox(-4.5F, -7F, 6F, 6, 4, 1); backPlate1.addBox(-4.5F, -7F, 6F, 6, 4, 1);
backPlate1.setRotationPoint(0F, 0F, 0F); backPlate1.setRotationPoint(0F, 0F, 0F);
backPlate1.setTextureSize(128, 128); backPlate1.setTextureSize(128, 128);
@ -235,6 +239,7 @@ public class ModelOmegaArmour extends ModelBiped
backPlate1.mirror = false; backPlate1.mirror = false;
backPlate2 = new ModelRenderer(this, 66, 86); backPlate2 = new ModelRenderer(this, 66, 86);
backPlate2.mirror = true;
backPlate2.addBox(-4.5F, -6.5F, 6F, 6, 4, 1); backPlate2.addBox(-4.5F, -6.5F, 6F, 6, 4, 1);
backPlate2.setRotationPoint(0F, 2F, 0F); backPlate2.setRotationPoint(0F, 2F, 0F);
backPlate2.setTextureSize(128, 128); backPlate2.setTextureSize(128, 128);
@ -243,6 +248,7 @@ public class ModelOmegaArmour extends ModelBiped
backPlate2.mirror = false; backPlate2.mirror = false;
backPlate3 = new ModelRenderer(this, 66, 86); backPlate3 = new ModelRenderer(this, 66, 86);
backPlate3.mirror = true;
backPlate3.addBox(-4.5F, -6F, 6F, 6, 4, 1); backPlate3.addBox(-4.5F, -6F, 6F, 6, 4, 1);
backPlate3.setRotationPoint(0F, 4F, 0F); backPlate3.setRotationPoint(0F, 4F, 0F);
backPlate3.setTextureSize(128, 128); backPlate3.setTextureSize(128, 128);

View file

@ -35,8 +35,8 @@ public class RitualEffectFullStomach extends RitualEffect
return; return;
} }
double horizRange = 5; double horizRange = 16;
double vertRange = 5; double vertRange = 16;
List<EntityPlayer> playerList = SpellHelper.getPlayersInRange(world, x+0.5, y+0.5, z+0.5, horizRange, vertRange); List<EntityPlayer> playerList = SpellHelper.getPlayersInRange(world, x+0.5, y+0.5, z+0.5, horizRange, vertRange);
@ -72,7 +72,7 @@ public class RitualEffectFullStomach extends RitualEffect
{ {
FoodStats foodStats = player.getFoodStats(); FoodStats foodStats = player.getFoodStats();
float satLevel = foodStats.getSaturationLevel(); float satLevel = foodStats.getSaturationLevel();
for(int i=0; i<inventory.getSizeInventory(); i++) for(int i=0; i<inventory.getSizeInventory(); i++)
{ {
ItemStack stack = inventory.getStackInSlot(i); ItemStack stack = inventory.getStackInSlot(i);
@ -82,8 +82,8 @@ public class RitualEffectFullStomach extends RitualEffect
ItemFood foodItem = (ItemFood)stack.getItem(); ItemFood foodItem = (ItemFood)stack.getItem();
int regularHeal = foodItem.func_150905_g(stack); int regularHeal = foodItem.func_150905_g(stack);
float saturatedHeal = foodItem.func_150906_h(stack); float saturatedHeal = foodItem.func_150906_h(stack) * regularHeal * 2.0f;
if(saturatedHeal + satLevel <= 20) if(saturatedHeal + satLevel <= 20)
{ {
foodStats.setFoodSaturationLevel(saturatedHeal + satLevel); foodStats.setFoodSaturationLevel(saturatedHeal + satLevel);
@ -109,23 +109,39 @@ public class RitualEffectFullStomach extends RitualEffect
@Override @Override
public List<RitualComponent> getRitualComponentList() public List<RitualComponent> getRitualComponentList()
{ {
ArrayList<RitualComponent> animalGrowthRitual = new ArrayList(); ArrayList<RitualComponent> fullRitual = new ArrayList();
animalGrowthRitual.add(new RitualComponent(0, 0, 2, RitualComponent.DUSK)); fullRitual.add(new RitualComponent(0, 0, 3, RitualComponent.FIRE));
animalGrowthRitual.add(new RitualComponent(2, 0, 0, RitualComponent.DUSK)); fullRitual.add(new RitualComponent(0, 0, -3, RitualComponent.FIRE));
animalGrowthRitual.add(new RitualComponent(0, 0, -2, RitualComponent.DUSK)); fullRitual.add(new RitualComponent(3, 0, 0, RitualComponent.FIRE));
animalGrowthRitual.add(new RitualComponent(-2, 0, 0, RitualComponent.DUSK)); fullRitual.add(new RitualComponent(-3, 0, 0, RitualComponent.FIRE));
animalGrowthRitual.add(new RitualComponent(0, 0, 1, RitualComponent.WATER)); fullRitual.add(new RitualComponent(1, 0, 1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(1, 0, 0, RitualComponent.WATER)); fullRitual.add(new RitualComponent(1, 0, -1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(0, 0, -1, RitualComponent.WATER)); fullRitual.add(new RitualComponent(-1, 0, -1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(-1, 0, 0, RitualComponent.WATER)); fullRitual.add(new RitualComponent(-1, 0, 1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(1, 0, 2, RitualComponent.EARTH));
animalGrowthRitual.add(new RitualComponent(-1, 0, 2, RitualComponent.EARTH)); fullRitual.add(new RitualComponent(2, 0, 1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(1, 0, -2, RitualComponent.EARTH)); fullRitual.add(new RitualComponent(2, 0, -1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(-1, 0, -2, RitualComponent.EARTH)); fullRitual.add(new RitualComponent(-2, 0, -1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(2, 0, 1, RitualComponent.AIR)); fullRitual.add(new RitualComponent(-2, 0, 1, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(2, 0, -1, RitualComponent.AIR)); fullRitual.add(new RitualComponent(1, 0, 2, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(-2, 0, 1, RitualComponent.AIR)); fullRitual.add(new RitualComponent(1, 0, -2, RitualComponent.AIR));
animalGrowthRitual.add(new RitualComponent(-2, 0, -1, RitualComponent.AIR)); fullRitual.add(new RitualComponent(-1, 0, -2, RitualComponent.AIR));
return animalGrowthRitual; fullRitual.add(new RitualComponent(-1, 0, 2, RitualComponent.AIR));
fullRitual.add(new RitualComponent(4, 0, 4, RitualComponent.WATER));
fullRitual.add(new RitualComponent(4, 0, -4, RitualComponent.WATER));
fullRitual.add(new RitualComponent(-4, 0, -4, RitualComponent.WATER));
fullRitual.add(new RitualComponent(-4, 0, 4, RitualComponent.WATER));
fullRitual.add(new RitualComponent(4, 0, 3, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(3, 0, 4, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(-4, 0, 3, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(3, 0, -4, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(-4, 0, -3, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(-3, 0, -4, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(4, 0, -3, RitualComponent.EARTH));
fullRitual.add(new RitualComponent(-3, 0, 4, RitualComponent.EARTH));
return fullRitual;
} }
} }

View file

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockFurnace;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
@ -116,7 +117,7 @@ public class RitualEffectItemSuction extends RitualEffect
// } // }
// } // }
count++; //count++;
ItemStack newStack = SpellHelper.insertStackIntoInventory(copyStack, tileEntity); ItemStack newStack = SpellHelper.insertStackIntoInventory(copyStack, tileEntity);
@ -126,6 +127,7 @@ public class RitualEffectItemSuction extends RitualEffect
if(newStack.stackSize<=0) if(newStack.stackSize<=0)
{ {
itemEntity.setDead(); itemEntity.setDead();
itemEntity.getEntityItem().stackSize = newStack.stackSize;
} }
if (newStack.stackSize > 0) if (newStack.stackSize > 0)
@ -134,8 +136,9 @@ public class RitualEffectItemSuction extends RitualEffect
} }
if(hasReductus) if(hasReductus)
{ {
BlockFurnace d;
this.canDrainReagent(ritualStone, ReagentRegistry.reductusReagent, reductusDrain, true); this.canDrainReagent(ritualStone, ReagentRegistry.reductusReagent, reductusDrain, true);
} }
} }
} }
} }

View file

@ -76,7 +76,7 @@ public class RitualEffectUnbinding extends RitualEffect
world.addWeatherEffect(new EntityLightningBolt(world, x - 5, y + 1, z)); world.addWeatherEffect(new EntityLightningBolt(world, x - 5, y + 1, z));
world.addWeatherEffect(new EntityLightningBolt(world, x + 5, y + 1, z)); world.addWeatherEffect(new EntityLightningBolt(world, x + 5, y + 1, z));
EnergyItems.checkAndSetItemOwner(itemStack, ""); EnergyItems.setItemOwner(itemStack, "");
this.canDrainReagent(ritualStone, ReagentRegistry.sanctusReagent, sanctusDrain, true); this.canDrainReagent(ritualStone, ReagentRegistry.sanctusReagent, sanctusDrain, true);
drain = true; drain = true;
ritualStone.setActive(false); ritualStone.setActive(false);

View file

@ -65,6 +65,7 @@ public class TEAltar extends TileEntity implements IInventory, IFluidTank, IFlui
protected FluidStack fluidOutput; protected FluidStack fluidOutput;
protected FluidStack fluidInput; protected FluidStack fluidInput;
private int progress; private int progress;
private int hasChanged = 0;
private int lockdownDuration; private int lockdownDuration;
@ -91,6 +92,11 @@ public class TEAltar extends TileEntity implements IInventory, IFluidTank, IFlui
this.lockdownDuration = 0; this.lockdownDuration = 0;
} }
public int getRSPowerOutput()
{
return 5;
}
@Override @Override
public void readFromNBT(NBTTagCompound par1NBTTagCompound) public void readFromNBT(NBTTagCompound par1NBTTagCompound)
{ {
@ -545,6 +551,21 @@ public class TEAltar extends TileEntity implements IInventory, IFluidTank, IFlui
if (!worldObj.isRemote && worldObj.getWorldTime() % 20 == 0) if (!worldObj.isRemote && worldObj.getWorldTime() % 20 == 0)
{ {
//TODO //TODO
{
Block block = worldObj.getBlock(xCoord+1, yCoord, zCoord);
block.onNeighborBlockChange(worldObj, xCoord+1, yCoord, zCoord, block);
block = worldObj.getBlock(xCoord-1, yCoord, zCoord);
block.onNeighborBlockChange(worldObj, xCoord-1, yCoord, zCoord, block);
block = worldObj.getBlock(xCoord, yCoord+1, zCoord);
block.onNeighborBlockChange(worldObj, xCoord, yCoord+1, zCoord, block);
block = worldObj.getBlock(xCoord, yCoord-1, zCoord);
block.onNeighborBlockChange(worldObj, xCoord, yCoord-1, zCoord, block);
block = worldObj.getBlock(xCoord, yCoord, zCoord+1);
block.onNeighborBlockChange(worldObj, xCoord, yCoord, zCoord+1, block);
block = worldObj.getBlock(xCoord, yCoord, zCoord-1);
block.onNeighborBlockChange(worldObj, xCoord, yCoord, zCoord-1, block);
}
int syphonMax = (int) (20 * this.dislocationMultiplier); int syphonMax = (int) (20 * this.dislocationMultiplier);
int fluidInputted = 0; int fluidInputted = 0;
int fluidOutputted = 0; int fluidOutputted = 0;
@ -648,6 +669,7 @@ public class TEAltar extends TileEntity implements IInventory, IFluidTank, IFlui
fluid.amount = fluid.amount - liquidDrained; fluid.amount = fluid.amount - liquidDrained;
progress += liquidDrained; progress += liquidDrained;
//getStackInSlot(0).setItemDamage(getStackInSlot(0).getItemDamage() + liquidDrained); //getStackInSlot(0).setItemDamage(getStackInSlot(0).getItemDamage() + liquidDrained);
if (worldTime % 4 == 0) if (worldTime % 4 == 0)
@ -733,7 +755,7 @@ public class TEAltar extends TileEntity implements IInventory, IFluidTank, IFlui
//int currentEssence=playerTag.getInteger("currentEssence"); //int currentEssence=playerTag.getInteger("currentEssence");
if (fluid != null && fluid.amount >= 1) if (fluid != null && fluid.amount >= 1)
{ {
int liquidDrained = Math.min((int) (upgradeLevel >= 2 ? consumptionRate * (1 + consumptionMultiplier) : consumptionRate), fluid.amount); int liquidDrained = Math.min((int) (upgradeLevel >= 2 ? consumptionRate * (1 + consumptionMultiplier) : consumptionRate), fluid.amount);
if (liquidDrained > (item.getMaxEssence() * this.orbCapacityMultiplier - currentEssence)) if (liquidDrained > (item.getMaxEssence() * this.orbCapacityMultiplier - currentEssence))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB