public void updateTask() { super.updateTask(); this.field_179500_c.getLookHelper().setLookPosition((double)this.destinationBlock.getX() + 0.5D, (double)(this.destinationBlock.getY() + 1), (double)this.destinationBlock.getZ() + 0.5D, 10.0F, (float)this.field_179500_c.getVerticalFaceSpeed()); if (this.getIsAboveDestination()) { World world = this.field_179500_c.worldObj; BlockPos blockpos = this.destinationBlock.up(); IBlockState iblockstate = world.getBlockState(blockpos); Block block = iblockstate.getBlock(); if (this.field_179499_e && block instanceof BlockCarrot && ((Integer)iblockstate.getValue(BlockCarrot.AGE)).intValue() == 7) { world.setBlockState(blockpos, Blocks.air.getDefaultState(), 2); world.destroyBlock(blockpos, true); this.field_179500_c.createEatingParticles(); } this.field_179499_e = false; this.runDelay = 10; } }
protected boolean shouldMoveTo(World worldIn, BlockPos pos) { Block block = worldIn.getBlockState(pos).getBlock(); if (block == Blocks.farmland) { pos = pos.up(); IBlockState iblockstate = worldIn.getBlockState(pos); block = iblockstate.getBlock(); if (block instanceof BlockCarrot && ((Integer)iblockstate.getValue(BlockCarrot.AGE)).intValue() == 7 && this.field_179498_d && !this.field_179499_e) { this.field_179499_e = true; return true; } } return false; }
@Override public void updateTask() { super.updateTask(); getLookHelper().setLookPosition(destinationBlock.getX() + 0.5D, destinationBlock.getY() + 1, destinationBlock.getZ() + 0.5D, 10.0F, getVerticalFaceSpeed()); if (getIsAboveDestination()) { World world = worldObj; BlockPos blockpos = destinationBlock.up(); Block block = world.getBlock(blockpos.getX(), blockpos.getY(), blockpos.getZ()); int meta = world.getBlockMetadata(blockpos.getX(), blockpos.getY(), blockpos.getZ()); if (field_179499_e && block instanceof BlockCarrot && meta >= 7) { world.func_147480_a(blockpos.getX(), blockpos.getY(), blockpos.getZ(), false); carrotTicks = 100; } field_179499_e = false; runDelay = 10; } }
protected boolean shouldMoveTo(World worldIn, BlockPos pos) { Block block = worldIn.getBlockState(pos).getBlock(); if (block == Blocks.FARMLAND && this.wantsToRaid && !this.canRaid) { pos = pos.up(); IBlockState iblockstate = worldIn.getBlockState(pos); block = iblockstate.getBlock(); if (block instanceof BlockCarrot && ((BlockCarrot)block).isMaxAge(iblockstate)) { this.canRaid = true; return true; } } return false; }
/** * Return true to set given position as destination */ protected boolean shouldMoveTo(World worldIn, BlockPos pos) { Block block = worldIn.getBlockState(pos).getBlock(); if (block == Blocks.FARMLAND && this.wantsToRaid && !this.canRaid) { pos = pos.up(); IBlockState iblockstate = worldIn.getBlockState(pos); block = iblockstate.getBlock(); if (block instanceof BlockCarrot && ((BlockCarrot)block).isMaxAge(iblockstate)) { this.canRaid = true; return true; } } return false; }
@Override protected boolean shouldMoveTo(World world, BlockPos pos) { pos = pos.up(); Block block = world.getBlock(pos.getX(), pos.getY(), pos.getZ()); int meta = world.getBlockMetadata(pos.getX(), pos.getY(), pos.getZ()); if (block instanceof BlockCarrot && meta >= 7 && field_179498_d && !field_179499_e) { field_179499_e = true; return true; } return false; }
protected void createEatingParticles() { BlockCarrot blockcarrot = (BlockCarrot)Blocks.CARROTS; IBlockState iblockstate = blockcarrot.withAge(blockcarrot.getMaxAge()); this.world.spawnParticle(EnumParticleTypes.BLOCK_DUST, this.posX + (double)(this.rand.nextFloat() * this.width * 2.0F) - (double)this.width, this.posY + 0.5D + (double)(this.rand.nextFloat() * this.height), this.posZ + (double)(this.rand.nextFloat() * this.width * 2.0F) - (double)this.width, 0.0D, 0.0D, 0.0D, new int[] {Block.getStateId(iblockstate)}); this.carrotTicks = 40; }
public void updateTask() { super.updateTask(); this.rabbit.getLookHelper().setLookPosition((double)this.destinationBlock.getX() + 0.5D, (double)(this.destinationBlock.getY() + 1), (double)this.destinationBlock.getZ() + 0.5D, 10.0F, (float)this.rabbit.getVerticalFaceSpeed()); if (this.getIsAboveDestination()) { World world = this.rabbit.world; BlockPos blockpos = this.destinationBlock.up(); IBlockState iblockstate = world.getBlockState(blockpos); Block block = iblockstate.getBlock(); if (this.canRaid && block instanceof BlockCarrot) { Integer integer = (Integer)iblockstate.getValue(BlockCarrot.AGE); if (integer.intValue() == 0) { world.setBlockState(blockpos, Blocks.AIR.getDefaultState(), 2); world.destroyBlock(blockpos, true); } else { world.setBlockState(blockpos, iblockstate.withProperty(BlockCarrot.AGE, Integer.valueOf(integer.intValue() - 1)), 2); world.playEvent(2001, blockpos, Block.getStateId(iblockstate)); } this.rabbit.createEatingParticles(); } this.canRaid = false; this.runDelay = 10; } }
protected void createEatingParticles() { BlockCarrot blockcarrot = (BlockCarrot)Blocks.CARROTS; IBlockState iblockstate = blockcarrot.withAge(blockcarrot.getMaxAge()); this.worldObj.spawnParticle(EnumParticleTypes.BLOCK_DUST, this.posX + (double)(this.rand.nextFloat() * this.width * 2.0F) - (double)this.width, this.posY + 0.5D + (double)(this.rand.nextFloat() * this.height), this.posZ + (double)(this.rand.nextFloat() * this.width * 2.0F) - (double)this.width, 0.0D, 0.0D, 0.0D, new int[] {Block.getStateId(iblockstate)}); this.carrotTicks = 40; }
/** * Updates the task */ public void updateTask() { super.updateTask(); this.rabbit.getLookHelper().setLookPosition((double)this.destinationBlock.getX() + 0.5D, (double)(this.destinationBlock.getY() + 1), (double)this.destinationBlock.getZ() + 0.5D, 10.0F, (float)this.rabbit.getVerticalFaceSpeed()); if (this.getIsAboveDestination()) { World world = this.rabbit.worldObj; BlockPos blockpos = this.destinationBlock.up(); IBlockState iblockstate = world.getBlockState(blockpos); Block block = iblockstate.getBlock(); if (this.canRaid && block instanceof BlockCarrot) { Integer integer = (Integer)iblockstate.getValue(BlockCarrot.AGE); if (integer.intValue() == 0) { world.setBlockState(blockpos, Blocks.AIR.getDefaultState(), 2); world.destroyBlock(blockpos, true); } else { world.setBlockState(blockpos, iblockstate.withProperty(BlockCarrot.AGE, Integer.valueOf(integer.intValue() - 1)), 2); world.playEvent(2001, blockpos, Block.getStateId(iblockstate)); } this.rabbit.createEatingParticles(); } this.canRaid = false; this.runDelay = 10; } }