In EntityPizza.java
protected void onImpact(MovingObjectPosition movingObjectPosition) {
if (movingObjectPosition.entityHit != null) {
float damage = 0;
if(movingObjectPosition.entityHit instanceof EntityZombie) {
damage = 5;
movingObjectPosition.entityHit.motionY=3;
} else if (movingObjectPosition.entityHit instanceof EntitySkeleton) {
damage = 20;
movingObjectPosition.entityHit.motionY=3;
}
movingObjectPosition.entityHit.attackEntityFrom(DamageSource.causeThrownDamage(this, this.getThrower()), damage);
}
for (int i = 0; i <6; ++i) {
//double red = 202D / 255D;
//double green = 112D / 255D;
//double blue = 15D / 255D;
//this.worldObj.spawnParticle("reddust", this.posX, this.posY, this.posZ, red, green, blue);
PizzaParticleEffects.spawnParticle("pizzaPiece",this.posX, this.posY, this.posZ, 0, -0.1, 0);
}
if (!this.worldObj.isRemote) {
this.setDead();
}
}
PizzaParticleEffects.java
package wsdec13.peter;
import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.EntityBreakingFX;
import net.minecraft.client.particle.EntityFX;
import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.item.Item;
import net.minecraft.world.World;
public class PizzaParticleEffects {
private static Minecraft mc = Minecraft.getMinecraft();
private static World theWorld = mc.theWorld;
private static TextureManager renderEngine = mc.renderEngine;
public static EntityFX spawnParticle(String particleName, double par2, double par4, double par6, double par8, double par10, double par12) {
if (mc != null && mc.renderViewEntity != null && mc.effectRenderer != null) {
int var14 = mc.gameSettings.particleSetting;
if (var14 == 1 && theWorld.rand.nextInt(3) == 0) {
var14 = 2;
}
double var15 = mc.renderViewEntity.posX - par2;
double var17 = mc.renderViewEntity.posY - par4;
double var19 = mc.renderViewEntity.posZ - par6;
EntityFX var21 = null;
double var22 = 16.0D;
if (var15 * var15 + var17 * var17 + var19 * var19 > var22 * var22) {
return null;
} else if (var14 > 1) {
return null;
} else {
if (particleName.equals("pizzaPiece")) {
var21 = new EntityBreakingFX(theWorld, par2, par4, par6, PetersMod.pizza);
}
mc.effectRenderer.addEffect(var21);
return var21;
}
}
return null;
}
}