Finished all errors except for the sigils.
This commit is contained in:
parent
9e2c0e6e74
commit
230b44fe88
|
@ -43,12 +43,6 @@ public class ItemSpellMultiTool extends Item
|
||||||
this.setMaxStackSize(1);
|
this.setMaxStackSize(1);
|
||||||
this.setFull3D();
|
this.setFull3D();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:BoundTool");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hitEntity(ItemStack par1ItemStack, EntityLivingBase par2EntityLivingBase, EntityLivingBase par3EntityLivingBase)
|
public boolean hitEntity(ItemStack par1ItemStack, EntityLivingBase par2EntityLivingBase, EntityLivingBase par3EntityLivingBase)
|
||||||
|
|
|
@ -1,12 +1,15 @@
|
||||||
package WayofTime.alchemicalWizardry.common.entity.projectile;
|
package WayofTime.alchemicalWizardry.common.entity.projectile;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.ModBlocks;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.init.Blocks;
|
import net.minecraft.init.Blocks;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumFacing;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import WayofTime.alchemicalWizardry.ModBlocks;
|
||||||
|
|
||||||
|
|
||||||
public class EntityBloodLightProjectile extends EnergyBlastProjectile
|
public class EntityBloodLightProjectile extends EnergyBlastProjectile
|
||||||
|
@ -55,39 +58,12 @@ public class EntityBloodLightProjectile extends EnergyBlastProjectile
|
||||||
this.onImpact(mop.entityHit);
|
this.onImpact(mop.entityHit);
|
||||||
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
int sideHit = mop.sideHit;
|
EnumFacing facing = mop.field_178784_b;
|
||||||
int blockX = mop.blockX;
|
BlockPos position = mop.func_178782_a().offset(facing);
|
||||||
int blockY = mop.blockY;
|
|
||||||
int blockZ = mop.blockZ;
|
if(this.worldObj.isAirBlock(position))
|
||||||
|
|
||||||
if (sideHit == 0 && this.worldObj.isAirBlock(blockX, blockY - 1, blockZ))
|
|
||||||
{
|
{
|
||||||
this.worldObj.setBlock(blockX, blockY - 1, blockZ, ModBlocks.blockBloodLight);
|
this.worldObj.setBlockState(position, ModBlocks.blockBloodLight.getDefaultState());
|
||||||
}
|
|
||||||
|
|
||||||
if (sideHit == 1 && this.worldObj.isAirBlock(blockX, blockY + 1, blockZ))
|
|
||||||
{
|
|
||||||
this.worldObj.setBlock(blockX, blockY + 1, blockZ, ModBlocks.blockBloodLight);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sideHit == 2 && this.worldObj.isAirBlock(blockX, blockY, blockZ - 1))
|
|
||||||
{
|
|
||||||
this.worldObj.setBlock(blockX, blockY, blockZ - 1, ModBlocks.blockBloodLight);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sideHit == 3 && this.worldObj.isAirBlock(blockX, blockY, blockZ + 1))
|
|
||||||
{
|
|
||||||
this.worldObj.setBlock(blockX, blockY, blockZ + 1, ModBlocks.blockBloodLight);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sideHit == 4 && this.worldObj.isAirBlock(blockX - 1, blockY, blockZ))
|
|
||||||
{
|
|
||||||
this.worldObj.setBlock(blockX - 1, blockY, blockZ, ModBlocks.blockBloodLight);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sideHit == 5 && this.worldObj.isAirBlock(blockX + 1, blockY, blockZ))
|
|
||||||
{
|
|
||||||
this.worldObj.setBlock(blockX + 1, blockY, blockZ, ModBlocks.blockBloodLight);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -110,12 +86,13 @@ public class EntityBloodLightProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (worldObj.isAirBlock((int) this.posX, (int) this.posY, (int) this.posZ))
|
BlockPos pos = new BlockPos(this.posX, this.posY, this.posZ);
|
||||||
|
if (worldObj.isAirBlock(pos))
|
||||||
{
|
{
|
||||||
worldObj.setBlock((int) this.posX, (int) this.posY, (int) this.posZ, Blocks.fire);
|
worldObj.setBlockState(pos, Blocks.fire.getDefaultState());
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@ package WayofTime.alchemicalWizardry.common.entity.projectile;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -76,7 +77,7 @@ public class EntityEnergyBazookaMainProjectile extends EnergyBlastProjectile
|
||||||
worldObj.createExplosion(this.shootingEntity, this.posX, this.posY, this.posZ, (float) (5.0f), false);
|
worldObj.createExplosion(this.shootingEntity, this.posX, this.posY, this.posZ, (float) (5.0f), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,20 +4,23 @@ import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.IProjectile;
|
import net.minecraft.entity.IProjectile;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumFacing;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MathHelper;
|
import net.minecraft.util.MathHelper;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectile implements IProjectile
|
public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectile implements IProjectile
|
||||||
{
|
{
|
||||||
|
@ -48,7 +51,6 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
super(par1World);
|
super(par1World);
|
||||||
this.setSize(0.5F, 0.5F);
|
this.setSize(0.5F, 0.5F);
|
||||||
this.setPosition(par2, par4, par6);
|
this.setPosition(par2, par4, par6);
|
||||||
yOffset = 0.0F;
|
|
||||||
this.damage = damage;
|
this.damage = damage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,7 +65,6 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
posY -= 0.2D;
|
posY -= 0.2D;
|
||||||
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
||||||
this.setPosition(posX, posY, posZ);
|
this.setPosition(posX, posY, posZ);
|
||||||
yOffset = 0.0F;
|
|
||||||
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
|
@ -102,18 +103,6 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
prevRotationPitch = rotationPitch = (float) (Math.atan2(var3, var10) * 180.0D / Math.PI);
|
prevRotationPitch = rotationPitch = (float) (Math.atan2(var3, var10) * 180.0D / Math.PI);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
/**
|
|
||||||
* Sets the position and rotation. Only difference from the other one is no bounding on the rotation. Args: posX,
|
|
||||||
* posY, posZ, yaw, pitch
|
|
||||||
*/
|
|
||||||
public void setPositionAndRotation2(double par1, double par3, double par5, float par7, float par8, int par9)
|
|
||||||
{
|
|
||||||
this.setPosition(par1, par3, par5);
|
|
||||||
this.setRotation(par7, par8);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
/**
|
/**
|
||||||
|
@ -180,28 +169,21 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
prevRotationPitch = rotationPitch = (float) (Math.atan2(motionY, var1) * 180.0D / Math.PI);
|
prevRotationPitch = rotationPitch = (float) (Math.atan2(motionY, var1) * 180.0D / Math.PI);
|
||||||
}
|
}
|
||||||
|
|
||||||
Block var16 = worldObj.getBlock(xTile, yTile, zTile);
|
IBlockState state = worldObj.getBlockState(new BlockPos(xTile, yTile, zTile));
|
||||||
|
Block var16 = state.getBlock();
|
||||||
|
|
||||||
if (var16 != null)
|
if (var16 != null)
|
||||||
{
|
{
|
||||||
var16.setBlockBoundsBasedOnState(worldObj, xTile, yTile, zTile);
|
var16.setBlockBoundsBasedOnState(worldObj, new BlockPos(xTile, yTile, zTile));
|
||||||
AxisAlignedBB var2 = var16.getCollisionBoundingBoxFromPool(worldObj, xTile, yTile, zTile);
|
AxisAlignedBB var2 = var16.getCollisionBoundingBox(worldObj, new BlockPos(xTile, yTile, zTile), state);
|
||||||
|
|
||||||
if (var2 != null && var2.isVecInside(SpellHelper.createVec3(posX, posY, posZ)))
|
if (var2 != null && var2.isVecInside(new Vec3(posX, posY, posZ)))
|
||||||
{
|
{
|
||||||
inGround = true;
|
inGround = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inGround)
|
if (!inGround)
|
||||||
{
|
|
||||||
Block var18 = worldObj.getBlock(xTile, yTile, zTile);
|
|
||||||
int var19 = worldObj.getBlockMetadata(xTile, yTile, zTile);
|
|
||||||
|
|
||||||
if (var18.equals(Block.getBlockById(inTile)) && var19 == inData)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
{
|
{
|
||||||
++ticksInAir;
|
++ticksInAir;
|
||||||
|
|
||||||
|
@ -213,19 +195,19 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Vec3 var17 = SpellHelper.createVec3(posX, posY, posZ);
|
Vec3 var17 = new Vec3(posX, posY, posZ);
|
||||||
Vec3 var3 = SpellHelper.createVec3(posX + motionX, posY + motionY, posZ + motionZ);
|
Vec3 var3 = new Vec3(posX + motionX, posY + motionY, posZ + motionZ);
|
||||||
MovingObjectPosition var4 = worldObj.func_147447_a(var17, var3, true, false, false);
|
MovingObjectPosition var4 = worldObj.rayTraceBlocks(var17, var3, true, false, false);
|
||||||
var17 = SpellHelper.createVec3(posX, posY, posZ);
|
var17 = new Vec3(posX, posY, posZ);
|
||||||
var3 = SpellHelper.createVec3(posX + motionX, posY + motionY, posZ + motionZ);
|
var3 = new Vec3(posX + motionX, posY + motionY, posZ + motionZ);
|
||||||
|
|
||||||
if (var4 != null)
|
if (var4 != null)
|
||||||
{
|
{
|
||||||
var3 = SpellHelper.createVec3(var4.hitVec.xCoord, var4.hitVec.yCoord, var4.hitVec.zCoord);
|
var3 = new Vec3(var4.hitVec.xCoord, var4.hitVec.yCoord, var4.hitVec.zCoord);
|
||||||
}
|
}
|
||||||
|
|
||||||
Entity var5 = null;
|
Entity var5 = null;
|
||||||
List var6 = worldObj.getEntitiesWithinAABBExcludingEntity(this, boundingBox.addCoord(motionX, motionY, motionZ).expand(1.0D, 1.0D, 1.0D));
|
List var6 = worldObj.getEntitiesWithinAABBExcludingEntity(this, getBoundingBox().addCoord(motionX, motionY, motionZ).expand(1.0D, 1.0D, 1.0D));
|
||||||
double var7 = 0.0D;
|
double var7 = 0.0D;
|
||||||
Iterator var9 = var6.iterator();
|
Iterator var9 = var6.iterator();
|
||||||
float var11;
|
float var11;
|
||||||
|
@ -237,7 +219,7 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
if (var10.canBeCollidedWith() && (var10 != shootingEntity || ticksInAir >= 5))
|
if (var10.canBeCollidedWith() && (var10 != shootingEntity || ticksInAir >= 5))
|
||||||
{
|
{
|
||||||
var11 = 0.3F;
|
var11 = 0.3F;
|
||||||
AxisAlignedBB var12 = var10.boundingBox.expand(var11, var11, var11);
|
AxisAlignedBB var12 = var10.getBoundingBox().expand(var11, var11, var11);
|
||||||
MovingObjectPosition var13 = var12.calculateIntercept(var17, var3);
|
MovingObjectPosition var13 = var12.calculateIntercept(var17, var3);
|
||||||
|
|
||||||
if (var13 != null)
|
if (var13 != null)
|
||||||
|
@ -278,8 +260,8 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
|
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
worldObj.spawnParticle("mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
worldObj.spawnParticle(EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
worldObj.spawnParticle("flame", posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
worldObj.spawnParticle(EnumParticleTypes.FLAME, posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -320,13 +302,6 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public float getShadowSize()
|
|
||||||
{
|
|
||||||
return 0.0F;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the amount of knockback the arrow applies when it hits a mob.
|
* Sets the amount of knockback the arrow applies when it hits a mob.
|
||||||
*/
|
*/
|
||||||
|
@ -382,7 +357,7 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
this.onImpact(mop.entityHit);
|
this.onImpact(mop.entityHit);
|
||||||
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
this.groundImpact(mop.sideHit);
|
this.groundImpact(mop.field_178784_b);
|
||||||
worldObj.createExplosion(shootingEntity, posX, posY, posZ, 2, false);
|
worldObj.createExplosion(shootingEntity, posX, posY, posZ, 2, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -399,7 +374,7 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
worldObj.createExplosion(shootingEntity, posX, posY, posZ, 2, false);
|
worldObj.createExplosion(shootingEntity, posX, posY, posZ, 2, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -408,11 +383,11 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
return rand.nextInt(6) + 1;
|
return rand.nextInt(6) + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void spawnHitParticles(String string, int i)
|
protected void spawnHitParticles(EnumParticleTypes type, int i)
|
||||||
{
|
{
|
||||||
for (int particles = 0; particles < i; particles++)
|
for (int particles = 0; particles < i; particles++)
|
||||||
{
|
{
|
||||||
worldObj.spawnParticle(string, posX, posY - (string == "portal" ? 1 : 0), posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
worldObj.spawnParticle(type, posX, posY - (type == EnumParticleTypes.PORTAL ? 1 : 0), posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -426,7 +401,7 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
return DamageSource.causeMobDamage(shootingEntity);
|
return DamageSource.causeMobDamage(shootingEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void groundImpact(int sideHit)
|
public void groundImpact(EnumFacing sideHit)
|
||||||
{
|
{
|
||||||
this.ricochet(sideHit);
|
this.ricochet(sideHit);
|
||||||
}
|
}
|
||||||
|
@ -441,27 +416,21 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
return d + d * ((rand.nextFloat() - 0.5D) / 4);
|
return d + d * ((rand.nextFloat() - 0.5D) / 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ricochet(int sideHit)
|
private void ricochet(EnumFacing sideHit)
|
||||||
{
|
{
|
||||||
switch (sideHit)
|
if(sideHit.getFrontOffsetX() != 0)
|
||||||
{
|
{
|
||||||
case 0:
|
motionX *= -1;
|
||||||
case 1:
|
}
|
||||||
// topHit, bottomHit, reflect Y
|
|
||||||
motionY = motionY * -1;
|
if(sideHit.getFrontOffsetY() != 0)
|
||||||
break;
|
{
|
||||||
|
motionY *= -1;
|
||||||
case 2:
|
}
|
||||||
case 3:
|
|
||||||
// westHit, eastHit, reflect Z
|
if(sideHit.getFrontOffsetZ() != 0)
|
||||||
motionZ = motionZ * -1;
|
{
|
||||||
break;
|
motionZ *= -1;
|
||||||
|
|
||||||
case 4:
|
|
||||||
case 5:
|
|
||||||
// southHit, northHit, reflect X
|
|
||||||
motionX = motionX * -1;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ricochetCounter++;
|
ricochetCounter++;
|
||||||
|
@ -472,32 +441,33 @@ public class EntityEnergyBazookaSecondaryProjectile extends EnergyBlastProjectil
|
||||||
|
|
||||||
for (int particles = 0; particles < 4; particles++)
|
for (int particles = 0; particles < 4; particles++)
|
||||||
{
|
{
|
||||||
switch (sideHit)
|
worldObj.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
||||||
{
|
// switch (sideHit)
|
||||||
case 0:
|
// {
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), -gaussian(0.1D), gaussian(0.1D));
|
// case 0:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), -gaussian(0.1D), gaussian(0.1D));
|
||||||
|
// break;
|
||||||
case 1:
|
//
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
// case 1:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
||||||
|
// break;
|
||||||
case 2:
|
//
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), -gaussian(0.1D));
|
// case 2:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), -gaussian(0.1D));
|
||||||
|
// break;
|
||||||
case 3:
|
//
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
// case 3:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
||||||
|
// break;
|
||||||
case 4:
|
//
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, -gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
// case 4:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, -gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
||||||
|
// break;
|
||||||
case 5:
|
//
|
||||||
worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
// case 5:
|
||||||
break;
|
// worldObj.spawnParticle("smoke", posX, posY, posZ, gaussian(0.1D), gaussian(0.1D), gaussian(0.1D));
|
||||||
}
|
// break;
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,7 +74,7 @@ public class EntityMeteor extends EnergyBlastProjectile
|
||||||
this.onImpact(mop.entityHit);
|
this.onImpact(mop.entityHit);
|
||||||
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
} else if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
MeteorRegistry.createMeteorImpact(worldObj, mop.blockX, mop.blockY, mop.blockZ, this.meteorID, new boolean[]{hasTerrae, hasOrbisTerrae, hasCrystallos, hasIncendium, hasTennebrae});
|
MeteorRegistry.createMeteorImpact(worldObj, mop.func_178782_a(), this.meteorID, new boolean[]{hasTerrae, hasOrbisTerrae, hasCrystallos, hasIncendium, hasTennebrae});
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setDead();
|
this.setDead();
|
||||||
|
@ -83,7 +83,7 @@ public class EntityMeteor extends EnergyBlastProjectile
|
||||||
@Override
|
@Override
|
||||||
public void onImpact(Entity mop)
|
public void onImpact(Entity mop)
|
||||||
{
|
{
|
||||||
MeteorRegistry.createMeteorImpact(worldObj, (int) this.posX, (int) this.posY, (int) this.posZ, meteorID, new boolean[]{hasTerrae, hasOrbisTerrae, hasCrystallos, hasIncendium, hasTennebrae});
|
MeteorRegistry.createMeteorImpact(worldObj, this.getPosition(), meteorID, new boolean[]{hasTerrae, hasOrbisTerrae, hasCrystallos, hasIncendium, hasTennebrae});
|
||||||
|
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,18 +1,17 @@
|
||||||
package WayofTime.alchemicalWizardry.common.entity.projectile;
|
package WayofTime.alchemicalWizardry.common.entity.projectile;
|
||||||
|
|
||||||
import cpw.mods.fml.client.FMLClientHandler;
|
|
||||||
import cpw.mods.fml.common.registry.IThrowableEntity;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.particle.EntityCloudFX;
|
|
||||||
import net.minecraft.client.particle.EntityFX;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.IProjectile;
|
import net.minecraft.entity.IProjectile;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MathHelper;
|
import net.minecraft.util.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import net.minecraftforge.fml.common.registry.IThrowableEntity;
|
||||||
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
|
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
||||||
|
|
||||||
//Shamelessly ripped off from x3n0ph0b3
|
//Shamelessly ripped off from x3n0ph0b3
|
||||||
public class EntityParticleBeam extends Entity implements IProjectile, IThrowableEntity
|
public class EntityParticleBeam extends Entity implements IProjectile, IThrowableEntity
|
||||||
|
@ -51,7 +50,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
super(par1World);
|
super(par1World);
|
||||||
this.setSize(0.5F, 0.5F);
|
this.setSize(0.5F, 0.5F);
|
||||||
this.setPosition(par2, par4, par6);
|
this.setPosition(par2, par4, par6);
|
||||||
yOffset = 0.0F;
|
|
||||||
this.maxTicksInAir = 600;
|
this.maxTicksInAir = 600;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,7 +64,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
posY -= 0.2D;
|
posY -= 0.2D;
|
||||||
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
||||||
this.setPosition(posX, posY, posZ);
|
this.setPosition(posX, posY, posZ);
|
||||||
yOffset = 0.0F;
|
|
||||||
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
|
@ -86,7 +83,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
posY -= 0.2D;
|
posY -= 0.2D;
|
||||||
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
posZ -= MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * 0.16F;
|
||||||
this.setPosition(posX, posY, posZ);
|
this.setPosition(posX, posY, posZ);
|
||||||
yOffset = 0.0F;
|
|
||||||
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionX = -MathHelper.sin(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
motionZ = MathHelper.cos(rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
motionY = -MathHelper.sin(rotationPitch / 180.0F * (float) Math.PI);
|
||||||
|
@ -102,7 +98,7 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
this.shootingEntity = par2EntityLivingBase;
|
this.shootingEntity = par2EntityLivingBase;
|
||||||
this.posY = par2EntityLivingBase.posY + (double) par2EntityLivingBase.getEyeHeight() - 0.10000000149011612D;
|
this.posY = par2EntityLivingBase.posY + (double) par2EntityLivingBase.getEyeHeight() - 0.10000000149011612D;
|
||||||
double d0 = par3EntityLivingBase.posX - par2EntityLivingBase.posX;
|
double d0 = par3EntityLivingBase.posX - par2EntityLivingBase.posX;
|
||||||
double d1 = par3EntityLivingBase.boundingBox.minY + (double) (par3EntityLivingBase.height / 1.5F) - this.posY;
|
double d1 = par3EntityLivingBase.getBoundingBox().minY + (double) (par3EntityLivingBase.height / 1.5F) - this.posY;
|
||||||
double d2 = par3EntityLivingBase.posZ - par2EntityLivingBase.posZ;
|
double d2 = par3EntityLivingBase.posZ - par2EntityLivingBase.posZ;
|
||||||
double d3 = (double) MathHelper.sqrt_double(d0 * d0 + d2 * d2);
|
double d3 = (double) MathHelper.sqrt_double(d0 * d0 + d2 * d2);
|
||||||
|
|
||||||
|
@ -113,7 +109,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
double d4 = d0 / d3;
|
double d4 = d0 / d3;
|
||||||
double d5 = d2 / d3;
|
double d5 = d2 / d3;
|
||||||
this.setLocationAndAngles(par2EntityLivingBase.posX + d4, this.posY, par2EntityLivingBase.posZ + d5, f2, f3);
|
this.setLocationAndAngles(par2EntityLivingBase.posX + d4, this.posY, par2EntityLivingBase.posZ + d5, f2, f3);
|
||||||
this.yOffset = 0.0F;
|
|
||||||
float f4 = (float) d3 * 0.2F;
|
float f4 = (float) d3 * 0.2F;
|
||||||
this.setThrowableHeading(d0, d1, d2, par4, par5);
|
this.setThrowableHeading(d0, d1, d2, par4, par5);
|
||||||
}
|
}
|
||||||
|
@ -153,18 +148,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
prevRotationPitch = rotationPitch = (float) (Math.atan2(var3, var10) * 180.0D / Math.PI);
|
prevRotationPitch = rotationPitch = (float) (Math.atan2(var3, var10) * 180.0D / Math.PI);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
/**
|
|
||||||
* Sets the position and rotation. Only difference from the other one is no bounding on the rotation. Args: posX,
|
|
||||||
* posY, posZ, yaw, pitch
|
|
||||||
*/
|
|
||||||
public void setPositionAndRotation2(double par1, double par3, double par5, float par7, float par8, int par9)
|
|
||||||
{
|
|
||||||
this.setPosition(par1, par3, par5);
|
|
||||||
this.setRotation(par7, par8);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
/**
|
/**
|
||||||
|
@ -225,9 +208,11 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
EntityFX particle = new EntityCloudFX(worldObj, posX, posY, posZ, 0, 0, 0);
|
|
||||||
particle.setRBGColorF(colourRed + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()), colourGreen + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()), colourBlue + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()));
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(particle);
|
// EntityFX particle = new EntityCloudFX(worldObj, posX, posY, posZ, 0, 0, 0);
|
||||||
|
// particle.setRBGColorF(colourRed + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()), colourGreen + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()), colourBlue + 0.15f * (worldObj.rand.nextFloat() - worldObj.rand.nextFloat()));
|
||||||
|
// FMLClientHandler.instance().getClient().effectRenderer.addEffect(particle);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -282,21 +267,6 @@ public class EntityParticleBeam extends Entity implements IProjectile, IThrowabl
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public float getShadowSize()
|
|
||||||
{
|
|
||||||
return 0.0F;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void spawnHitParticles(String string, int i)
|
|
||||||
{
|
|
||||||
for (int particles = 0; particles < i; particles++)
|
|
||||||
{
|
|
||||||
worldObj.spawnParticle(string, posX, posY - (string == "portal" ? 1 : 0), posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public DamageSource getDamageSource()
|
public DamageSource getDamageSource()
|
||||||
{
|
{
|
||||||
return DamageSource.causeMobDamage(shootingEntity);
|
return DamageSource.causeMobDamage(shootingEntity);
|
||||||
|
|
|
@ -4,6 +4,7 @@ import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -81,15 +82,15 @@ public class ExplosionProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
worldObj.spawnParticle("mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
worldObj.spawnParticle(EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
worldObj.spawnParticle("explode", posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
worldObj.spawnParticle(EnumParticleTypes.EXPLOSION_LARGE, posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -4,7 +4,9 @@ import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.init.Blocks;
|
import net.minecraft.init.Blocks;
|
||||||
import net.minecraft.potion.Potion;
|
import net.minecraft.potion.Potion;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -60,9 +62,10 @@ public class FireProjectile extends EnergyBlastProjectile
|
||||||
{
|
{
|
||||||
for (int k = -1; k <= 1; k++)
|
for (int k = -1; k <= 1; k++)
|
||||||
{
|
{
|
||||||
if (worldObj.isAirBlock((int) this.posX + i, (int) this.posY + j, (int) this.posZ + k))
|
BlockPos newPos = new BlockPos(this.posX + i, this.posY + j, this.posZ + k);
|
||||||
|
if (worldObj.isAirBlock(newPos))
|
||||||
{
|
{
|
||||||
worldObj.setBlock((int) this.posX + i, (int) this.posY + j, (int) this.posZ + k, Blocks.fire);
|
worldObj.setBlockState(newPos, Blocks.fire.getDefaultState());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -97,12 +100,13 @@ public class FireProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (worldObj.isAirBlock((int) this.posX, (int) this.posY, (int) this.posZ))
|
BlockPos newPos = new BlockPos(this.posX, this.posY, this.posZ);
|
||||||
|
if (worldObj.isAirBlock(newPos))
|
||||||
{
|
{
|
||||||
worldObj.setBlock((int) this.posX, (int) this.posY, (int) this.posZ, Blocks.fire);
|
worldObj.setBlockState(newPos, Blocks.fire.getDefaultState());
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -79,14 +80,14 @@ public class HolyProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpell", posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB, posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.potion.Potion;
|
import net.minecraft.potion.Potion;
|
||||||
import net.minecraft.potion.PotionEffect;
|
import net.minecraft.potion.PotionEffect;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
||||||
|
@ -82,19 +83,14 @@ public class IceProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (worldObj.isAirBlock((int) this.posX, (int) this.posY, (int) this.posZ))
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
{
|
|
||||||
//worldObj.setBlock((int)this.posX, (int)this.posY, (int)this.posZ,Block.fire.blockID);
|
|
||||||
}
|
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "explode", posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.EXPLOSION_LARGE, posX, posY, posZ, gaussian(motionX), gaussian(motionY), gaussian(motionZ));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,7 @@ import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.effect.EntityLightningBolt;
|
import net.minecraft.entity.effect.EntityLightningBolt;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -83,15 +84,15 @@ public class LightningBoltProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpell", posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB, posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -7,6 +7,7 @@ import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.potion.Potion;
|
import net.minecraft.potion.Potion;
|
||||||
import net.minecraft.potion.PotionEffect;
|
import net.minecraft.potion.PotionEffect;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -87,15 +88,15 @@ public class MudProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpell", posX, posY, posZ, 0.5F, 0.297F, 0.0664F);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB, posX, posY, posZ, 0.5F, 0.297F, 0.0664F);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -7,6 +7,7 @@ import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.player.EntityPlayerMP;
|
import net.minecraft.entity.player.EntityPlayerMP;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
|
@ -131,15 +132,15 @@ public class TeleportProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "portal", posX, posY, posZ, -motionX, -motionY, -motionZ);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.PORTAL, posX, posY, posZ, -motionX, -motionY, -motionZ);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -6,6 +6,7 @@ import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.potion.PotionEffect;
|
import net.minecraft.potion.PotionEffect;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -77,14 +78,14 @@ public class WaterProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "portal", posX, posY, posZ, -motionX, -motionY, -motionZ);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.PORTAL, posX, posY, posZ, -motionX, -motionY, -motionZ);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
import net.minecraft.util.EnumParticleTypes;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -74,14 +75,14 @@ public class WindGustProjectile extends EnergyBlastProjectile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spawnHitParticles("magicCrit", 8);
|
spawnHitParticles(EnumParticleTypes.CRIT_MAGIC, 8);
|
||||||
this.setDead();
|
this.setDead();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFiringParticles()
|
public void doFiringParticles()
|
||||||
{
|
{
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpellAmbient", posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB_AMBIENT, posX + smallGauss(0.1D), posY + smallGauss(0.1D), posZ + smallGauss(0.1D), 0.5D, 0.5D, 0.5D);
|
||||||
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), "mobSpell", posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
SpellHelper.sendParticleToAllAround(worldObj, posX, posY, posZ, 30, worldObj.provider.getDimensionId(), EnumParticleTypes.SPELL_MOB, posX, posY, posZ, 1.0F, 1.0F, 1.0F);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -3,26 +3,24 @@ package WayofTime.alchemicalWizardry.common.items.armour;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.minecraft.client.model.ModelBiped;
|
import net.minecraft.client.model.ModelBiped;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumAction;
|
import net.minecraft.item.EnumAction;
|
||||||
import net.minecraft.item.Item;
|
|
||||||
import net.minecraft.item.ItemArmor;
|
import net.minecraft.item.ItemArmor;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.nbt.NBTTagList;
|
import net.minecraft.nbt.NBTTagList;
|
||||||
import net.minecraft.potion.Potion;
|
import net.minecraft.potion.Potion;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
import net.minecraft.util.IIcon;
|
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.ISpecialArmor;
|
import net.minecraftforge.common.ISpecialArmor;
|
||||||
import net.minecraftforge.common.util.Constants;
|
import net.minecraftforge.common.util.Constants;
|
||||||
import thaumcraft.api.IGoggles;
|
import net.minecraftforge.fml.common.Optional;
|
||||||
import thaumcraft.api.IRunicArmor;
|
import net.minecraftforge.fml.common.Optional.Interface;
|
||||||
import thaumcraft.api.nodes.IRevealer;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
import WayofTime.alchemicalWizardry.ModItems;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.energy.IAlchemyGoggles;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.IAlchemyGoggles;
|
||||||
|
@ -32,23 +30,12 @@ import WayofTime.alchemicalWizardry.api.items.interfaces.ILPGauge;
|
||||||
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
||||||
import WayofTime.alchemicalWizardry.common.items.sigil.SigilDivination;
|
import WayofTime.alchemicalWizardry.common.items.sigil.SigilDivination;
|
||||||
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaArmour;
|
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaArmour;
|
||||||
import cpw.mods.fml.common.Optional;
|
|
||||||
import cpw.mods.fml.common.Optional.Interface;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
@Optional.InterfaceList(value = {@Interface(iface = "thaumcraft.api.nodes.IRevealer", modid = "Thaumcraft"), @Interface(iface = "thaumcraft.api.IGoggles", modid = "Thaumcraft"), @Interface(iface = "thaumcraft.api.IRunicArmor", modid = "Thaumcraft")})
|
@Optional.InterfaceList(value = {@Interface(iface = "thaumcraft.api.nodes.IRevealer", modid = "Thaumcraft"), @Interface(iface = "thaumcraft.api.IGoggles", modid = "Thaumcraft"), @Interface(iface = "thaumcraft.api.IRunicArmor", modid = "Thaumcraft")})
|
||||||
public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialArmor, IBindable, IRevealer, IGoggles, IRunicArmor, ILPGauge
|
public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialArmor, IBindable, ILPGauge//, IRevealer, IGoggles, IRunicArmor
|
||||||
{
|
{
|
||||||
private static int invSize = 9;
|
private static int invSize = 9;
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
private IIcon helmetIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon plateIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon leggingsIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon bootsIcon;
|
|
||||||
|
|
||||||
public static boolean tryComplexRendering = true;
|
public static boolean tryComplexRendering = true;
|
||||||
|
|
||||||
|
@ -109,10 +96,10 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialA
|
||||||
if (((EntityPlayer) entityLiving).getItemInUseDuration() > 0)
|
if (((EntityPlayer) entityLiving).getItemInUseDuration() > 0)
|
||||||
{
|
{
|
||||||
EnumAction enumaction = ((EntityPlayer) entityLiving).getItemInUse().getItemUseAction();
|
EnumAction enumaction = ((EntityPlayer) entityLiving).getItemInUse().getItemUseAction();
|
||||||
if (enumaction == EnumAction.block)
|
if (enumaction == EnumAction.BLOCK)
|
||||||
{
|
{
|
||||||
this.model.heldItemRight = 3;
|
this.model.heldItemRight = 3;
|
||||||
} else if (enumaction == EnumAction.bow)
|
} else if (enumaction == EnumAction.BOW)
|
||||||
{
|
{
|
||||||
this.model.aimedBow = true;
|
this.model.aimedBow = true;
|
||||||
}
|
}
|
||||||
|
@ -128,44 +115,6 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialA
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SheathedItem");
|
|
||||||
this.helmetIcon = iconRegister.registerIcon("AlchemicalWizardry:BoundHelmet");
|
|
||||||
this.plateIcon = iconRegister.registerIcon("AlchemicalWizardry:BoundPlate");
|
|
||||||
this.leggingsIcon = iconRegister.registerIcon("AlchemicalWizardry:BoundLeggings");
|
|
||||||
this.bootsIcon = iconRegister.registerIcon("AlchemicalWizardry:BoundBoots");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int par1)
|
|
||||||
{
|
|
||||||
if (this.equals(ModItems.boundHelmet))
|
|
||||||
{
|
|
||||||
return this.helmetIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundPlate))
|
|
||||||
{
|
|
||||||
return this.plateIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundLeggings))
|
|
||||||
{
|
|
||||||
return this.leggingsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundBoots))
|
|
||||||
{
|
|
||||||
return this.bootsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean getIsRepairable(ItemStack par1ItemStack, ItemStack par2ItemStack)
|
public boolean getIsRepairable(ItemStack par1ItemStack, ItemStack par2ItemStack)
|
||||||
{
|
{
|
||||||
|
@ -594,66 +543,66 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialA
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Optional.Method(modid = "Thaumcraft")
|
// @Optional.Method(modid = "Thaumcraft")
|
||||||
public boolean hasIRevealer(ItemStack itemStack)
|
// public boolean hasIRevealer(ItemStack itemStack)
|
||||||
{
|
// {
|
||||||
ItemStack[] inv = getInternalInventory(itemStack);
|
// ItemStack[] inv = getInternalInventory(itemStack);
|
||||||
|
//
|
||||||
if (inv == null)
|
// if (inv == null)
|
||||||
{
|
// {
|
||||||
return false;
|
// return false;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
for (ItemStack item : inv)
|
// for (ItemStack item : inv)
|
||||||
{
|
// {
|
||||||
if (item == null)
|
// if (item == null)
|
||||||
{
|
// {
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if (item.getItem() instanceof IRevealer)
|
// if (item.getItem() instanceof IRevealer)
|
||||||
{
|
// {
|
||||||
return true;
|
// return true;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
return false;
|
// return false;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Optional.Method(modid = "Thaumcraft")
|
// @Optional.Method(modid = "Thaumcraft")
|
||||||
public boolean hasIGoggles(ItemStack itemStack)
|
// public boolean hasIGoggles(ItemStack itemStack)
|
||||||
{
|
// {
|
||||||
ItemStack[] inv = getInternalInventory(itemStack);
|
// ItemStack[] inv = getInternalInventory(itemStack);
|
||||||
|
//
|
||||||
if (inv == null)
|
// if (inv == null)
|
||||||
{
|
// {
|
||||||
return false;
|
// return false;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
int blood = getMaxBloodShardLevel(itemStack);
|
// int blood = getMaxBloodShardLevel(itemStack);
|
||||||
|
//
|
||||||
for (ItemStack item : inv)
|
// for (ItemStack item : inv)
|
||||||
{
|
// {
|
||||||
if (item == null)
|
// if (item == null)
|
||||||
{
|
// {
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
if (item.getItem() instanceof ArmourUpgrade && blood > 0)
|
// if (item.getItem() instanceof ArmourUpgrade && blood > 0)
|
||||||
{
|
// {
|
||||||
if (item.getItem() instanceof IGoggles)
|
// if (item.getItem() instanceof IGoggles)
|
||||||
{
|
// {
|
||||||
return true;
|
// return true;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if(((ArmourUpgrade)item.getItem()).isUpgrade())
|
// if(((ArmourUpgrade)item.getItem()).isUpgrade())
|
||||||
{
|
// {
|
||||||
blood--;
|
// blood--;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
return false;
|
// return false;
|
||||||
}
|
// }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canSeeLPBar(ItemStack itemStack)
|
public boolean canSeeLPBar(ItemStack itemStack)
|
||||||
|
@ -783,75 +732,75 @@ public class BoundArmour extends ItemArmor implements IAlchemyGoggles, ISpecialA
|
||||||
tag.setBoolean("invisible", invisible);
|
tag.setBoolean("invisible", invisible);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
// @Override
|
||||||
@Optional.Method(modid = "Thaumcraft")
|
// @Optional.Method(modid = "Thaumcraft")
|
||||||
public boolean showNodes(ItemStack itemstack, EntityLivingBase player)
|
// public boolean showNodes(ItemStack itemstack, EntityLivingBase player)
|
||||||
{
|
// {
|
||||||
return this.hasIRevealer(itemstack);
|
// return this.hasIRevealer(itemstack);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
@Optional.Method(modid = "Thaumcraft")
|
// @Optional.Method(modid = "Thaumcraft")
|
||||||
public boolean showIngamePopups(ItemStack itemstack, EntityLivingBase player)
|
// public boolean showIngamePopups(ItemStack itemstack, EntityLivingBase player)
|
||||||
{
|
// {
|
||||||
return this.hasIGoggles(itemstack);
|
// return this.hasIGoggles(itemstack);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
@Optional.Method(modid = "Thaumcraft")
|
// @Optional.Method(modid = "Thaumcraft")
|
||||||
public int getRunicCharge(ItemStack itemstack)
|
// public int getRunicCharge(ItemStack itemstack)
|
||||||
{
|
// {
|
||||||
ItemStack[] inv = this.getInternalInventory(itemstack);
|
// ItemStack[] inv = this.getInternalInventory(itemstack);
|
||||||
int shardLevel = this.getMaxBloodShardLevel(itemstack);
|
// int shardLevel = this.getMaxBloodShardLevel(itemstack);
|
||||||
int count = 0;
|
// int count = 0;
|
||||||
int harden = 0;
|
// int harden = 0;
|
||||||
|
//
|
||||||
if (inv == null)
|
// if (inv == null)
|
||||||
{
|
// {
|
||||||
return 0;
|
// return 0;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
for (ItemStack stack : inv)
|
// for (ItemStack stack : inv)
|
||||||
{
|
// {
|
||||||
if (count >= shardLevel)
|
// if (count >= shardLevel)
|
||||||
{
|
// {
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if (stack == null || !(stack.getItem() instanceof ArmourUpgrade))
|
// if (stack == null || !(stack.getItem() instanceof ArmourUpgrade))
|
||||||
{
|
// {
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if (stack.getItem() instanceof ItemArmor && ((ItemArmor) stack.getItem()).armorType != this.armorType)
|
// if (stack.getItem() instanceof ItemArmor && ((ItemArmor) stack.getItem()).armorType != this.armorType)
|
||||||
{
|
// {
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if (stack.hasTagCompound())
|
// if (stack.hasTagCompound())
|
||||||
{
|
// {
|
||||||
NBTTagCompound tag = stack.getTagCompound();
|
// NBTTagCompound tag = stack.getTagCompound();
|
||||||
|
//
|
||||||
int enchLvl = tag.getByte("RS.HARDEN");
|
// int enchLvl = tag.getByte("RS.HARDEN");
|
||||||
|
//
|
||||||
if (stack.getItem() instanceof IRunicArmor)
|
// if (stack.getItem() instanceof IRunicArmor)
|
||||||
{
|
// {
|
||||||
enchLvl += ((IRunicArmor) stack.getItem()).getRunicCharge(stack);
|
// enchLvl += ((IRunicArmor) stack.getItem()).getRunicCharge(stack);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
if (enchLvl > 0)
|
// if (enchLvl > 0)
|
||||||
{
|
// {
|
||||||
harden += enchLvl;
|
// harden += enchLvl;
|
||||||
if (((ArmourUpgrade) stack.getItem()).isUpgrade())
|
// if (((ArmourUpgrade) stack.getItem()).isUpgrade())
|
||||||
{
|
// {
|
||||||
count += 1;
|
// count += 1;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
return harden;
|
// return harden;
|
||||||
}
|
// }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean showIngameHUD(World world, ItemStack stack, EntityPlayer player)
|
public boolean showIngameHUD(World world, ItemStack stack, EntityPlayer player)
|
||||||
|
|
|
@ -20,15 +20,16 @@ import net.minecraft.item.EnumAction;
|
||||||
import net.minecraft.item.ItemArmor;
|
import net.minecraft.item.ItemArmor;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraft.world.biome.BiomeGenBase;
|
import net.minecraft.world.biome.BiomeGenBase;
|
||||||
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
|
||||||
import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler;
|
import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler;
|
||||||
import WayofTime.alchemicalWizardry.api.spell.APISpellHelper;
|
import WayofTime.alchemicalWizardry.api.spell.APISpellHelper;
|
||||||
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
||||||
import WayofTime.alchemicalWizardry.common.omega.OmegaParadigm;
|
import WayofTime.alchemicalWizardry.common.omega.OmegaParadigm;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
public abstract class OmegaArmour extends BoundArmour
|
public abstract class OmegaArmour extends BoundArmour
|
||||||
{
|
{
|
||||||
|
@ -90,10 +91,9 @@ public abstract class OmegaArmour extends BoundArmour
|
||||||
{
|
{
|
||||||
if(this.storeBiomeID())
|
if(this.storeBiomeID())
|
||||||
{
|
{
|
||||||
int xCoord = (int) Math.floor(player.posX);
|
BlockPos pos = player.getPosition();
|
||||||
int zCoord = (int) Math.floor(player.posZ);
|
|
||||||
|
|
||||||
BiomeGenBase biome = world.getBiomeGenForCoords(xCoord, zCoord);
|
BiomeGenBase biome = world.getBiomeGenForCoords(pos);
|
||||||
if(biome != null)
|
if(biome != null)
|
||||||
{
|
{
|
||||||
this.setBiomeIDStored(itemStack, biome.biomeID);
|
this.setBiomeIDStored(itemStack, biome.biomeID);
|
||||||
|
@ -376,10 +376,10 @@ public abstract class OmegaArmour extends BoundArmour
|
||||||
if (((EntityPlayer) entityLiving).getItemInUseDuration() > 0)
|
if (((EntityPlayer) entityLiving).getItemInUseDuration() > 0)
|
||||||
{
|
{
|
||||||
EnumAction enumaction = ((EntityPlayer) entityLiving).getItemInUse().getItemUseAction();
|
EnumAction enumaction = ((EntityPlayer) entityLiving).getItemInUse().getItemUseAction();
|
||||||
if (enumaction == EnumAction.block)
|
if (enumaction == EnumAction.BLOCK)
|
||||||
{
|
{
|
||||||
this.model.heldItemRight = 3;
|
this.model.heldItemRight = 3;
|
||||||
} else if (enumaction == EnumAction.bow)
|
} else if (enumaction == EnumAction.BOW)
|
||||||
{
|
{
|
||||||
this.model.aimedBow = true;
|
this.model.aimedBow = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,32 +3,19 @@ package WayofTime.alchemicalWizardry.common.items.armour;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import net.minecraft.client.model.ModelBiped;
|
import net.minecraft.client.model.ModelBiped;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.SharedMonsterAttributes;
|
import net.minecraft.entity.SharedMonsterAttributes;
|
||||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.IIcon;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaEarth;
|
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaEarth;
|
||||||
|
|
||||||
import com.google.common.collect.HashMultimap;
|
import com.google.common.collect.HashMultimap;
|
||||||
import com.google.common.collect.Multimap;
|
import com.google.common.collect.Multimap;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
public class OmegaArmourEarth extends OmegaArmour
|
public class OmegaArmourEarth extends OmegaArmour
|
||||||
{
|
{
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon helmetIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon plateIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon leggingsIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon bootsIcon;
|
|
||||||
|
|
||||||
public OmegaArmourEarth(int armorType)
|
public OmegaArmourEarth(int armorType)
|
||||||
{
|
{
|
||||||
super(armorType);
|
super(armorType);
|
||||||
|
@ -55,44 +42,6 @@ public class OmegaArmourEarth extends OmegaArmour
|
||||||
return new ModelOmegaEarth(0.5f, false, false, true, false);
|
return new ModelOmegaEarth(0.5f, false, false, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SheathedItem");
|
|
||||||
this.helmetIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaHelmet_earth");
|
|
||||||
this.plateIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaPlate_earth");
|
|
||||||
this.leggingsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaLeggings_earth");
|
|
||||||
this.bootsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaBoots_earth");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int par1)
|
|
||||||
{
|
|
||||||
if (this.equals(ModItems.boundHelmetEarth))
|
|
||||||
{
|
|
||||||
return this.helmetIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundPlateEarth))
|
|
||||||
{
|
|
||||||
return this.plateIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundLeggingsEarth))
|
|
||||||
{
|
|
||||||
return this.leggingsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundBootsEarth))
|
|
||||||
{
|
|
||||||
return this.bootsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Multimap getAttributeModifiers(ItemStack stack)
|
public Multimap getAttributeModifiers(ItemStack stack)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,34 +2,22 @@ package WayofTime.alchemicalWizardry.common.items.armour;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import com.google.common.collect.HashMultimap;
|
|
||||||
import com.google.common.collect.Multimap;
|
|
||||||
|
|
||||||
import net.minecraft.client.model.ModelBiped;
|
import net.minecraft.client.model.ModelBiped;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.enchantment.Enchantment;
|
import net.minecraft.enchantment.Enchantment;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.SharedMonsterAttributes;
|
import net.minecraft.entity.SharedMonsterAttributes;
|
||||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.IIcon;
|
|
||||||
import net.minecraft.world.biome.BiomeGenBase;
|
import net.minecraft.world.biome.BiomeGenBase;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaFire;
|
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaFire;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
import com.google.common.collect.HashMultimap;
|
||||||
|
import com.google.common.collect.Multimap;
|
||||||
|
|
||||||
public class OmegaArmourFire extends OmegaArmour
|
public class OmegaArmourFire extends OmegaArmour
|
||||||
{
|
{
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon helmetIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon plateIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon leggingsIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon bootsIcon;
|
|
||||||
|
|
||||||
public OmegaArmourFire(int armorType)
|
public OmegaArmourFire(int armorType)
|
||||||
{
|
{
|
||||||
super(armorType);
|
super(armorType);
|
||||||
|
@ -57,44 +45,6 @@ public class OmegaArmourFire extends OmegaArmour
|
||||||
return new ModelOmegaFire(0.5f, false, false, true, false);
|
return new ModelOmegaFire(0.5f, false, false, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SheathedItem");
|
|
||||||
this.helmetIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaHelmet_fire");
|
|
||||||
this.plateIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaPlate_fire");
|
|
||||||
this.leggingsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaLeggings_fire");
|
|
||||||
this.bootsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaBoots_fire");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int par1)
|
|
||||||
{
|
|
||||||
if (this.equals(ModItems.boundHelmetFire))
|
|
||||||
{
|
|
||||||
return this.helmetIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundPlateFire))
|
|
||||||
{
|
|
||||||
return this.plateIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundLeggingsFire))
|
|
||||||
{
|
|
||||||
return this.leggingsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundBootsFire))
|
|
||||||
{
|
|
||||||
return this.bootsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Multimap getAttributeModifiers(ItemStack stack)
|
public Multimap getAttributeModifiers(ItemStack stack)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,33 +2,21 @@ package WayofTime.alchemicalWizardry.common.items.armour;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import com.google.common.collect.HashMultimap;
|
|
||||||
import com.google.common.collect.Multimap;
|
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.model.ModelBiped;
|
import net.minecraft.client.model.ModelBiped;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.SharedMonsterAttributes;
|
import net.minecraft.entity.SharedMonsterAttributes;
|
||||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.IIcon;
|
|
||||||
import net.minecraft.world.biome.BiomeGenBase;
|
import net.minecraft.world.biome.BiomeGenBase;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaWater;
|
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaWater;
|
||||||
|
|
||||||
|
import com.google.common.collect.HashMultimap;
|
||||||
|
import com.google.common.collect.Multimap;
|
||||||
|
|
||||||
public class OmegaArmourWater extends OmegaArmour
|
public class OmegaArmourWater extends OmegaArmour
|
||||||
{
|
{
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon helmetIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon plateIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon leggingsIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon bootsIcon;
|
|
||||||
|
|
||||||
public OmegaArmourWater(int armorType)
|
public OmegaArmourWater(int armorType)
|
||||||
{
|
{
|
||||||
super(armorType);
|
super(armorType);
|
||||||
|
@ -55,44 +43,6 @@ public class OmegaArmourWater extends OmegaArmour
|
||||||
return new ModelOmegaWater(0.5f, false, false, true, false);
|
return new ModelOmegaWater(0.5f, false, false, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SheathedItem");
|
|
||||||
this.helmetIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaHelmet_water");
|
|
||||||
this.plateIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaPlate_water");
|
|
||||||
this.leggingsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaLeggings_water");
|
|
||||||
this.bootsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaBoots_water");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int par1)
|
|
||||||
{
|
|
||||||
if (this.equals(ModItems.boundHelmetWater))
|
|
||||||
{
|
|
||||||
return this.helmetIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundPlateWater))
|
|
||||||
{
|
|
||||||
return this.plateIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundLeggingsWater))
|
|
||||||
{
|
|
||||||
return this.leggingsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundBootsWater))
|
|
||||||
{
|
|
||||||
return this.bootsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Multimap getAttributeModifiers(ItemStack stack)
|
public Multimap getAttributeModifiers(ItemStack stack)
|
||||||
{
|
{
|
||||||
|
|
|
@ -3,32 +3,19 @@ package WayofTime.alchemicalWizardry.common.items.armour;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import net.minecraft.client.model.ModelBiped;
|
import net.minecraft.client.model.ModelBiped;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.SharedMonsterAttributes;
|
import net.minecraft.entity.SharedMonsterAttributes;
|
||||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.IIcon;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaWind;
|
import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaWind;
|
||||||
|
|
||||||
import com.google.common.collect.HashMultimap;
|
import com.google.common.collect.HashMultimap;
|
||||||
import com.google.common.collect.Multimap;
|
import com.google.common.collect.Multimap;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
public class OmegaArmourWind extends OmegaArmour
|
public class OmegaArmourWind extends OmegaArmour
|
||||||
{
|
{
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon helmetIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon plateIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon leggingsIcon;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
private IIcon bootsIcon;
|
|
||||||
|
|
||||||
public OmegaArmourWind(int armorType)
|
public OmegaArmourWind(int armorType)
|
||||||
{
|
{
|
||||||
super(armorType);
|
super(armorType);
|
||||||
|
@ -55,44 +42,6 @@ public class OmegaArmourWind extends OmegaArmour
|
||||||
return new ModelOmegaWind(0.5f, false, false, true, false);
|
return new ModelOmegaWind(0.5f, false, false, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SheathedItem");
|
|
||||||
this.helmetIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaHelmet_wind");
|
|
||||||
this.plateIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaPlate_wind");
|
|
||||||
this.leggingsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaLeggings_wind");
|
|
||||||
this.bootsIcon = iconRegister.registerIcon("AlchemicalWizardry:OmegaBoots_wind");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int par1)
|
|
||||||
{
|
|
||||||
if (this.equals(ModItems.boundHelmetWind))
|
|
||||||
{
|
|
||||||
return this.helmetIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundPlateWind))
|
|
||||||
{
|
|
||||||
return this.plateIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundLeggingsWind))
|
|
||||||
{
|
|
||||||
return this.leggingsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.equals(ModItems.boundBootsWind))
|
|
||||||
{
|
|
||||||
return this.bootsIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Multimap getAttributeModifiers(ItemStack stack)
|
public Multimap getAttributeModifiers(ItemStack stack)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,36 +1,34 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.energy;
|
package WayofTime.alchemicalWizardry.common.items.energy;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.LinkedList;
|
||||||
import WayofTime.alchemicalWizardry.api.Int3;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.energy.*;
|
|
||||||
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
|
||||||
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.ChatComponentText;
|
import net.minecraft.util.ChatComponentText;
|
||||||
import net.minecraft.util.ChatComponentTranslation;
|
import net.minecraft.util.ChatComponentTranslation;
|
||||||
import net.minecraft.util.IIcon;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.Int3;
|
||||||
import java.util.LinkedList;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.IReagentHandler;
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
|
||||||
|
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
||||||
|
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
|
||||||
|
|
||||||
public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
public static final int maxDistance = 6;
|
public static final int maxDistance = 6;
|
||||||
|
|
||||||
public IIcon crystalBody;
|
|
||||||
public IIcon crystalLabel;
|
|
||||||
|
|
||||||
public ItemAttunedCrystal()
|
public ItemAttunedCrystal()
|
||||||
{
|
{
|
||||||
super();
|
super();
|
||||||
|
@ -78,62 +76,6 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.crystalBody = iconRegister.registerIcon("AlchemicalWizardry:AttunedCrystal1");
|
|
||||||
this.crystalLabel = iconRegister.registerIcon("AlchemicalWizardry:AttunedCrystal2");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public int getColorFromItemStack(ItemStack stack, int pass)
|
|
||||||
{
|
|
||||||
switch (pass)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return 256 * (256 * 255 + 255) + 255;
|
|
||||||
case 1:
|
|
||||||
Reagent reagent = this.getReagent(stack);
|
|
||||||
if (reagent != null)
|
|
||||||
{
|
|
||||||
return (reagent.getColourRed() * 256 * 256 + reagent.getColourGreen() * 256 + reagent.getColourBlue());
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 256 * (256 * 255 + 255) + 255;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public boolean requiresMultipleRenderPasses()
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public int getRenderPasses(int meta)
|
|
||||||
{
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIcon(ItemStack stack, int pass)
|
|
||||||
{
|
|
||||||
switch (pass)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return this.crystalBody;
|
|
||||||
case 1:
|
|
||||||
return this.crystalLabel;
|
|
||||||
}
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player)
|
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player)
|
||||||
{
|
{
|
||||||
|
@ -157,11 +99,9 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
int x = movingobjectposition.blockX;
|
BlockPos pos = movingobjectposition.func_178782_a();
|
||||||
int y = movingobjectposition.blockY;
|
|
||||||
int z = movingobjectposition.blockZ;
|
|
||||||
|
|
||||||
TileEntity tile = world.getTileEntity(x, y, z);
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
|
|
||||||
if (!(tile instanceof IReagentHandler))
|
if (!(tile instanceof IReagentHandler))
|
||||||
{
|
{
|
||||||
|
@ -172,7 +112,7 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
|
|
||||||
if (player.isSneaking())
|
if (player.isSneaking())
|
||||||
{
|
{
|
||||||
ReagentContainerInfo[] infos = relay.getContainerInfo(ForgeDirection.UNKNOWN);
|
ReagentContainerInfo[] infos = relay.getContainerInfo(EnumFacing.UP);
|
||||||
if (infos != null)
|
if (infos != null)
|
||||||
{
|
{
|
||||||
List<Reagent> reagentList = new LinkedList();
|
List<Reagent> reagentList = new LinkedList();
|
||||||
|
@ -223,13 +163,13 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
return itemStack;
|
return itemStack;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dimension != world.provider.getDimensionId() || Math.abs(coords.xCoord - x) > maxDistance || Math.abs(coords.yCoord - y) > maxDistance || Math.abs(coords.zCoord - z) > maxDistance)
|
if (dimension != world.provider.getDimensionId() || Math.abs(coords.xCoord - pos.getX()) > maxDistance || Math.abs(coords.yCoord - pos.getY()) > maxDistance || Math.abs(coords.zCoord - pos.getZ()) > maxDistance)
|
||||||
{
|
{
|
||||||
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.toofar"));
|
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.toofar"));
|
||||||
return itemStack;
|
return itemStack;
|
||||||
}
|
}
|
||||||
|
|
||||||
TileEntity pastTile = world.getTileEntity(coords.xCoord, coords.yCoord, coords.zCoord);
|
TileEntity pastTile = world.getTileEntity(new BlockPos(coords.xCoord, coords.yCoord, coords.zCoord));
|
||||||
if (!(pastTile instanceof TEReagentConduit))
|
if (!(pastTile instanceof TEReagentConduit))
|
||||||
{
|
{
|
||||||
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.cannotfind"));
|
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.cannotfind"));
|
||||||
|
@ -247,10 +187,10 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
|
|
||||||
if (player.isSneaking())
|
if (player.isSneaking())
|
||||||
{
|
{
|
||||||
pastRelay.removeReagentDestinationViaActual(reagent, x, y, z);
|
pastRelay.removeReagentDestinationViaActual(reagent, pos);
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
if (pastRelay.addReagentDestinationViaActual(reagent, x, y, z))
|
if (pastRelay.addReagentDestinationViaActual(reagent, pos))
|
||||||
{
|
{
|
||||||
player.addChatComponentMessage(new ChatComponentText(StatCollector.translateToLocal("message.attunedcrystal.linked") + " " + reagent.name));
|
player.addChatComponentMessage(new ChatComponentText(StatCollector.translateToLocal("message.attunedcrystal.linked") + " " + reagent.name));
|
||||||
} else
|
} else
|
||||||
|
@ -258,13 +198,13 @@ public class ItemAttunedCrystal extends Item implements IReagentManipulator
|
||||||
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.noconnections"));
|
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.error.noconnections"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
world.markBlockForUpdate(coords.xCoord, coords.yCoord, coords.zCoord);
|
world.markBlockForUpdate(new BlockPos(coords.xCoord, coords.yCoord, coords.zCoord));
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
int dimension = world.provider.getDimensionId();
|
int dimension = world.provider.getDimensionId();
|
||||||
|
|
||||||
this.setDimension(itemStack, dimension);
|
this.setDimension(itemStack, dimension);
|
||||||
this.setCoordinates(itemStack, new Int3(x, y, z));
|
this.setCoordinates(itemStack, new Int3(pos));
|
||||||
|
|
||||||
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.linking"));
|
player.addChatComponentMessage(new ChatComponentTranslation("message.attunedcrystal.linking"));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +1,19 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.energy;
|
package WayofTime.alchemicalWizardry.common.items.energy;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
|
||||||
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.ChatComponentTranslation;
|
import net.minecraft.util.ChatComponentTranslation;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
||||||
|
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
|
||||||
|
|
||||||
public class ItemDestinationClearer extends Item implements IReagentManipulator
|
public class ItemDestinationClearer extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
|
@ -26,13 +24,6 @@ public class ItemDestinationClearer extends Item implements IReagentManipulator
|
||||||
this.maxStackSize = 1;
|
this.maxStackSize = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:TankClearer");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||||
{
|
{
|
||||||
|
@ -57,11 +48,9 @@ public class ItemDestinationClearer extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
int x = movingobjectposition.blockX;
|
BlockPos pos = movingobjectposition.func_178782_a();
|
||||||
int y = movingobjectposition.blockY;
|
|
||||||
int z = movingobjectposition.blockZ;
|
|
||||||
|
|
||||||
TileEntity tile = world.getTileEntity(x, y, z);
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
|
|
||||||
if (!(tile instanceof TEReagentConduit))
|
if (!(tile instanceof TEReagentConduit))
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,33 +1,29 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.energy;
|
package WayofTime.alchemicalWizardry.common.items.energy;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.LinkedList;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.energy.*;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.ChatComponentText;
|
import net.minecraft.util.ChatComponentText;
|
||||||
import net.minecraft.util.IIcon;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ISegmentedReagentHandler;
|
||||||
import java.util.LinkedList;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
|
||||||
|
import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator;
|
||||||
|
|
||||||
public class ItemTankSegmenter extends Item implements IReagentManipulator
|
public class ItemTankSegmenter extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon crystalBody;
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon crystalLabel;
|
|
||||||
|
|
||||||
public ItemTankSegmenter()
|
public ItemTankSegmenter()
|
||||||
{
|
{
|
||||||
super();
|
super();
|
||||||
|
@ -64,62 +60,6 @@ public class ItemTankSegmenter extends Item implements IReagentManipulator
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.crystalBody = iconRegister.registerIcon("AlchemicalWizardry:TankSegmenter1");
|
|
||||||
this.crystalLabel = iconRegister.registerIcon("AlchemicalWizardry:TankSegmenter2");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public int getColorFromItemStack(ItemStack stack, int pass)
|
|
||||||
{
|
|
||||||
switch (pass)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return 256 * (256 * 255 + 255) + 255;
|
|
||||||
case 1:
|
|
||||||
Reagent reagent = this.getReagent(stack);
|
|
||||||
if (reagent != null)
|
|
||||||
{
|
|
||||||
return (reagent.getColourRed() * 256 * 256 + reagent.getColourGreen() * 256 + reagent.getColourBlue());
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 256 * (256 * 255 + 255) + 255;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public boolean requiresMultipleRenderPasses()
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public int getRenderPasses(int meta)
|
|
||||||
{
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIcon(ItemStack stack, int pass)
|
|
||||||
{
|
|
||||||
switch (pass)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return this.crystalBody;
|
|
||||||
case 1:
|
|
||||||
return this.crystalLabel;
|
|
||||||
}
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player)
|
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player)
|
||||||
{
|
{
|
||||||
|
@ -136,10 +76,8 @@ public class ItemTankSegmenter extends Item implements IReagentManipulator
|
||||||
{
|
{
|
||||||
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
|
||||||
{
|
{
|
||||||
int x = movingobjectposition.blockX;
|
BlockPos pos = movingobjectposition.func_178782_a();
|
||||||
int y = movingobjectposition.blockY;
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
int z = movingobjectposition.blockZ;
|
|
||||||
TileEntity tile = world.getTileEntity(x, y, z);
|
|
||||||
if (!(tile instanceof ISegmentedReagentHandler))
|
if (!(tile instanceof ISegmentedReagentHandler))
|
||||||
{
|
{
|
||||||
return itemStack;
|
return itemStack;
|
||||||
|
@ -148,7 +86,7 @@ public class ItemTankSegmenter extends Item implements IReagentManipulator
|
||||||
|
|
||||||
if (player.isSneaking())
|
if (player.isSneaking())
|
||||||
{
|
{
|
||||||
ReagentContainerInfo[] infos = reagentHandler.getContainerInfo(ForgeDirection.UNKNOWN);
|
ReagentContainerInfo[] infos = reagentHandler.getContainerInfo(EnumFacing.UP);
|
||||||
if (infos != null)
|
if (infos != null)
|
||||||
{
|
{
|
||||||
List<Reagent> reagentList = new LinkedList();
|
List<Reagent> reagentList = new LinkedList();
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.ArrayList;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyPotionHelper;
|
import java.util.Iterator;
|
||||||
import com.google.common.collect.HashMultimap;
|
import java.util.List;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
import java.util.Map;
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
import java.util.Map.Entry;
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||||
import net.minecraft.entity.ai.attributes.IAttribute;
|
import net.minecraft.entity.ai.attributes.IAttribute;
|
||||||
|
@ -23,12 +23,10 @@ import net.minecraft.util.EnumChatFormatting;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.Constants;
|
import net.minecraftforge.common.util.Constants;
|
||||||
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyPotionHelper;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import com.google.common.collect.HashMultimap;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Map.Entry;
|
|
||||||
|
|
||||||
public class AlchemyFlask extends Item
|
public class AlchemyFlask extends Item
|
||||||
{
|
{
|
||||||
|
@ -40,13 +38,6 @@ public class AlchemyFlask extends Item
|
||||||
setCreativeTab(AlchemicalWizardry.tabBloodMagic);
|
setCreativeTab(AlchemicalWizardry.tabBloodMagic);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:PotionFlask");
|
|
||||||
}
|
|
||||||
|
|
||||||
public static ArrayList<AlchemyPotionHelper> getEffects(ItemStack par1ItemStack)
|
public static ArrayList<AlchemyPotionHelper> getEffects(ItemStack par1ItemStack)
|
||||||
{
|
{
|
||||||
if (par1ItemStack.hasTagCompound() && par1ItemStack.getTagCompound().hasKey("CustomFlaskEffects"))
|
if (par1ItemStack.hasTagCompound() && par1ItemStack.getTagCompound().hasKey("CustomFlaskEffects"))
|
||||||
|
@ -149,10 +140,10 @@ public class AlchemyFlask extends Item
|
||||||
{
|
{
|
||||||
if (this.isPotionThrowable(par1ItemStack))
|
if (this.isPotionThrowable(par1ItemStack))
|
||||||
{
|
{
|
||||||
return EnumAction.none;
|
return EnumAction.NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
return EnumAction.drink;
|
return EnumAction.DRINK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -283,7 +274,7 @@ public class AlchemyFlask extends Item
|
||||||
PotionEffect potioneffect = (PotionEffect) iterator.next();
|
PotionEffect potioneffect = (PotionEffect) iterator.next();
|
||||||
String s = StatCollector.translateToLocal(potioneffect.getEffectName()).trim();
|
String s = StatCollector.translateToLocal(potioneffect.getEffectName()).trim();
|
||||||
Potion potion = Potion.potionTypes[potioneffect.getPotionID()];
|
Potion potion = Potion.potionTypes[potioneffect.getPotionID()];
|
||||||
Map map = potion.func_111186_k();
|
Map map = potion.getAttributeModifierMap();
|
||||||
|
|
||||||
if (map != null && map.size() > 0)
|
if (map != null && map.size() > 0)
|
||||||
{
|
{
|
||||||
|
@ -293,7 +284,7 @@ public class AlchemyFlask extends Item
|
||||||
{
|
{
|
||||||
Entry entry = (Entry) iterator1.next();
|
Entry entry = (Entry) iterator1.next();
|
||||||
AttributeModifier attributemodifier = (AttributeModifier) entry.getValue();
|
AttributeModifier attributemodifier = (AttributeModifier) entry.getValue();
|
||||||
AttributeModifier attributemodifier1 = new AttributeModifier(attributemodifier.getName(), potion.func_111183_a(potioneffect.getAmplifier(), attributemodifier), attributemodifier.getOperation());
|
AttributeModifier attributemodifier1 = new AttributeModifier(attributemodifier.getName(), potion.getAttributeModifierAmount(potioneffect.getAmplifier(), attributemodifier), attributemodifier.getOperation());
|
||||||
hashmultimap.put(((IAttribute) entry.getKey()).getAttributeUnlocalizedName(), attributemodifier1);
|
hashmultimap.put(((IAttribute) entry.getKey()).getAttributeUnlocalizedName(), attributemodifier1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -345,11 +336,11 @@ public class AlchemyFlask extends Item
|
||||||
|
|
||||||
if (d0 > 0.0D)
|
if (d0 > 0.0D)
|
||||||
{
|
{
|
||||||
par3List.add(EnumChatFormatting.BLUE + StatCollector.translateToLocalFormatted("attribute.modifier.plus." + attributemodifier2.getOperation(), new Object[]{ItemStack.field_111284_a.format(d1), StatCollector.translateToLocal("attribute.name." + (String) entry1.getKey())}));
|
par3List.add(EnumChatFormatting.BLUE + StatCollector.translateToLocalFormatted("attribute.modifier.plus." + attributemodifier2.getOperation(), new Object[]{ItemStack.DECIMALFORMAT.format(d1), StatCollector.translateToLocal("attribute.name." + (String) entry1.getKey())}));
|
||||||
} else if (d0 < 0.0D)
|
} else if (d0 < 0.0D)
|
||||||
{
|
{
|
||||||
d1 *= -1.0D;
|
d1 *= -1.0D;
|
||||||
par3List.add(EnumChatFormatting.RED + StatCollector.translateToLocalFormatted("attribute.modifier.take." + attributemodifier2.getOperation(), new Object[]{ItemStack.field_111284_a.format(d1), StatCollector.translateToLocal("attribute.name." + (String) entry1.getKey())}));
|
par3List.add(EnumChatFormatting.RED + StatCollector.translateToLocalFormatted("attribute.modifier.take." + attributemodifier2.getOperation(), new Object[]{ItemStack.DECIMALFORMAT.format(d1), StatCollector.translateToLocal("attribute.name." + (String) entry1.getKey())}));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,17 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.ModItems;
|
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumChatFormatting;
|
import net.minecraft.util.EnumChatFormatting;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
|
|
||||||
import org.lwjgl.input.Keyboard;
|
import org.lwjgl.input.Keyboard;
|
||||||
|
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
||||||
|
|
||||||
public class AlchemyReagent extends Item
|
public class AlchemyReagent extends Item
|
||||||
{
|
{
|
||||||
|
@ -24,61 +22,6 @@ public class AlchemyReagent extends Item
|
||||||
this.setMaxStackSize(64);
|
this.setMaxStackSize(64);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
if (this == ModItems.incendium)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Incendium");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.magicales)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Magicales");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.sanctus)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Sanctus");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.aether)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Aether");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.simpleCatalyst)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SimpleCatalyst");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.crepitous)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Crepitous");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.crystallos)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Crystallos");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.terrae)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Terrae");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.aquasalus)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Aquasalus");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this == ModItems.tennebrae)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:Tennebrae");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class AverageLengtheningCatalyst extends LengtheningCatalyst
|
public class AverageLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class AverageLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
super(2);
|
super(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:AverageLengtheningCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class AveragePowerCatalyst extends PowerCatalyst
|
public class AveragePowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class AveragePowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
super(2);
|
super(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:AveragePowerCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,11 +1,8 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
|
import net.minecraft.item.Item;
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import WayofTime.alchemicalWizardry.common.alchemy.ICombinationalCatalyst;
|
import WayofTime.alchemicalWizardry.common.alchemy.ICombinationalCatalyst;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.item.Item;
|
|
||||||
|
|
||||||
public class CombinationalCatalyst extends Item implements ICombinationalCatalyst
|
public class CombinationalCatalyst extends Item implements ICombinationalCatalyst
|
||||||
{
|
{
|
||||||
|
@ -15,10 +12,4 @@ public class CombinationalCatalyst extends Item implements ICombinationalCatalys
|
||||||
this.setCreativeTab(AlchemicalWizardry.tabBloodMagic);
|
this.setCreativeTab(AlchemicalWizardry.tabBloodMagic);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:CombinationalCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class EnhancedFillingAgent extends WeakFillingAgent
|
public class EnhancedFillingAgent extends WeakFillingAgent
|
||||||
{
|
{
|
||||||
|
@ -41,11 +38,4 @@ public class EnhancedFillingAgent extends WeakFillingAgent
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:EnhancedFillingAgent");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class GreaterLengtheningCatalyst extends LengtheningCatalyst
|
public class GreaterLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class GreaterLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
super(3);
|
super(3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:GreaterLengtheningCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class GreaterPowerCatalyst extends PowerCatalyst
|
public class GreaterPowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class GreaterPowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
super(3);
|
super(3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:GreaterPowerCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class MundaneLengtheningCatalyst extends LengtheningCatalyst
|
public class MundaneLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class MundaneLengtheningCatalyst extends LengtheningCatalyst
|
||||||
{
|
{
|
||||||
super(1);
|
super(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:MundaneLengtheningCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class MundanePowerCatalyst extends PowerCatalyst
|
public class MundanePowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class MundanePowerCatalyst extends PowerCatalyst
|
||||||
{
|
{
|
||||||
super(1);
|
super(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:MundanePowerCatalyst");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,18 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
|
||||||
import WayofTime.alchemicalWizardry.common.IBindingAgent;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumChatFormatting;
|
import net.minecraft.util.EnumChatFormatting;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
|
|
||||||
import org.lwjgl.input.Keyboard;
|
import org.lwjgl.input.Keyboard;
|
||||||
|
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
|
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
||||||
|
import WayofTime.alchemicalWizardry.common.IBindingAgent;
|
||||||
|
|
||||||
public class StandardBindingAgent extends Item implements IBindingAgent
|
public class StandardBindingAgent extends Item implements IBindingAgent
|
||||||
{
|
{
|
||||||
|
@ -29,13 +28,6 @@ public class StandardBindingAgent extends Item implements IBindingAgent
|
||||||
return (float) Math.pow(0.65, potions);
|
return (float) Math.pow(0.65, potions);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:StandardBindingAgent");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class StandardFillingAgent extends WeakFillingAgent
|
public class StandardFillingAgent extends WeakFillingAgent
|
||||||
{
|
{
|
||||||
|
@ -28,11 +25,4 @@ public class StandardFillingAgent extends WeakFillingAgent
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:StandardFillingAgent");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
|
|
||||||
public class WeakBindingAgent extends StandardBindingAgent
|
public class WeakBindingAgent extends StandardBindingAgent
|
||||||
{
|
{
|
||||||
|
@ -16,11 +13,4 @@ public class WeakBindingAgent extends StandardBindingAgent
|
||||||
{
|
{
|
||||||
return (float) Math.pow(0.4, potions);
|
return (float) Math.pow(0.4, potions);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:WeakBindingAgent");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,20 +1,19 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.potion;
|
package WayofTime.alchemicalWizardry.common.items.potion;
|
||||||
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import java.util.List;
|
||||||
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
import java.util.Random;
|
||||||
import WayofTime.alchemicalWizardry.common.IFillingAgent;
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumChatFormatting;
|
import net.minecraft.util.EnumChatFormatting;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
|
|
||||||
import org.lwjgl.input.Keyboard;
|
import org.lwjgl.input.Keyboard;
|
||||||
|
|
||||||
import java.util.List;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import java.util.Random;
|
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
|
||||||
|
import WayofTime.alchemicalWizardry.common.IFillingAgent;
|
||||||
|
|
||||||
public class WeakFillingAgent extends Item implements IFillingAgent
|
public class WeakFillingAgent extends Item implements IFillingAgent
|
||||||
{
|
{
|
||||||
|
@ -48,13 +47,6 @@ public class WeakFillingAgent extends Item implements IFillingAgent
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:WeakFillingAgent");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package WayofTime.alchemicalWizardry.common.items.routing;
|
package WayofTime.alchemicalWizardry.common.items.routing;
|
||||||
|
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
|
||||||
import codechicken.lib.render.TextureUtils.IIconRegister;
|
|
||||||
|
|
||||||
public class InputRoutingFocus extends RoutingFocus
|
public class InputRoutingFocus extends RoutingFocus
|
||||||
{
|
{
|
||||||
|
@ -10,11 +7,4 @@ public class InputRoutingFocus extends RoutingFocus
|
||||||
{
|
{
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:InputRoutingFocus");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,30 +2,23 @@ package WayofTime.alchemicalWizardry.common.items.routing;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
||||||
import net.minecraft.creativetab.CreativeTabs;
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.IIcon;
|
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import WayofTime.alchemicalWizardry.api.RoutingFocusLogic;
|
import WayofTime.alchemicalWizardry.api.RoutingFocusLogic;
|
||||||
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitDefault;
|
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitDefault;
|
||||||
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitGlobal;
|
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitGlobal;
|
||||||
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitIgnMeta;
|
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitIgnMeta;
|
||||||
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitMatchNBT;
|
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitMatchNBT;
|
||||||
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitModItems;
|
import WayofTime.alchemicalWizardry.common.routing.RoutingFocusLogicLimitModItems;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
|
|
||||||
public class OutputRoutingFocus extends RoutingFocus implements ILimitedRoutingFocus
|
public class OutputRoutingFocus extends RoutingFocus implements ILimitedRoutingFocus
|
||||||
{
|
{
|
||||||
IIcon modItemIcon;
|
|
||||||
IIcon ignMetaIcon;
|
|
||||||
IIcon matchNBTIcon;
|
|
||||||
IIcon globalIcon;
|
|
||||||
|
|
||||||
public OutputRoutingFocus()
|
public OutputRoutingFocus()
|
||||||
{
|
{
|
||||||
super();
|
super();
|
||||||
|
@ -46,36 +39,6 @@ public class OutputRoutingFocus extends RoutingFocus implements ILimitedRoutingF
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:OutputRoutingFocus");
|
|
||||||
this.modItemIcon = iconRegister.registerIcon("AlchemicalWizardry:OutputRoutingFocusModItems");
|
|
||||||
this.ignMetaIcon = iconRegister.registerIcon("AlchemicalWizardry:OutputRoutingFocusIgnMeta");
|
|
||||||
this.matchNBTIcon = iconRegister.registerIcon("AlchemicalWizardry:OutputRoutingFocusMatchNBT");
|
|
||||||
this.globalIcon = iconRegister.registerIcon("AlchemicalWizardry:OutputRoutingFocusGlobal");
|
|
||||||
}
|
|
||||||
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public IIcon getIconFromDamage(int damage)
|
|
||||||
{
|
|
||||||
switch(damage)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return this.itemIcon;
|
|
||||||
case 1:
|
|
||||||
return this.modItemIcon;
|
|
||||||
case 2:
|
|
||||||
return this.ignMetaIcon;
|
|
||||||
case 3:
|
|
||||||
return this.matchNBTIcon;
|
|
||||||
case 4:
|
|
||||||
return this.globalIcon;
|
|
||||||
}
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUnlocalizedName(ItemStack itemStack)
|
public String getUnlocalizedName(ItemStack itemStack)
|
||||||
{
|
{
|
||||||
|
|
|
@ -7,14 +7,13 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.nbt.NBTTagList;
|
import net.minecraft.nbt.NBTTagList;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.MathHelper;
|
import net.minecraft.util.MathHelper;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
|
||||||
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
|
||||||
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
import WayofTime.alchemicalWizardry.common.items.EnergyItems;
|
||||||
import codechicken.lib.render.TextureUtils.IIconRegister;
|
|
||||||
|
|
||||||
public class SigilOfHolding extends EnergyItems
|
public class SigilOfHolding extends EnergyItems
|
||||||
{
|
{
|
||||||
|
@ -30,51 +29,21 @@ public class SigilOfHolding extends EnergyItems
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SideOnly(Side.CLIENT)
|
public void addInformation(ItemStack stack, EntityPlayer player, List par3List, boolean par4)
|
||||||
public void registerIcons(IIconRegister iconRegister)
|
|
||||||
{
|
|
||||||
this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:SigilOfHolding");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public IIcon getIcon(ItemStack stack, int renderPass, EntityPlayer player, ItemStack usingItem, int useRemaining)
|
|
||||||
{
|
|
||||||
if (!(stack.getTagCompound() == null))
|
|
||||||
{
|
|
||||||
ItemStack[] inv = getInternalInventory(stack);
|
|
||||||
|
|
||||||
if (inv == null)
|
|
||||||
{
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
ItemStack item = getCurrentSigil(stack);
|
|
||||||
|
|
||||||
if (item != null)
|
|
||||||
{
|
|
||||||
return item.getIconIndex();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.itemIcon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
|
||||||
{
|
{
|
||||||
par3List.add(StatCollector.translateToLocal("tooltip.sigilofholding.desc"));
|
par3List.add(StatCollector.translateToLocal("tooltip.sigilofholding.desc"));
|
||||||
|
|
||||||
if (!(par1ItemStack.getTagCompound() == null))
|
if (!(stack.getTagCompound() == null))
|
||||||
{
|
{
|
||||||
par3List.add(StatCollector.translateToLocal("tooltip.owner.currentowner") + " " + par1ItemStack.getTagCompound().getString("ownerName"));
|
par3List.add(StatCollector.translateToLocal("tooltip.owner.currentowner") + " " + stack.getTagCompound().getString("ownerName"));
|
||||||
ItemStack[] inv = getInternalInventory(par1ItemStack);
|
ItemStack[] inv = getInternalInventory(stack);
|
||||||
|
|
||||||
if (inv == null)
|
if (inv == null)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
int currentSlot = getCurrentItem(par1ItemStack);
|
int currentSlot = getCurrentItem(stack);
|
||||||
ItemStack item = inv[currentSlot];
|
ItemStack item = inv[currentSlot];
|
||||||
|
|
||||||
if (item != null)
|
if (item != null)
|
||||||
|
@ -93,12 +62,12 @@ public class SigilOfHolding extends EnergyItems
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10)
|
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ)
|
||||||
{
|
{
|
||||||
if (checkAndSetItemOwner(par1ItemStack, par2EntityPlayer))
|
if (checkAndSetItemOwner(stack, player))
|
||||||
{
|
{
|
||||||
int currentSlot = getCurrentItem(par1ItemStack);
|
int currentSlot = getCurrentItem(stack);
|
||||||
ItemStack[] inv = getInternalInventory(par1ItemStack);
|
ItemStack[] inv = getInternalInventory(stack);
|
||||||
|
|
||||||
if (inv == null)
|
if (inv == null)
|
||||||
{
|
{
|
||||||
|
@ -112,9 +81,9 @@ public class SigilOfHolding extends EnergyItems
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean bool = itemUsed.getItem().onItemUse(par1ItemStack, par2EntityPlayer, par3World, par4, par5, par6, par7, par8, par9, par10);
|
boolean bool = itemUsed.getItem().onItemUse(stack, player, world, pos, side, hitX, hitY, hitZ);
|
||||||
|
|
||||||
saveInventory(par1ItemStack, inv);
|
saveInventory(stack, inv);
|
||||||
|
|
||||||
return bool;
|
return bool;
|
||||||
}
|
}
|
||||||
|
@ -123,36 +92,36 @@ public class SigilOfHolding extends EnergyItems
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
|
public ItemStack onItemRightClick(ItemStack stack, World par2World, EntityPlayer par3EntityPlayer)
|
||||||
{
|
{
|
||||||
if (checkAndSetItemOwner(par1ItemStack, par3EntityPlayer))
|
if (checkAndSetItemOwner(stack, par3EntityPlayer))
|
||||||
{
|
{
|
||||||
if (par3EntityPlayer.isSneaking())
|
if (par3EntityPlayer.isSneaking())
|
||||||
{
|
{
|
||||||
InventoryHolding.setUUID(par1ItemStack);
|
InventoryHolding.setUUID(stack);
|
||||||
par3EntityPlayer.openGui(AlchemicalWizardry.instance, 3, par3EntityPlayer.worldObj, (int) par3EntityPlayer.posX, (int) par3EntityPlayer.posY, (int) par3EntityPlayer.posZ);
|
par3EntityPlayer.openGui(AlchemicalWizardry.instance, 3, par3EntityPlayer.worldObj, (int) par3EntityPlayer.posX, (int) par3EntityPlayer.posY, (int) par3EntityPlayer.posZ);
|
||||||
return par1ItemStack;
|
return stack;
|
||||||
}
|
}
|
||||||
|
|
||||||
int currentSlot = getCurrentItem(par1ItemStack);
|
int currentSlot = getCurrentItem(stack);
|
||||||
ItemStack[] inv = getInternalInventory(par1ItemStack);
|
ItemStack[] inv = getInternalInventory(stack);
|
||||||
|
|
||||||
if (inv == null)
|
if (inv == null)
|
||||||
{
|
{
|
||||||
return par1ItemStack;
|
return stack;
|
||||||
}
|
}
|
||||||
|
|
||||||
ItemStack itemUsed = inv[currentSlot];
|
ItemStack itemUsed = inv[currentSlot];
|
||||||
|
|
||||||
if (itemUsed == null)
|
if (itemUsed == null)
|
||||||
{
|
{
|
||||||
return par1ItemStack;
|
return stack;
|
||||||
}
|
}
|
||||||
|
|
||||||
itemUsed.getItem().onItemRightClick(itemUsed, par2World, par3EntityPlayer);
|
itemUsed.getItem().onItemRightClick(itemUsed, par2World, par3EntityPlayer);
|
||||||
saveInventory(par1ItemStack, inv);
|
saveInventory(stack, inv);
|
||||||
}
|
}
|
||||||
return par1ItemStack;
|
return stack;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int next(int mode)
|
public static int next(int mode)
|
||||||
|
@ -183,7 +152,7 @@ public class SigilOfHolding extends EnergyItems
|
||||||
{
|
{
|
||||||
if (itemStack.getTagCompound() == null)
|
if (itemStack.getTagCompound() == null)
|
||||||
{
|
{
|
||||||
itemStack.getTagCompound() = new NBTTagCompound();
|
itemStack.setTagCompound(new NBTTagCompound());
|
||||||
itemStack.getTagCompound().setInteger(NBT_CURRENT_SIGIL, invSize);
|
itemStack.getTagCompound().setInteger(NBT_CURRENT_SIGIL, invSize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -283,17 +252,17 @@ public class SigilOfHolding extends EnergyItems
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)
|
public void onUpdate(ItemStack stack, World par2World, Entity par3Entity, int par4, boolean par5)
|
||||||
{
|
{
|
||||||
if (!(par1ItemStack.getTagCompound() == null))
|
if (!(stack.getTagCompound() == null))
|
||||||
{
|
{
|
||||||
this.tickInternalInventory(par1ItemStack, par2World, par3Entity, par4, par5);
|
this.tickInternalInventory(stack, par2World, par3Entity, par4, par5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void tickInternalInventory(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)
|
public void tickInternalInventory(ItemStack stack, World par2World, Entity par3Entity, int par4, boolean par5)
|
||||||
{
|
{
|
||||||
ItemStack[] inv = getInternalInventory(par1ItemStack);
|
ItemStack[] inv = getInternalInventory(stack);
|
||||||
|
|
||||||
if (inv == null)
|
if (inv == null)
|
||||||
{
|
{
|
||||||
|
|
|
@ -38,10 +38,8 @@ public class MeteorParadigm
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createMeteorImpact(World world, int x, int y, int z, boolean[] flags)
|
public void createMeteorImpact(World world, BlockPos pos, boolean[] flags)
|
||||||
{
|
{
|
||||||
BlockPos pos = new BlockPos(x, y, z);
|
|
||||||
|
|
||||||
boolean hasTerrae = false;
|
boolean hasTerrae = false;
|
||||||
boolean hasOrbisTerrae = false;
|
boolean hasOrbisTerrae = false;
|
||||||
boolean hasCrystallos = false;
|
boolean hasCrystallos = false;
|
||||||
|
@ -70,7 +68,7 @@ public class MeteorParadigm
|
||||||
chance += 100;
|
chance += 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
world.createExplosion(null, x, y, z, newRadius * 4, AlchemicalWizardry.doMeteorsDestroyBlocks);
|
world.createExplosion(null, pos.getX(), pos.getY(), pos.getZ(), newRadius * 4, AlchemicalWizardry.doMeteorsDestroyBlocks);
|
||||||
|
|
||||||
float iceChance = hasCrystallos ? 1 : 0;
|
float iceChance = hasCrystallos ? 1 : 0;
|
||||||
float soulChance = hasIncendium ? 1 : 0;
|
float soulChance = hasIncendium ? 1 : 0;
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
package WayofTime.alchemicalWizardry.common.summoning.meteor;
|
package WayofTime.alchemicalWizardry.common.summoning.meteor;
|
||||||
|
|
||||||
import net.minecraft.item.ItemStack;
|
|
||||||
import net.minecraft.world.World;
|
|
||||||
import net.minecraftforge.oredict.OreDictionary;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
import net.minecraftforge.oredict.OreDictionary;
|
||||||
|
|
||||||
public class MeteorRegistry
|
public class MeteorRegistry
|
||||||
{
|
{
|
||||||
public static List<MeteorParadigm> paradigmList = new ArrayList();
|
public static List<MeteorParadigm> paradigmList = new ArrayList();
|
||||||
|
@ -26,11 +27,11 @@ public class MeteorRegistry
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void createMeteorImpact(World world, int x, int y, int z, int paradigmID, boolean[] flags)
|
public static void createMeteorImpact(World world, BlockPos pos, int paradigmID, boolean[] flags)
|
||||||
{
|
{
|
||||||
if (paradigmID < paradigmList.size())
|
if (paradigmID < paradigmList.size())
|
||||||
{
|
{
|
||||||
paradigmList.get(paradigmID).createMeteorImpact(world, x, y, z, flags);
|
paradigmList.get(paradigmID).createMeteorImpact(world, pos, flags);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -542,4 +542,14 @@ public class TEReagentConduit extends TileSegmentedReagentHandler implements IUp
|
||||||
|
|
||||||
return super.drain(from, resource, doDrain);
|
return super.drain(from, resource, doDrain);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void removeReagentDestinationViaActual(Reagent reagent, BlockPos pos)
|
||||||
|
{
|
||||||
|
this.removeReagentDestinationViaActual(reagent, pos.getX(), pos.getY(), pos.getZ());
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean addReagentDestinationViaActual(Reagent reagent, BlockPos pos)
|
||||||
|
{
|
||||||
|
return addReagentDestinationViaActual(reagent, pos.getX(), pos.getY(), pos.getZ());
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in a new issue