private void flowerGenerator(BlockFlower flower, World worldIn, Random random, int chunkX, int chunkZ, float chancesToSpawn) { for(int i = 0; i < chancesToSpawn; i++) if(random.nextFloat() < chancesToSpawn) { int x = chunkX * 16 + random.nextInt(16); int z = chunkZ * 16 + random.nextInt(16); BlockPos position = worldIn.getTopSolidOrLiquidBlock(new BlockPos(x, 0, z)); BlockPos blockpos = position.add(random.nextInt(8) - random.nextInt(8), random.nextInt(4) - random.nextInt(4), random.nextInt(8) - random.nextInt(8)); if (worldIn.isAirBlock(blockpos) && (worldIn.provider.isSurfaceWorld() || blockpos.getY() < 255) && flower.canBlockStay(worldIn, blockpos, flower.getDefaultState())) { worldIn.setBlockState(blockpos,flower.getDefaultState(), 2); } } }
/** * Drop 0-2 items of this living's type */ protected void dropFewItems(boolean p_70628_1_, int p_70628_2_) { int i = this.rand.nextInt(3); for (int j = 0; j < i; ++j) { this.dropItemWithOffset(Item.getItemFromBlock(Blocks.red_flower), 1, (float)BlockFlower.EnumFlowerType.POPPY.getMeta()); } int l = 3 + this.rand.nextInt(3); for (int k = 0; k < l; ++k) { this.dropItem(Items.iron_ingot, 1); } }
public String func_150572_a(Random p_150572_1_, int p_150572_2_, int p_150572_3_, int p_150572_4_) { if (this.field_150632_aF == 1) { double var5 = MathHelper.clamp_double((1.0D + field_150606_ad.func_151601_a((double)p_150572_2_ / 48.0D, (double)p_150572_4_ / 48.0D)) / 2.0D, 0.0D, 0.9999D); int var7 = (int)(var5 * (double)BlockFlower.field_149859_a.length); if (var7 == 1) { var7 = 0; } return BlockFlower.field_149859_a[var7]; } else { return super.func_150572_a(p_150572_1_, p_150572_2_, p_150572_3_, p_150572_4_); } }
public String func_150572_a(Random p_150572_1_, int p_150572_2_, int p_150572_3_, int p_150572_4_) { double var5 = field_150606_ad.func_151601_a((double)p_150572_2_ / 200.0D, (double)p_150572_4_ / 200.0D); int var7; if (var5 < -0.8D) { var7 = p_150572_1_.nextInt(4); return BlockFlower.field_149859_a[4 + var7]; } else if (p_150572_1_.nextInt(3) > 0) { var7 = p_150572_1_.nextInt(3); return var7 == 0 ? BlockFlower.field_149859_a[0] : (var7 == 1 ? BlockFlower.field_149859_a[3] : BlockFlower.field_149859_a[8]); } else { return BlockFlower.field_149858_b[0]; } }
public static BlockFlower func_149857_e(String name) { String[] astring = field_149858_b; int i = astring.length; int j; String s1; for (j = 0; j < i; ++j) { s1 = astring[j]; if (s1.equals(name)) { return (BlockFlower) BPBlocks.indigo_flower; } } return null; }
public String func_150572_a(Random p_150572_1_, int p_150572_2_, int p_150572_3_, int p_150572_4_) { double d0 = plantNoise.func_151601_a((double)p_150572_2_ / 200.0D, (double)p_150572_4_ / 200.0D); int l; if (d0 < -0.8D) { l = p_150572_1_.nextInt(4); return BlockFlower.field_149859_a[4 + l]; } else if (p_150572_1_.nextInt(3) > 0) { l = p_150572_1_.nextInt(3); return l == 0 ? BlockFlower.field_149859_a[0] : (l == 1 ? BlockFlower.field_149859_a[3] : BlockFlower.field_149859_a[8]); } else { return BlockFlower.field_149858_b[0]; } }
public String func_150572_a(Random p_150572_1_, int p_150572_2_, int p_150572_3_, int p_150572_4_) { if (this.field_150632_aF == 1) { double d0 = MathHelper.clamp_double((1.0D + plantNoise.func_151601_a((double)p_150572_2_ / 48.0D, (double)p_150572_4_ / 48.0D)) / 2.0D, 0.0D, 0.9999D); int l = (int)(d0 * (double)BlockFlower.field_149859_a.length); if (l == 1) { l = 0; } return BlockFlower.field_149859_a[l]; } else { return super.func_150572_a(p_150572_1_, p_150572_2_, p_150572_3_, p_150572_4_); } }
@Override public boolean onBlockDestroyed(ItemStack itemstack, World world, IBlockState state, BlockPos pos, EntityLivingBase entityLiving) { boolean done = false; int size = 2; for(int newX = -size; newX <= size; newX++) { for(int newZ = -size; newZ <= size; newZ++) { BlockPos pos2 = pos.add(newX, 0, newZ); IBlockState sta = world.getBlockState(pos2); Block block = sta.getBlock(); if((block instanceof BlockBush) || (block instanceof BlockFlower) || (block instanceof BlockDoublePlant)) { block.dropBlockAsItem(world, pos2, sta, 0); world.setBlockToAir(pos2); itemstack.damageItem(1, entityLiving); done = true; } } } return done; }
@Override public boolean canSustainPlant(World world, int x, int y, int z, ForgeDirection direction, IPlantable plant) { final int metadata = world.getBlockMetadata(x, y, z); if (metadata < 5 && metadata > 13) { return false; } plant.getPlantID(world, x, y + 1, z); if (plant instanceof BlockFlower) { return true; } return false; }
public BlockFlower.EnumFlowerType pickRandomFlower(Random rand, BlockPos pos) { if (this.field_150632_aF == 1) { double d0 = MathHelper.clamp_double((1.0D + GRASS_COLOR_NOISE.func_151601_a((double)pos.getX() / 48.0D, (double)pos.getZ() / 48.0D)) / 2.0D, 0.0D, 0.9999D); BlockFlower.EnumFlowerType blockflower$enumflowertype = BlockFlower.EnumFlowerType.values()[(int)(d0 * (double)BlockFlower.EnumFlowerType.values().length)]; return blockflower$enumflowertype == BlockFlower.EnumFlowerType.BLUE_ORCHID ? BlockFlower.EnumFlowerType.POPPY : blockflower$enumflowertype; } else { return super.pickRandomFlower(rand, pos); } }
public BlockFlower.EnumFlowerType pickRandomFlower(Random rand, BlockPos pos) { double d0 = GRASS_COLOR_NOISE.func_151601_a((double)pos.getX() / 200.0D, (double)pos.getZ() / 200.0D); if (d0 < -0.8D) { int j = rand.nextInt(4); switch (j) { case 0: return BlockFlower.EnumFlowerType.ORANGE_TULIP; case 1: return BlockFlower.EnumFlowerType.RED_TULIP; case 2: return BlockFlower.EnumFlowerType.PINK_TULIP; case 3: default: return BlockFlower.EnumFlowerType.WHITE_TULIP; } } else if (rand.nextInt(3) > 0) { int i = rand.nextInt(3); return i == 0 ? BlockFlower.EnumFlowerType.POPPY : (i == 1 ? BlockFlower.EnumFlowerType.HOUSTONIA : BlockFlower.EnumFlowerType.OXEYE_DAISY); } else { return BlockFlower.EnumFlowerType.DANDELION; } }
public BlockFlower.EnumFlowerType pickRandomFlower(Random rand, BlockPos pos) { double d0 = GRASS_COLOR_NOISE.getValue((double)pos.getX() / 200.0D, (double)pos.getZ() / 200.0D); if (d0 < -0.8D) { int j = rand.nextInt(4); switch (j) { case 0: return BlockFlower.EnumFlowerType.ORANGE_TULIP; case 1: return BlockFlower.EnumFlowerType.RED_TULIP; case 2: return BlockFlower.EnumFlowerType.PINK_TULIP; case 3: default: return BlockFlower.EnumFlowerType.WHITE_TULIP; } } else if (rand.nextInt(3) > 0) { int i = rand.nextInt(3); return i == 0 ? BlockFlower.EnumFlowerType.POPPY : (i == 1 ? BlockFlower.EnumFlowerType.HOUSTONIA : BlockFlower.EnumFlowerType.OXEYE_DAISY); } else { return BlockFlower.EnumFlowerType.DANDELION; } }
public BlockFlower.EnumFlowerType pickRandomFlower(Random rand, BlockPos pos) { if (this.type == BiomeForest.Type.FLOWER) { double d0 = MathHelper.clamp((1.0D + GRASS_COLOR_NOISE.getValue((double)pos.getX() / 48.0D, (double)pos.getZ() / 48.0D)) / 2.0D, 0.0D, 0.9999D); BlockFlower.EnumFlowerType blockflower$enumflowertype = BlockFlower.EnumFlowerType.values()[(int)(d0 * (double)BlockFlower.EnumFlowerType.values().length)]; return blockflower$enumflowertype == BlockFlower.EnumFlowerType.BLUE_ORCHID ? BlockFlower.EnumFlowerType.POPPY : blockflower$enumflowertype; } else { return super.pickRandomFlower(rand, pos); } }
public AxisAlignedBB getBoundingBox(IBlockAccess blockAccess, BlockPos pos) { Block.EnumOffsetType block$enumoffsettype = this.block.getOffsetType(); if (block$enumoffsettype != Block.EnumOffsetType.NONE && !(this.block instanceof BlockFlower)) { AxisAlignedBB axisalignedbb = this.block.getBoundingBox(this, blockAccess, pos); axisalignedbb = BlockModelUtils.getOffsetBoundingBox(axisalignedbb, block$enumoffsettype, pos); return axisalignedbb; } else { return this.block.getBoundingBox(this, blockAccess, pos); } }
@Override public void addDefaultFlowers() { BlockFlower red = net.minecraft.init.Blocks.RED_FLOWER; BlockFlower yel = net.minecraft.init.Blocks.YELLOW_FLOWER; addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.ORANGE_TULIP), 3); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.RED_TULIP), 3); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.PINK_TULIP), 3); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.WHITE_TULIP), 3); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.POPPY), 20); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.HOUSTONIA), 20); addFlower(red.getDefaultState().withProperty(red.getTypeProperty(), BlockFlower.EnumFlowerType.OXEYE_DAISY), 20); addFlower(yel.getDefaultState().withProperty(yel.getTypeProperty(), BlockFlower.EnumFlowerType.DANDELION), 30); }
public BlockFlower.EnumFlowerType pickRandomFlower(Random rand, BlockPos pos) { if (this.type == BiomeForest.Type.FLOWER) { double d0 = MathHelper.clamp_double((1.0D + GRASS_COLOR_NOISE.getValue((double)pos.getX() / 48.0D, (double)pos.getZ() / 48.0D)) / 2.0D, 0.0D, 0.9999D); BlockFlower.EnumFlowerType blockflower$enumflowertype = BlockFlower.EnumFlowerType.values()[(int)(d0 * (double)BlockFlower.EnumFlowerType.values().length)]; return blockflower$enumflowertype == BlockFlower.EnumFlowerType.BLUE_ORCHID ? BlockFlower.EnumFlowerType.POPPY : blockflower$enumflowertype; } else { return super.pickRandomFlower(rand, pos); } }
@Override public boolean canSustainPlant(IBlockAccess world, int x, int y, int z, ForgeDirection direction, IPlantable plantable) { final int metadata = world.getBlockMetadata(x, y, z); if (metadata < 5 && metadata > 13) { return false; } plantable.getPlant(world, x, y + 1, z); return plantable instanceof BlockFlower; }
private void seedMap() { // Iterate through the blockmap looking for known pattern types. // Though they probably should all be registered with Forge // dictionary it's not a requirement. final Iterator<Block> itr = Block.REGISTRY.iterator(); while (itr.hasNext()) { final Block block = itr.next(); final String blockName = MCHelper.nameOf(block); if (block instanceof BlockCrops) { final BlockCrops crop = (BlockCrops) block; if (crop.getMaxAge() == 3) { this.registerBlocks("#beets", blockName); } else if (blockName.equals("minecraft:wheat")) { this.registerBlocks("#wheat", blockName); } else if (crop.getMaxAge() == 7) { this.registerBlocks("#crop", blockName); } } else if (block instanceof BlockSapling) { this.registerBlocks("#sapling", blockName); } else if (block instanceof BlockReed) { this.registerBlocks("#reed", blockName); } else if (block instanceof BlockFence) { this.registerBlocks("#fence", blockName); } else if (block instanceof BlockFlower || block instanceof BlockMushroom) { this.registerBlocks("NOT_EMITTER", blockName); } else if (block instanceof BlockLog || block instanceof BlockPlanks) { this.registerBlocks("wood", blockName); } else if (block instanceof BlockDoor) { this.registerBlocks("bluntwood", blockName); } else if (block instanceof BlockLeaves) { this.registerBlocks("leaves", blockName); } else if (block instanceof BlockOre) { this.registerBlocks("ore", blockName); } else if (block instanceof BlockIce) { this.registerBlocks("ice", blockName); } } }
public static BlockFlower func_149857_e(String p_149857_0_) { String[] astring = field_149858_b; int i = astring.length; int j; String s1; for (j = 0; j < i; ++j) { s1 = astring[j]; if (s1.equals(p_149857_0_)) { return Blocks.yellow_flower; } } astring = field_149859_a; i = astring.length; for (j = 0; j < i; ++j) { s1 = astring[j]; if (s1.equals(p_149857_0_)) { return Blocks.red_flower; } } return null; }