public class EntityMeteorZombie extends EntityZombie { public EntityMeteorZombie(World world, double x, double y, double z) { super(world); // Entity Position Configuration this.posX = x; this.posY = y; this.posZ = z; // Entity Characteristics Configuration this.isImmuneToFire = true; this.setCurrentItemOrArmor(1, new ItemStack(Items.iron_helmet)); this.setCurrentItemOrArmor(3, new ItemStack(Items.iron_leggings)); // Entity Task Configuration this.getNavigator().setBreakDoors(true); this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(1, new EntityAIAttackOnCollide(this, EntityPlayer.class, 1.0D, false)); this.tasks.addTask(4, new EntityAIAttackOnCollide(this, EntityVillager.class, 1.0D, true)); this.tasks.addTask(2, new EntityAIAttackOnCollide(this, EntityCreature.class, 1.0D, true)); this.tasks.addTask(5, new EntityAIMoveTowardsRestriction(this, 1.0D)); this.tasks.addTask(6, new EntityAIMoveThroughVillage(this, 1.0D, false)); this.tasks.addTask(7, new EntityAIWander(this, 1.0D)); this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F)); this.tasks.addTask(8, new EntityAILookIdle(this)); // Entity Target Configuration this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, true)); this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, 0, true)); this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityVillager.class, 0, false)); this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityCreature.class, 0, false)); // TODO Auto-generated constructor stub } protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(field_110186_bp).setBaseValue(0.0D); this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.75D); this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(6.0D); } public boolean doesEntityNotTriggerPressurePlate() { // Using StealthCorePlus, these guys are not permitted to be discovered!!! return true; } protected void dropFewItems(boolean p_70628_1_, int additional) { int j = this.rand.nextInt(2 + additional); int count; for (count = 0; count < j; count++) { this.dropItem(Items.rotten_flesh, 1); } j = this.rand.nextInt(2 + additional); for (count = 0; count < j; count++) { this.dropItem(Items.gold_nugget, 1); } } /*public void onKillEntity(EntityLivingBase p_70074_1_) { // Should make some havoc from here }*/ }