package net.minecraft.world.gen.feature; import java.util.Random; import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.world.World; public class WorldGenIcePath extends WorldGenerator { private Block field_150555_a; private int field_150554_b; private static final String __OBFID = "CL_00000416"; public WorldGenIcePath(int p_i45454_1_) { this.field_150555_a = Blocks.packed_ice; this.field_150554_b = p_i45454_1_; } public boolean generate(World p_76484_1_, Random p_76484_2_, int p_76484_3_, int p_76484_4_, int p_76484_5_) { while (p_76484_1_.isAirBlock(p_76484_3_, p_76484_4_, p_76484_5_) && p_76484_4_ > 2) { --p_76484_4_; } if (p_76484_1_.getBlock(p_76484_3_, p_76484_4_, p_76484_5_) != Blocks.snow) { return false; } else { int l = p_76484_2_.nextInt(this.field_150554_b - 2) + 2; byte b0 = 1; for (int i1 = p_76484_3_ - l; i1 <= p_76484_3_ + l; ++i1) { for (int j1 = p_76484_5_ - l; j1 <= p_76484_5_ + l; ++j1) { int k1 = i1 - p_76484_3_; int l1 = j1 - p_76484_5_; if (k1 * k1 + l1 * l1 <= l * l) { for (int i2 = p_76484_4_ - b0; i2 <= p_76484_4_ + b0; ++i2) { Block block = p_76484_1_.getBlock(i1, i2, j1); if (block == Blocks.dirt || block == Blocks.snow || block == Blocks.ice) { p_76484_1_.setBlock(i1, i2, j1, this.field_150555_a, 0, 2); } } } } } return true; } } }