@Nullable @Override public EntityLiving getExample() { EntityZombie entity = new EntityZombie(WorldDummy.INSTANCE); entity.setPositionAndRotation(12, 0, 0, 30, 73); entity.setItemStackToSlot(EntityEquipmentSlot.MAINHAND, new ItemStack(Items.STICK)); entity.setItemStackToSlot(EntityEquipmentSlot.CHEST, new ItemStack(Items.DIAMOND_HELMET)); return entity; }
@SubscribeEvent public void entityUpdate(LivingUpdateEvent event) { if(event.getEntity() instanceof EntityZombie && !(event.getEntity() instanceof EntityHusk)) { EntityZombie zombie = (EntityZombie) event.getEntity(); if(zombie.getEntityWorld().isDaytime() && !zombie.getEntityWorld().isRemote && zombie.isChild()) { float f = zombie.getBrightness(); BlockPos blockpos = zombie.getRidingEntity() instanceof EntityBoat ? new BlockPos(zombie.posX, Math.round(zombie.posY), zombie.posZ).up() : new BlockPos(zombie.posX, Math.round(zombie.posY), zombie.posZ); if(f > 0.5F && zombie.getEntityWorld().rand.nextFloat() * 30.0F < (f - 0.4F) * 2.0F && zombie.getEntityWorld().canSeeSky(blockpos)) { boolean flag = true; ItemStack itemstack = zombie.getItemStackFromSlot(EntityEquipmentSlot.HEAD); if(!itemstack.isEmpty()) { if(itemstack.isItemStackDamageable()) { itemstack.setItemDamage(itemstack.getItemDamage() + zombie.getEntityWorld().rand.nextInt(2)); if(itemstack.getItemDamage() >= itemstack.getMaxDamage()) { zombie.renderBrokenItemStack(itemstack); zombie.setItemStackToSlot(EntityEquipmentSlot.HEAD, ItemStack.EMPTY); } } flag = false; } if(flag) zombie.setFire(8); } } } }
private void setSpawn(byte id) { EntityZombie zombie; if (id == 0) { zombie = new EntityZombie(world); zombie.setLocationAndAngles(posX, posY, posZ, rotationYaw, 0.0F); zombie.onInitialSpawn(world.getDifficultyForLocation(new BlockPos(zombie)), null); zombie.setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(GaiaItems.ACCESSORY_HEADGEAR, 1, 0)); zombie.setDropChance(EntityEquipmentSlot.MAINHAND, 0); zombie.setDropChance(EntityEquipmentSlot.OFFHAND, 0); zombie.setDropChance(EntityEquipmentSlot.FEET, 0); zombie.setDropChance(EntityEquipmentSlot.LEGS, 0); zombie.setDropChance(EntityEquipmentSlot.CHEST, 0); zombie.setDropChance(EntityEquipmentSlot.HEAD, 0); world.spawnEntity(zombie); } }
private void setSpawn(byte id) { EntityZombie zombie; EntitySkeleton skeleton; if (id == 0) { zombie = new EntityZombie(world); zombie.setLocationAndAngles(posX, posY, posZ, rotationYaw, 0.0F); zombie.onInitialSpawn(world.getDifficultyForLocation(new BlockPos(zombie)), null); zombie.setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(GaiaItems.ACCESSORY_HEADGEAR, 1, 1)); zombie.setDropChance(EntityEquipmentSlot.MAINHAND, 0); zombie.setDropChance(EntityEquipmentSlot.OFFHAND, 0); zombie.setDropChance(EntityEquipmentSlot.FEET, 0); zombie.setDropChance(EntityEquipmentSlot.LEGS, 0); zombie.setDropChance(EntityEquipmentSlot.CHEST, 0); zombie.setDropChance(EntityEquipmentSlot.HEAD, 0); world.spawnEntity(zombie); } if (id == 1) { skeleton = new EntitySkeleton(world); skeleton.setLocationAndAngles(posX, posY, posZ, rotationYaw, 0.0F); skeleton.onInitialSpawn(world.getDifficultyForLocation(new BlockPos(skeleton)), null); skeleton.setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(GaiaItems.ACCESSORY_HEADGEAR, 1, 1)); skeleton.setDropChance(EntityEquipmentSlot.MAINHAND, 0); skeleton.setDropChance(EntityEquipmentSlot.OFFHAND, 0); skeleton.setDropChance(EntityEquipmentSlot.FEET, 0); skeleton.setDropChance(EntityEquipmentSlot.LEGS, 0); skeleton.setDropChance(EntityEquipmentSlot.CHEST, 0); skeleton.setDropChance(EntityEquipmentSlot.HEAD, 0); world.spawnEntity(skeleton); } }
zombie.setLocationAndAngles(posX, posY, posZ, rotationYaw, 0.0F); zombie.onInitialSpawn(world.getDifficultyForLocation(new BlockPos(zombie)), null); zombie.setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(GaiaItems.ACCESSORY_HEADGEAR, 1, 0)); zombie.setDropChance(EntityEquipmentSlot.MAINHAND, 0); zombie.setDropChance(EntityEquipmentSlot.OFFHAND, 0);