001 package net.minecraft.src;
002
003 public class EntityEgg extends EntityThrowable
004 {
005 public EntityEgg(World par1World)
006 {
007 super(par1World);
008 }
009
010 public EntityEgg(World par1World, EntityLiving par2EntityLiving)
011 {
012 super(par1World, par2EntityLiving);
013 }
014
015 public EntityEgg(World par1World, double par2, double par4, double par6)
016 {
017 super(par1World, par2, par4, par6);
018 }
019
020 /**
021 * Called when this EntityThrowable hits a block or entity.
022 */
023 protected void onImpact(MovingObjectPosition par1MovingObjectPosition)
024 {
025 if (par1MovingObjectPosition.entityHit != null)
026 {
027 par1MovingObjectPosition.entityHit.attackEntityFrom(DamageSource.causeThrownDamage(this, this.thrower), 0);
028 }
029
030 if (!this.worldObj.isRemote && this.rand.nextInt(8) == 0)
031 {
032 byte var2 = 1;
033
034 if (this.rand.nextInt(32) == 0)
035 {
036 var2 = 4;
037 }
038
039 for (int var3 = 0; var3 < var2; ++var3)
040 {
041 EntityChicken var4 = new EntityChicken(this.worldObj);
042 var4.setGrowingAge(-24000);
043 var4.setLocationAndAngles(this.posX, this.posY, this.posZ, this.rotationYaw, 0.0F);
044 this.worldObj.spawnEntityInWorld(var4);
045 }
046 }
047
048 for (int var5 = 0; var5 < 8; ++var5)
049 {
050 this.worldObj.spawnParticle("snowballpoof", this.posX, this.posY, this.posZ, 0.0D, 0.0D, 0.0D);
051 }
052
053 if (!this.worldObj.isRemote)
054 {
055 this.setDead();
056 }
057 }
058 }