Does anyone know how to make leaves drop one than one type of item? For instance, when destroyed, they have a chance to drop saplings and regular leaves.
Note: You will need a thing called fernflower.jar for this to work. You can get it here. Put it in runtime/bin along with the other .jar's. Then put ShockahPI in your normal jar where you put modloader and decompile.
mod_Namehere
package net.minecraft.src;
public class mod_Namehere extends BaseMod
{
public mod_Namehere()
{
new DimensionNamehere().name = "Namehere";
ModLoader.RegisterBlock(NameherePortal);
ModLoader.RegisterBlock(NamehereStone);
ModLoader.RegisterBlock(NamehereDirt);
ModLoader.RegisterBlock(NamehereGrass);
ModLoader.RegisterBlock(BlockNameherePortalStarter);
ModLoader.AddName(PortalStarterNamehere, "Namehere Portal Starter");
ModLoader.AddName(NamehereStone, "Namehere Stone");
ModLoader.AddName(NamehereDirt, "Namehere Dirt");
ModLoader.AddName(NamehereGrass, "Namehere Grass");
NamehereStoneTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereStone.png");
NamehereGrassTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereGrass.png");
NamehereDirtTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereDirt.png");
NamehereGrass.blockIndexInTexture = NamehereGrassTexture;
NamehereStone.blockIndexInTexture = NamehereStoneTexture;
NamehereDirt.blockIndexInTexture = NamehereDirtTexture;
ToolBase.Shovel.mineBlocks.add(new BlockHarvestPower(NamehereDirt.blockID, 0.0F));
ToolBase.Shovel.mineBlocks.add(new BlockHarvestPower(NamehereGrass.blockID, 0.0F));
ToolBase.Pickaxe.mineBlocks.add(new BlockHarvestPower(NamehereStone.blockID, 0.0F));
}
public static final BlockPortalNamehere NameherePortal;
public static final Item PortalStarterNamehere;
public static final Block BlockNameherePortalStarter;
public static final Block NamehereStone;
public static final Block NamehereGrass;
public static final Block NamehereDirt;
public static int NamehereStoneTexture;
public static int NamehereGrassTexture;
public static int NamehereDirtTexture;
static
{
NameherePortal = (BlockPortalNamehere)(new BlockPortalNamehere(234, ModLoader.getUniqueSpriteIndex("/terrain.png"))).setHardness(-1F).setStepSound(Block.soundGlassFootstep).setLightValue(0.75F).setBlockName("NameherePortal");
PortalStarterNamehere = new ItemNameherePortalStarter(1987).setIconCoord(5, 0).setItemName("NameherePortalStarter");
BlockNameherePortalStarter = new BlockNameherePortalStarter(235, 1, Material.sponge).setHardness(0.0F).disableStats().disableNeighborNotifyOnMetadataChange().setBlockName("BlockNameherePortalStarter");
NamehereStone = (new BlockNamehereStone(236, 1)).setHardness(1.5F).setResistance(10F).setStepSound(Block.soundStoneFootstep).setBlockName("NamehereStone");
NamehereGrass = (Block)(new BlockNamehereGrass(237, 1)).setHardness(0.6F).setStepSound(Block.soundGrassFootstep).setBlockName("NamehereGrass");
NamehereDirt = (new BlockNamehereDirt(238, 1)).setHardness(0.5F).setStepSound(Block.soundGravelFootstep).setBlockName("NamehereDirt");
}
public String Version()
{
return "1.7.3";
}
}
BlockNamehereDirt
package net.minecraft.src;
public class BlockNamehereDirt extends Block
{
protected BlockNamehereDirt(int i, int j)
{
super(i, j, Material.ground);
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereDirt.blockID;
}
}
BlockNamehereGrass
package net.minecraft.src;
import java.util.Random;
public class BlockNamehereGrass extends Block
{
protected BlockNamehereGrass(int i, int j)
{
super(i, Material.grassMaterial);
blockIndexInTexture = j;
setTickOnLoad(true);
}
public int getBlockTexture(IBlockAccess iblockaccess, int i, int j, int k, int l)
{
if(l == 1)
{
return 0;
}
if(l == 0)
{
return 2;
}
Material material = iblockaccess.getBlockMaterial(i, j + 1, k);
return material != Material.snow && material != Material.builtSnow ? 3 : 68;
}
public int colorMultiplier(IBlockAccess iblockaccess, int i, int j, int k)
{
iblockaccess.getWorldChunkManager().func_4069_a(i, k, 1, 1);
double d = iblockaccess.getWorldChunkManager().temperature[0];
double d1 = iblockaccess.getWorldChunkManager().humidity[0];
return ColorizerGrass.getGrassColor(d, d1);
}
public void updateTick(World world, int i, int j, int k, Random random)
{
if(world.multiplayerWorld)
{
return;
}
if(world.getBlockLightValue(i, j + 1, k) < 4 && Block.lightOpacity[world.getBlockId(i, j + 1, k)] > 2)
{
if(random.nextInt(4) != 0)
{
return;
}
world.setBlockWithNotify(i, j, k, mod_Namehere.NamehereDirt.blockID);
} else
if(world.getBlockLightValue(i, j + 1, k) >= 9)
{
int l = (i + random.nextInt(3)) - 1;
int i1 = (j + random.nextInt(5)) - 3;
int j1 = (k + random.nextInt(3)) - 1;
int k1 = world.getBlockId(l, i1 + 1, j1);
if(world.getBlockId(l, i1, j1) == mod_Namehere.NamehereDirt.blockID && world.getBlockLightValue(l, i1 + 1, j1) >= 4 && Block.lightOpacity[k1] <= 2)
{
world.setBlockWithNotify(l, i1, j1, mod_Namehere.NamehereGrass.blockID);
}
}
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereDirt.idDropped(0, random);
}
}
BlockNamehereStone
package net.minecraft.src;
import java.util.Random;
public class BlockNamehereStone extends Block
{
public BlockNamehereStone(int i, int j)
{
super(i, j, Material.rock);
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereStone.blockID;
}
}
BlockNameherePortalStarter
package net.minecraft.src;
public class BlockNameherePortalStarter extends Block
{
public BlockNameherePortalStarter(int i, int j, Material material)
{
super(i, j, material);
}
public void onBlockAdded(World world, int i, int j, int k){
if(world.getBlockId(i, j - 1, k) == Block.dirt.blockID && mod_Namehere.NameherePortal.tryToCreatePortal(world, i, j, k))
{
return;
}else {
world.setBlockWithNotify(i, j, k, 0);
}
}
}
BlockPortalNamehere
package net.minecraft.src;
import java.util.Random;
public class BlockPortalNamehere extends BlockBreakable
{
public BlockPortalNamehere(int i, int j)
{
super(i, j, Material.portal, false);
}
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int i, int j, int k)
{
return null;
}
public void setBlockBoundsBasedOnState(IBlockAccess iblockaccess, int i, int j, int k)
{
if(iblockaccess.getBlockId(i - 1, j, k) == blockID || iblockaccess.getBlockId(i + 1, j, k) == blockID)
{
float f = 0.5F;
float f2 = 0.125F;
setBlockBounds(0.5F - f, 0.0F, 0.5F - f2, 0.5F + f, 1.0F, 0.5F + f2);
} else
{
float f1 = 0.125F;
float f3 = 0.5F;
setBlockBounds(0.5F - f1, 0.0F, 0.5F - f3, 0.5F + f1, 1.0F, 0.5F + f3);
}
}
public boolean isOpaqueCube()
{
return false;
}
public boolean renderAsNormalBlock()
{
return false;
}
public boolean tryToCreatePortal(World world, int i, int j, int k)
{
int l = 0;
int i1 = 0;
if(world.getBlockId(i - 1, j, k) == Block.dirt.blockID || world.getBlockId(i + 1, j, k) == Block.dirt.blockID)
{
l = 1;
}
if(world.getBlockId(i, j, k - 1) == Block.dirt.blockID || world.getBlockId(i, j, k + 1) == Block.dirt.blockID)
{
i1 = 1;
}
if(l == i1)
{
return false;
}
if(world.getBlockId(i - l, j, k - i1) == 0)
{
i -= l;
k -= i1;
}
for(int l1 = -1; l1 <= 2; l1++)
{
for(int j1 = -1; j1 <= 3; j1++)
{
boolean flag = l1 == -1 || l1 == 2 || j1 == -1 || j1 == 3;
if(l1 != -1 && l1 != 2 || j1 != -1 && j1 != 3)
{
int j2 = world.getBlockId(i + l * l1, j + j1, k + i1 * l1);
if(flag)
{
if(j2 != Block.dirt.blockID)
{
return false;
}
} else
if(j2 != 0 && j2 != mod_Namehere.NameherePortal.blockID)
{
return false;
}
}
}
}
world.editingBlocks = true;
for(int i2 = 0; i2 < 2; i2++)
{
for(int k1 = 0; k1 < 3; k1++)
{
world.setBlockWithNotify(i + l * i2, j + k1, k + i1 * i2, mod_Namehere.NameherePortal.blockID);
}
}
world.editingBlocks = false;
return true;
}
public void onNeighborBlockChange(World world, int i, int j, int k, int l)
{
int i1 = 0;
int j1 = 1;
if(world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID)
{
i1 = 1;
j1 = 0;
}
int k1;
for(k1 = j; world.getBlockId(i, k1 - 1, k) == blockID; k1--) { }
if(world.getBlockId(i, k1 - 1, k) != Block.dirt.blockID)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
int l1;
for(l1 = 1; l1 < 4 && world.getBlockId(i, k1 + l1, k) == blockID; l1++) { }
if(l1 != 3 || world.getBlockId(i, k1 + l1, k) != Block.dirt.blockID)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
boolean flag = world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID;
boolean flag1 = world.getBlockId(i, j, k - 1) == blockID || world.getBlockId(i, j, k + 1) == blockID;
if(flag && flag1)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
if((world.getBlockId(i + i1, j, k + j1) != Block.dirt.blockID || world.getBlockId(i - i1, j, k - j1) != blockID) && (world.getBlockId(i - i1, j, k - j1) != Block.dirt.blockID || world.getBlockId(i + i1, j, k + j1) != blockID))
{
world.setBlockWithNotify(i, j, k, 0);
return;
} else
{
return;
}
}
public boolean shouldSideBeRendered(IBlockAccess iblockaccess, int i, int j, int k, int l)
{
if(iblockaccess.getBlockId(i, j, k) == blockID)
{
return false;
}
boolean flag = iblockaccess.getBlockId(i - 1, j, k) == blockID && iblockaccess.getBlockId(i - 2, j, k) != blockID;
boolean flag1 = iblockaccess.getBlockId(i + 1, j, k) == blockID && iblockaccess.getBlockId(i + 2, j, k) != blockID;
boolean flag2 = iblockaccess.getBlockId(i, j, k - 1) == blockID && iblockaccess.getBlockId(i, j, k - 2) != blockID;
boolean flag3 = iblockaccess.getBlockId(i, j, k + 1) == blockID && iblockaccess.getBlockId(i, j, k + 2) != blockID;
boolean flag4 = flag || flag1;
boolean flag5 = flag2 || flag3;
if(flag4 && l == 4)
{
return true;
}
if(flag4 && l == 5)
{
return true;
}
if(flag5 && l == 2)
{
return true;
}
return flag5 && l == 3;
}
public int quantityDropped(Random random)
{
return 0;
}
public int getRenderBlockPass()
{
return 1;
}
public void onEntityCollidedWithBlock(World world, int i, int j, int k, Entity entity)
{
if(entity.ridingEntity == null && entity.riddenByEntity == null)
{
if(entity instanceof EntityPlayerSP)
{
EntityPlayerSP entityplayersp = (EntityPlayerSP)entity;
entityplayersp.portal = getDimNumber();
}
entity.setInPortal();
}
}
public void randomDisplayTick(World world, int i, int j, int k, Random random)
{
if(random.nextInt(100) == 0)
{
world.playSoundEffect((double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D, "portal.portal", 1.0F, random.nextFloat() * 0.4F + 0.8F);
}
for(int l = 0; l < 4; l++)
{
double d = (float)i + random.nextFloat();
double d1 = (float)j + random.nextFloat();
double d2 = (float)k + random.nextFloat();
double d3 = 0.0D;
double d4 = 0.0D;
double d5 = 0.0D;
int i1 = random.nextInt(2) * 2 - 1;
d3 = ((double)random.nextFloat() - 0.5D) * 0.5D;
d4 = ((double)random.nextFloat() - 0.5D) * 0.5D;
d5 = ((double)random.nextFloat() - 0.5D) * 0.5D;
if(world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID)
{
d2 = (double)k + 0.5D + 0.25D * (double)i1;
d5 = random.nextFloat() * 2.0F * (float)i1;
} else
{
d = (double)i + 0.5D + 0.25D * (double)i1;
d3 = random.nextFloat() * 2.0F * (float)i1;
}
world.spawnParticle("portal", d, d1, d2, d3, d4, d5);
}
}
public int getDimNumber()
{
return 1001;
}
}
ChunkProviderNamehere
package net.minecraft.src;
import java.util.Random;
public class ChunkProviderNamehere
implements IChunkProvider
{
public ChunkProviderNamehere(World world, long l)
{
field_28079_r = new double[256];
field_28078_s = new double[256];
field_28077_t = new double[256];
field_28076_u = new MapGenCavesNamehere();
field_28088_i = new int[32][32];
field_28081_p = world;
field_28087_j = new Random(l);
field_28086_k = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28085_l = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28084_m = new NoiseGeneratorOctaves(field_28087_j, 8);
field_28083_n = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28082_o = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28096_a = new NoiseGeneratorOctaves(field_28087_j, 10);
field_28095_b = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28094_c = new NoiseGeneratorOctaves(field_28087_j, 8);
}
public void func_28071_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[], double ad[])
{
byte byte0 = 2;
int k = byte0 + 1;
byte byte1 = 33;
int l = byte0 + 1;
field_28080_q = func_28073_a(field_28080_q, i * byte0, 0, j * byte0, k, byte1, l);
for(int i1 = 0; i1 < byte0; i1++)
{
for(int j1 = 0; j1 < byte0; j1++)
{
for(int k1 = 0; k1 < 32; k1++)
{
double d = 0.25D;
double d1 = field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d2 = field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d3 = field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d4 = field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d5 = (field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d1) * d;
double d6 = (field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d2) * d;
double d7 = (field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d3) * d;
double d8 = (field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d4) * d;
for(int l1 = 0; l1 < 4; l1++)
{
double d9 = 0.125D;
double d10 = d1;
double d11 = d2;
double d12 = (d3 - d1) * d9;
double d13 = (d4 - d2) * d9;
for(int i2 = 0; i2 < 8; i2++)
{
int j2 = i2 + i1 * 8 << 11 | 0 + j1 * 8 << 7 | k1 * 4 + l1;
char c = '\200';
double d14 = 0.125D;
double d15 = d10;
double d16 = (d11 - d10) * d14;
for(int k2 = 0; k2 < 8; k2++)
{
int l2 = 0;
if(d15 > 0.0D)
{
l2 = mod_Namehere.NamehereStone.blockID;
}
abyte0[j2] = (byte)l2;
j2 += c;
d15 += d16;
}
d10 += d12;
d11 += d13;
}
d1 += d5;
d2 += d6;
d3 += d7;
d4 += d8;
}
}
}
}
}
public void func_28072_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[])
{
double d = 0.03125D;
field_28079_r = field_28083_n.generateNoiseOctaves(field_28079_r, i * 16, j * 16, 0.0D, 16, 16, 1, d, d, 1.0D);
field_28078_s = field_28083_n.generateNoiseOctaves(field_28078_s, i * 16, 109.0134D, j * 16, 16, 1, 16, d, 1.0D, d);
field_28077_t = field_28082_o.generateNoiseOctaves(field_28077_t, i * 16, j * 16, 0.0D, 16, 16, 1, d * 2D, d * 2D, d * 2D);
for(int k = 0; k < 16; k++)
{
for(int l = 0; l < 16; l++)
{
BiomeGenBase biomegenbase = abiomegenbase[k + l * 16];
int i1 = (int)(field_28077_t[k + l * 16] / 3D + 3D + field_28087_j.nextDouble() * 0.25D);
int j1 = -1;
byte byte0 = (byte)mod_Namehere.NamehereGrass.blockID;
byte byte1 = (byte)mod_Namehere.NamehereDirt.blockID;
for(int k1 = 127; k1 >= 0; k1--)
{
int l1 = (l * 16 + k) * 128 + k1;
byte byte2 = abyte0[l1];
if(byte2 == 0)
{
j1 = -1;
continue;
}
if(byte2 != (byte)mod_Namehere.NamehereStone.blockID)
{
continue;
}
if(j1 == -1)
{
if(i1 <= 0)
{
byte0 = 0;
byte1 = (byte)mod_Namehere.NamehereStone.blockID;
}
j1 = i1;
if(k1 >= 0)
{
abyte0[l1] = byte0;
} else
{
abyte0[l1] = byte1;
}
continue;
}
if(j1 <= 0)
{
continue;
}
j1--;
abyte0[l1] = byte1;
if(j1 == 0 && byte1 == Block.sand.blockID)
{
j1 = field_28087_j.nextInt(4);
byte1 = (byte)Block.sandStone.blockID;
}
}
}
}
}
public Chunk prepareChunk(int i, int j)
{
return provideChunk(i, j);
}
public Chunk provideChunk(int i, int j)
{
field_28087_j.setSeed((long)i * 0x4f9939f508L + (long)j * 0x1ef1565bd5L);
byte abyte0[] = new byte[32768];
Chunk chunk = new Chunk(field_28081_p, abyte0, i, j);
field_28075_v = field_28081_p.getWorldChunkManager().loadBlockGeneratorData(field_28075_v, i * 16, j * 16, 16, 16);
double ad[] = field_28081_p.getWorldChunkManager().temperature;
func_28071_a(i, j, abyte0, field_28075_v, ad);
func_28072_a(i, j, abyte0, field_28075_v);
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
chunk.func_1024_c();
return chunk;
}
private double[] func_28073_a(double ad[], int i, int j, int k, int l, int i1, int j1)
{
if(ad == null)
{
ad = new double[l * i1 * j1];
}
double d = 684.41200000000003D;
double d1 = 684.41200000000003D;
double ad1[] = field_28081_p.getWorldChunkManager().temperature;
double ad2[] = field_28081_p.getWorldChunkManager().humidity;
field_28090_g = field_28096_a.func_4109_a(field_28090_g, i, k, l, j1, 1.121D, 1.121D, 0.5D);
field_28089_h = field_28095_b.func_4109_a(field_28089_h, i, k, l, j1, 200D, 200D, 0.5D);
d *= 2D;
field_28093_d = field_28084_m.generateNoiseOctaves(field_28093_d, i, j, k, l, i1, j1, d / 80D, d1 / 160D, d / 80D);
field_28092_e = field_28086_k.generateNoiseOctaves(field_28092_e, i, j, k, l, i1, j1, d, d1, d);
field_28091_f = field_28085_l.generateNoiseOctaves(field_28091_f, i, j, k, l, i1, j1, d, d1, d);
int k1 = 0;
int l1 = 0;
int i2 = 16 / l;
for(int j2 = 0; j2 < l; j2++)
{
int k2 = j2 * i2 + i2 / 2;
for(int l2 = 0; l2 < j1; l2++)
{
int i3 = l2 * i2 + i2 / 2;
double d2 = ad1[k2 * 16 + i3];
double d3 = ad2[k2 * 16 + i3] * d2;
double d4 = 1.0D - d3;
d4 *= d4;
d4 *= d4;
d4 = 1.0D - d4;
double d5 = (field_28090_g[l1] + 256D) / 512D;
d5 *= d4;
if(d5 > 1.0D)
{
d5 = 1.0D;
}
double d6 = field_28089_h[l1] / 8000D;
if(d6 < 0.0D)
{
d6 = -d6 * 0.29999999999999999D;
}
d6 = d6 * 3D - 2D;
if(d6 > 1.0D)
{
d6 = 1.0D;
}
d6 /= 8D;
d6 = 0.0D;
if(d5 < 0.0D)
{
d5 = 0.0D;
}
d5 += 0.5D;
d6 = (d6 * (double)i1) / 16D;
l1++;
double d7 = (double)i1 / 2D;
for(int j3 = 0; j3 < i1; j3++)
{
double d8 = 0.0D;
double d9 = (((double)j3 - d7) * 8D) / d5;
if(d9 < 0.0D)
{
d9 *= -1D;
}
double d10 = field_28092_e[k1] / 512D;
double d11 = field_28091_f[k1] / 512D;
double d12 = (field_28093_d[k1] / 10D + 1.0D) / 2D;
if(d12 < 0.0D)
{
d8 = d10;
} else
if(d12 > 1.0D)
{
d8 = d11;
} else
{
d8 = d10 + (d11 - d10) * d12;
}
d8 -= 8D;
int k3 = 32;
if(j3 > i1 - k3)
{
double d13 = (float)(j3 - (i1 - k3)) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d13) + -30D * d13;
}
k3 = 8;
if(j3 < k3)
{
double d14 = (float)(k3 - j3) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d14) + -30D * d14;
}
ad[k1] = d8;
k1++;
}
}
}
return ad;
}
public boolean chunkExists(int i, int j)
{
return true;
}
public void populate(IChunkProvider ichunkprovider, int i, int j)
{
BlockSand.fallInstantly = true;
int k = i * 16;
int l = j * 16;
BiomeGenBase biomegenbase = field_28081_p.getWorldChunkManager().getBiomeGenAt(k + 16, l + 16);
field_28087_j.setSeed(field_28081_p.getRandomSeed());
long l1 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
long l2 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
field_28087_j.setSeed((long)i * l1 + (long)j * l2 ^ field_28081_p.getRandomSeed());
double d = 0.25D;
if(field_28087_j.nextInt(4) == 0)
{
int i1 = k + field_28087_j.nextInt(16) + 8;
int l4 = field_28087_j.nextInt(128);
int i8 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLakes(Block.waterStill.blockID)).generate(field_28081_p, field_28087_j, i1, l4, i8);
}
if(field_28087_j.nextInt(8) == 0)
{
int j1 = k + field_28087_j.nextInt(16) + 8;
int i5 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int j8 = l + field_28087_j.nextInt(16) + 8;
if(i5 < 64 || field_28087_j.nextInt(10) == 0)
{
(new WorldGenLakes(Block.lavaStill.blockID)).generate(field_28081_p, field_28087_j, j1, i5, j8);
}
}
for(int k1 = 0; k1 < 8; k1++)
{
int j5 = k + field_28087_j.nextInt(16) + 8;
int k8 = field_28087_j.nextInt(128);
int i13 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenDungeons()).generate(field_28081_p, field_28087_j, j5, k8, i13);
}
for(int i2 = 0; i2 < 10; i2++)
{
int k5 = k + field_28087_j.nextInt(16);
int l8 = field_28087_j.nextInt(128);
int j13 = l + field_28087_j.nextInt(16);
(new WorldGenClay(32)).generate(field_28081_p, field_28087_j, k5, l8, j13);
}
for(int j2 = 0; j2 < 20; j2++)
{
int l5 = k + field_28087_j.nextInt(16);
int i9 = field_28087_j.nextInt(128);
int k13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.dirt.blockID, 32)).generate(field_28081_p, field_28087_j, l5, i9, k13);
}
for(int k2 = 0; k2 < 10; k2++)
{
int i6 = k + field_28087_j.nextInt(16);
int j9 = field_28087_j.nextInt(128);
int l13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.gravel.blockID, 32)).generate(field_28081_p, field_28087_j, i6, j9, l13);
}
for(int i3 = 0; i3 < 20; i3++)
{
int j6 = k + field_28087_j.nextInt(16);
int k9 = field_28087_j.nextInt(128);
int i14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreCoal.blockID, 16)).generate(field_28081_p, field_28087_j, j6, k9, i14);
}
for(int j3 = 0; j3 < 20; j3++)
{
int k6 = k + field_28087_j.nextInt(16);
int l9 = field_28087_j.nextInt(64);
int j14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreIron.blockID, 8)).generate(field_28081_p, field_28087_j, k6, l9, j14);
}
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + field_28087_j.nextInt(16);
int i10 = field_28087_j.nextInt(32);
int k14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(field_28081_p, field_28087_j, l6, i10, k14);
}
for(int l3 = 0; l3 < 8; l3++)
{
int i7 = k + field_28087_j.nextInt(16);
int j10 = field_28087_j.nextInt(16);
int l14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreRedstone.blockID, 7)).generate(field_28081_p, field_28087_j, i7, j10, l14);
}
for(int i4 = 0; i4 < 1; i4++)
{
int j7 = k + field_28087_j.nextInt(16);
int k10 = field_28087_j.nextInt(16);
int i15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreDiamond.blockID, 7)).generate(field_28081_p, field_28087_j, j7, k10, i15);
}
for(int j4 = 0; j4 < 1; j4++)
{
int k7 = k + field_28087_j.nextInt(16);
int l10 = field_28087_j.nextInt(16) + field_28087_j.nextInt(16);
int j15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreLapis.blockID, 6)).generate(field_28081_p, field_28087_j, k7, l10, j15);
}
d = 0.5D;
int k4 = (int)((field_28094_c.func_806_a((double)k * d, (double)l * d) / 8D + field_28087_j.nextDouble() * 4D + 4D) / 3D);
int l7 = 0;
if(field_28087_j.nextInt(10) == 0)
{
l7++;
}
if(biomegenbase == BiomeGenBase.forest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.rainforest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.seasonalForest)
{
//l7 += k4 + 2;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.taiga)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.desert)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.tundra)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.plains)
{
//l7 -= 20;
l7 += k4 + 5;
}
for(int i11 = 0; i11 < l7; i11++)
{
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenerator worldgenerator = biomegenbase.getRandomWorldGenForTrees(field_28087_j);
worldgenerator.func_517_a(1.0D, 1.0D, 1.0D);
worldgenerator.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int i11 = 0; i11 < l7; i11++){
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenTreesNamehere treeGen = new WorldGenTreesNamehere();
treeGen.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int j11 = 0; j11 < 2; j11++)
{
int l15 = k + field_28087_j.nextInt(16) + 8;
int k18 = field_28087_j.nextInt(128);
int i21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantYellow.blockID)).generate(field_28081_p, field_28087_j, l15, k18, i21);
}
if(field_28087_j.nextInt(2) == 0)
{
int k11 = k + field_28087_j.nextInt(16) + 8;
int i16 = field_28087_j.nextInt(128);
int l18 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantRed.blockID)).generate(field_28081_p, field_28087_j, k11, i16, l18);
}
if(field_28087_j.nextInt(4) == 0)
{
int l11 = k + field_28087_j.nextInt(16) + 8;
int j16 = field_28087_j.nextInt(128);
int i19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomBrown.blockID)).generate(field_28081_p, field_28087_j, l11, j16, i19);
}
if(field_28087_j.nextInt(8) == 0)
{
int i12 = k + field_28087_j.nextInt(16) + 8;
int k16 = field_28087_j.nextInt(128);
int j19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomRed.blockID)).generate(field_28081_p, field_28087_j, i12, k16, j19);
}
for(int j12 = 0; j12 < 10; j12++)
{
int l16 = k + field_28087_j.nextInt(16) + 8;
int k19 = field_28087_j.nextInt(128);
int j21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenReed()).generate(field_28081_p, field_28087_j, l16, k19, j21);
}
if(field_28087_j.nextInt(32) == 0)
{
int k12 = k + field_28087_j.nextInt(16) + 8;
int i17 = field_28087_j.nextInt(128);
int l19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenPumpkin()).generate(field_28081_p, field_28087_j, k12, i17, l19);
}
int l12 = 0;
if(biomegenbase == BiomeGenBase.desert)
{
l12 += 10;
}
for(int j17 = 0; j17 < l12; j17++)
{
int i20 = k + field_28087_j.nextInt(16) + 8;
int k21 = field_28087_j.nextInt(128);
int k22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenCactus()).generate(field_28081_p, field_28087_j, i20, k21, k22);
}
for(int k17 = 0; k17 < 50; k17++)
{
int j20 = k + field_28087_j.nextInt(16) + 8;
int l21 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int l22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.waterMoving.blockID)).generate(field_28081_p, field_28087_j, j20, l21, l22);
}
for(int l17 = 0; l17 < 20; l17++)
{
int k20 = k + field_28087_j.nextInt(16) + 8;
int i22 = field_28087_j.nextInt(field_28087_j.nextInt(field_28087_j.nextInt(112) + 8) + 8);
int i23 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.lavaMoving.blockID)).generate(field_28081_p, field_28087_j, k20, i22, i23);
}*/
field_28074_w = field_28081_p.getWorldChunkManager().getTemperatures(field_28074_w, k + 8, l + 8, 16, 16);
for(int i18 = k + 8; i18 < k + 8 + 16; i18++)
{
for(int l20 = l + 8; l20 < l + 8 + 16; l20++)
{
int j22 = i18 - (k + 8);
int j23 = l20 - (l + 8);
int k23 = field_28081_p.findTopSolidBlock(i18, l20);
double d1 = field_28074_w[j22 * 16 + j23] - ((double)(k23 - 64) / 64D) * 0.29999999999999999D;
if(d1 < 0.5D && k23 > 0 && k23 < 128 && field_28081_p.isAirBlock(i18, k23, l20) && field_28081_p.getBlockMaterial(i18, k23 - 1, l20).getIsSolid() && field_28081_p.getBlockMaterial(i18, k23 - 1, l20) != Material.ice)
{
field_28081_p.setBlockWithNotify(i18, k23, l20, Block.snow.blockID);
}
}
}
BlockSand.fallInstantly = false;
}
public boolean saveChunks(boolean flag, IProgressUpdate iprogressupdate)
{
return true;
}
public boolean unload100OldestChunks()
{
return false;
}
public boolean canSave()
{
return true;
}
public String makeString()
{
return "RandomLevelSource";
}
private Random field_28087_j;
private NoiseGeneratorOctaves field_28086_k;
private NoiseGeneratorOctaves field_28085_l;
private NoiseGeneratorOctaves field_28084_m;
private NoiseGeneratorOctaves field_28083_n;
private NoiseGeneratorOctaves field_28082_o;
public NoiseGeneratorOctaves field_28096_a;
public NoiseGeneratorOctaves field_28095_b;
public NoiseGeneratorOctaves field_28094_c;
private World field_28081_p;
private double field_28080_q[];
private double field_28079_r[];
private double field_28078_s[];
private double field_28077_t[];
private MapGenBase field_28076_u;
private BiomeGenBase field_28075_v[];
double field_28093_d[];
double field_28092_e[];
double field_28091_f[];
double field_28090_g[];
double field_28089_h[];
int field_28088_i[][];
private double field_28074_w[];
}
DimensionNamehere
package net.minecraft.src;
public class DimensionNamehere extends DimensionBase
{
public DimensionNamehere()
{
super(1001,WorldProviderNamehere.class,TeleporterNamehere.class);
}
}
ItemNameherePortalStarter
package net.minecraft.src;
public class ItemNameherePortalStarter extends Item
{
public ItemNameherePortalStarter(int i)
{
super(i);
}
public boolean onItemUse(ItemStack itemstack, EntityPlayer entityplayer, World world, int i, int j, int k, int l)
{
if(l == 0)
{
j--;
}
if(l == 1)
{
j++;
}
if(l == 2)
{
k--;
}
if(l == 3)
{
k++;
}
if(l == 4)
{
i--;
}
if(l == 5)
{
i++;
}
int i1 = world.getBlockId(i, j, k);
if(i1 == 0)
{
world.playSoundEffect((double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D, "fire.ignite", 1.0F, itemRand.nextFloat() * 0.4F + 0.8F);
world.setBlockWithNotify(i, j, k, mod_Namehere.BlockNameherePortalStarter.blockID);
}
itemstack.damageItem(1, entityplayer);
return true;
}
}
Does anyone know how to make leaves drop one than one type of item? For instance, when destroyed, they have a chance to drop saplings and regular leaves.
src\minecraft\net\minecraft\src\ChunkProviderMars.java:125: cannot find symbol
symbol : variable byte0
location: class net.minecraft.src.ChunkProviderMars
byte0 = 0;
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:131: cannot find symbol
symbol : variable byte0
location: class net.minecraft.src.ChunkProviderMars
abyte0[l1] = byte0;
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:171: cannot find symbol
symbol : method func_867_a(net.minecraft.src.ChunkProviderMars,net.minecraft.sr
c.World,int,int,byte[])
location: class net.minecraft.src.MapGenBase
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:172: cannot find symbol
symbol : method func_1024_c()
location: class net.minecraft.src.Chunk
chunk.func_1024_c();
^
4 errors
package net.minecraft.src;
import java.util.Random;
public class ChunkProviderMars
implements IChunkProvider
{
public ChunkProviderMars(World world, long l)
{
field_28079_r = new double[256];
field_28078_s = new double[256];
field_28077_t = new double[256];
field_28076_u = new MapGenCavesMars();
field_28088_i = new int[32][32];
field_28081_p = world;
field_28087_j = new Random(l);
field_28086_k = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28085_l = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28084_m = new NoiseGeneratorOctaves(field_28087_j, 8);
field_28083_n = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28082_o = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28096_a = new NoiseGeneratorOctaves(field_28087_j, 10);
field_28095_b = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28094_c = new NoiseGeneratorOctaves(field_28087_j, 8);
}
public void func_28071_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[], double ad[])
{
byte byte0 = 2;
int k = byte0 + 1;
byte byte1 = 33;
int l = byte0 + 1;
field_28080_q = func_28073_a(field_28080_q, i * byte0, 0, j * byte0, k, byte1, l);
for(int i1 = 0; i1 < byte0; i1++)
{
for(int j1 = 0; j1 < byte0; j1++)
{
for(int k1 = 0; k1 < 32; k1++)
{
double d = 0.25D;
double d1 = field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d2 = field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d3 = field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d4 = field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d5 = (field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d1) * d;
double d6 = (field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d2) * d;
double d7 = (field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d3) * d;
double d8 = (field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d4) * d;
for(int l1 = 0; l1 < 4; l1++)
{
double d9 = 0.125D;
double d10 = d1;
double d11 = d2;
double d12 = (d3 - d1) * d9;
double d13 = (d4 - d2) * d9;
for(int i2 = 0; i2 < 8; i2++)
{
int j2 = i2 + i1 * 8 << 11 | 0 + j1 * 8 << 7 | k1 * 4 + l1;
char c = '\200';
double d14 = 0.125D;
double d15 = d10;
double d16 = (d11 - d10) * d14;
for(int k2 = 0; k2 < 8; k2++)
{
int l2 = 0;
if(d15 > 0.0D)
{
l2 = mod_Mars.MarsStone.blockID;
}
abyte0[j2] = (byte)l2;
j2 += c;
d15 += d16;
}
d10 += d12;
d11 += d13;
}
d1 += d5;
d2 += d6;
d3 += d7;
d4 += d8;
}
}
}
}
}
public void func_28072_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[])
{
double d = 0.03125D;
field_28079_r = field_28083_n.generateNoiseOctaves(field_28079_r, i * 16, j * 16, 0.0D, 16, 16, 1, d, d, 1.0D);
field_28078_s = field_28083_n.generateNoiseOctaves(field_28078_s, i * 16, 109.0134D, j * 16, 16, 1, 16, d, 1.0D, d);
field_28077_t = field_28082_o.generateNoiseOctaves(field_28077_t, i * 16, j * 16, 0.0D, 16, 16, 1, d * 2D, d * 2D, d * 2D);
for(int k = 0; k < 16; k++)
{
for(int l = 0; l < 16; l++)
{
BiomeGenBase biomegenbase = abiomegenbase[k + l * 16];
int i1 = (int)(field_28077_t[k + l * 16] / 3D + 3D + field_28087_j.nextDouble() * 0.25D);
int j1 = -1;
byte byte1 = (byte)mod_Mars.MarsSand.blockID;
for(int k1 = 127; k1 >= 0; k1--)
{
int l1 = (l * 16 + k) * 128 + k1;
byte byte2 = abyte0[l1];
if(byte2 == 0)
{
j1 = -1;
continue;
}
if(byte2 != (byte)mod_Mars.MarsStone.blockID)
{
continue;
}
if(j1 == -1)
{
if(i1 <= 0)
{
byte0 = 0;
byte1 = (byte)mod_Mars.MarsStone.blockID;
}
j1 = i1;
if(k1 >= 0)
{
abyte0[l1] = byte0;
} else
{
abyte0[l1] = byte1;
}
continue;
}
if(j1 <= 0)
{
continue;
}
j1--;
abyte0[l1] = byte1;
if(j1 == 0 && byte1 == Block.sand.blockID)
{
j1 = field_28087_j.nextInt(4);
byte1 = (byte)Block.sandStone.blockID;
}
}
}
}
}
public Chunk prepareChunk(int i, int j)
{
return provideChunk(i, j);
}
public Chunk provideChunk(int i, int j)
{
field_28087_j.setSeed((long)i * 0x4f9939f508L + (long)j * 0x1ef1565bd5L);
byte abyte0[] = new byte[32768];
Chunk chunk = new Chunk(field_28081_p, abyte0, i, j);
field_28075_v = field_28081_p.getWorldChunkManager().loadBlockGeneratorData(field_28075_v, i * 16, j * 16, 16, 16);
double ad[] = field_28081_p.getWorldChunkManager().temperature;
func_28071_a(i, j, abyte0, field_28075_v, ad);
func_28072_a(i, j, abyte0, field_28075_v);
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
chunk.func_1024_c();
return chunk;
}
private double[] func_28073_a(double ad[], int i, int j, int k, int l, int i1, int j1)
{
if(ad == null)
{
ad = new double[l * i1 * j1];
}
double d = 684.41200000000003D;
double d1 = 684.41200000000003D;
double ad1[] = field_28081_p.getWorldChunkManager().temperature;
double ad2[] = field_28081_p.getWorldChunkManager().humidity;
field_28090_g = field_28096_a.func_4109_a(field_28090_g, i, k, l, j1, 1.121D, 1.121D, 0.5D);
field_28089_h = field_28095_b.func_4109_a(field_28089_h, i, k, l, j1, 200D, 200D, 0.5D);
d *= 2D;
field_28093_d = field_28084_m.generateNoiseOctaves(field_28093_d, i, j, k, l, i1, j1, d / 80D, d1 / 160D, d / 80D);
field_28092_e = field_28086_k.generateNoiseOctaves(field_28092_e, i, j, k, l, i1, j1, d, d1, d);
field_28091_f = field_28085_l.generateNoiseOctaves(field_28091_f, i, j, k, l, i1, j1, d, d1, d);
int k1 = 0;
int l1 = 0;
int i2 = 16 / l;
for(int j2 = 0; j2 < l; j2++)
{
int k2 = j2 * i2 + i2 / 2;
for(int l2 = 0; l2 < j1; l2++)
{
int i3 = l2 * i2 + i2 / 2;
double d2 = ad1[k2 * 16 + i3];
double d3 = ad2[k2 * 16 + i3] * d2;
double d4 = 1.0D - d3;
d4 *= d4;
d4 *= d4;
d4 = 1.0D - d4;
double d5 = (field_28090_g[l1] + 256D) / 512D;
d5 *= d4;
if(d5 > 1.0D)
{
d5 = 1.0D;
}
double d6 = field_28089_h[l1] / 8000D;
if(d6 < 0.0D)
{
d6 = -d6 * 0.29999999999999999D;
}
d6 = d6 * 3D - 2D;
if(d6 > 1.0D)
{
d6 = 1.0D;
}
d6 /= 8D;
d6 = 0.0D;
if(d5 < 0.0D)
{
d5 = 0.0D;
}
d5 += 0.5D;
d6 = (d6 * (double)i1) / 16D;
l1++;
double d7 = (double)i1 / 2D;
for(int j3 = 0; j3 < i1; j3++)
{
double d8 = 0.0D;
double d9 = (((double)j3 - d7) * 8D) / d5;
if(d9 < 0.0D)
{
d9 *= -1D;
}
double d10 = field_28092_e[k1] / 512D;
double d11 = field_28091_f[k1] / 512D;
double d12 = (field_28093_d[k1] / 10D + 1.0D) / 2D;
if(d12 < 0.0D)
{
d8 = d10;
} else
if(d12 > 1.0D)
{
d8 = d11;
} else
{
d8 = d10 + (d11 - d10) * d12;
}
d8 -= 8D;
int k3 = 32;
if(j3 > i1 - k3)
{
double d13 = (float)(j3 - (i1 - k3)) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d13) + -30D * d13;
}
k3 = 8;
if(j3 < k3)
{
double d14 = (float)(k3 - j3) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d14) + -30D * d14;
}
ad[k1] = d8;
k1++;
}
}
}
return ad;
}
public boolean chunkExists(int i, int j)
{
return true;
}
public void populate(IChunkProvider ichunkprovider, int i, int j)
{
BlockSand.fallInstantly = true;
int k = i * 16;
int l = j * 16;
BiomeGenBase biomegenbase = field_28081_p.getWorldChunkManager().getBiomeGenAt(k + 16, l + 16);
field_28087_j.setSeed(field_28081_p.getRandomSeed());
long l1 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
long l2 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
field_28087_j.setSeed((long)i * l1 + (long)j * l2 ^ field_28081_p.getRandomSeed());
double d = 0.25D;
if(field_28087_j.nextInt(4) == 0)
{
int i1 = k + field_28087_j.nextInt(16) + 8;
int l4 = field_28087_j.nextInt(128);
int i8 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLakes(Block.waterStill.blockID)).generate(field_28081_p, field_28087_j, i1, l4, i8);
}
if(field_28087_j.nextInt(8) == 0)
{
int j1 = k + field_28087_j.nextInt(16) + 8;
int i5 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int j8 = l + field_28087_j.nextInt(16) + 8;
if(i5 < 64 || field_28087_j.nextInt(10) == 0)
{
(new WorldGenLakes(Block.lavaStill.blockID)).generate(field_28081_p, field_28087_j, j1, i5, j8);
}
}
for(int k1 = 0; k1 < 8; k1++)
{
int j5 = k + field_28087_j.nextInt(16) + 8;
int k8 = field_28087_j.nextInt(128);
int i13 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenDungeons()).generate(field_28081_p, field_28087_j, j5, k8, i13);
}
for(int i2 = 0; i2 < 10; i2++)
{
int k5 = k + field_28087_j.nextInt(16);
int l8 = field_28087_j.nextInt(128);
int j13 = l + field_28087_j.nextInt(16);
(new WorldGenClay(32)).generate(field_28081_p, field_28087_j, k5, l8, j13);
}
for(int j2 = 0; j2 < 20; j2++)
{
int l5 = k + field_28087_j.nextInt(16);
int i9 = field_28087_j.nextInt(128);
int k13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.dirt.blockID, 32)).generate(field_28081_p, field_28087_j, l5, i9, k13);
}
for(int k2 = 0; k2 < 10; k2++)
{
int i6 = k + field_28087_j.nextInt(16);
int j9 = field_28087_j.nextInt(128);
int l13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.gravel.blockID, 32)).generate(field_28081_p, field_28087_j, i6, j9, l13);
}
for(int i3 = 0; i3 < 20; i3++)
{
int j6 = k + field_28087_j.nextInt(16);
int k9 = field_28087_j.nextInt(128);
int i14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreCoal.blockID, 16)).generate(field_28081_p, field_28087_j, j6, k9, i14);
}
for(int j3 = 0; j3 < 20; j3++)
{
int k6 = k + field_28087_j.nextInt(16);
int l9 = field_28087_j.nextInt(64);
int j14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreIron.blockID, 8)).generate(field_28081_p, field_28087_j, k6, l9, j14);
}
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + field_28087_j.nextInt(16);
int i10 = field_28087_j.nextInt(32);
int k14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(field_28081_p, field_28087_j, l6, i10, k14);
}
for(int l3 = 0; l3 < 8; l3++)
{
int i7 = k + field_28087_j.nextInt(16);
int j10 = field_28087_j.nextInt(16);
int l14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreRedstone.blockID, 7)).generate(field_28081_p, field_28087_j, i7, j10, l14);
}
for(int i4 = 0; i4 < 1; i4++)
{
int j7 = k + field_28087_j.nextInt(16);
int k10 = field_28087_j.nextInt(16);
int i15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreDiamond.blockID, 7)).generate(field_28081_p, field_28087_j, j7, k10, i15);
}
for(int j4 = 0; j4 < 1; j4++)
{
int k7 = k + field_28087_j.nextInt(16);
int l10 = field_28087_j.nextInt(16) + field_28087_j.nextInt(16);
int j15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreLapis.blockID, 6)).generate(field_28081_p, field_28087_j, k7, l10, j15);
}
d = 0.5D;
int k4 = (int)((field_28094_c.func_806_a((double)k * d, (double)l * d) / 8D + field_28087_j.nextDouble() * 4D + 4D) / 3D);
int l7 = 0;
if(field_28087_j.nextInt(10) == 0)
{
l7++;
}
if(biomegenbase == BiomeGenBase.forest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.rainforest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.seasonalForest)
{
//l7 += k4 + 2;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.taiga)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.desert)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.tundra)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.plains)
{
//l7 -= 20;
l7 += k4 + 5;
}
for(int i11 = 0; i11 < l7; i11++)
{
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenerator worldgenerator = biomegenbase.getRandomWorldGenForTrees(field_28087_j);
worldgenerator.func_517_a(1.0D, 1.0D, 1.0D);
worldgenerator.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int j11 = 0; j11 < 2; j11++)
{
int l15 = k + field_28087_j.nextInt(16) + 8;
int k18 = field_28087_j.nextInt(128);
int i21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantYellow.blockID)).generate(field_28081_p, field_28087_j, l15, k18, i21);
}
if(field_28087_j.nextInt(2) == 0)
{
int k11 = k + field_28087_j.nextInt(16) + 8;
int i16 = field_28087_j.nextInt(128);
int l18 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantRed.blockID)).generate(field_28081_p, field_28087_j, k11, i16, l18);
}
if(field_28087_j.nextInt(4) == 0)
{
int l11 = k + field_28087_j.nextInt(16) + 8;
int j16 = field_28087_j.nextInt(128);
int i19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomBrown.blockID)).generate(field_28081_p, field_28087_j, l11, j16, i19);
}
if(field_28087_j.nextInt(8) == 0)
{
int i12 = k + field_28087_j.nextInt(16) + 8;
int k16 = field_28087_j.nextInt(128);
int j19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomRed.blockID)).generate(field_28081_p, field_28087_j, i12, k16, j19);
}
for(int j12 = 0; j12 < 10; j12++)
{
int l16 = k + field_28087_j.nextInt(16) + 8;
int k19 = field_28087_j.nextInt(128);
int j21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenReed()).generate(field_28081_p, field_28087_j, l16, k19, j21);
}
if(field_28087_j.nextInt(32) == 0)
{
int k12 = k + field_28087_j.nextInt(16) + 8;
int i17 = field_28087_j.nextInt(128);
int l19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenPumpkin()).generate(field_28081_p, field_28087_j, k12, i17, l19);
}
int l12 = 0;
if(biomegenbase == BiomeGenBase.desert)
{
l12 += 10;
}
for(int j17 = 0; j17 < l12; j17++)
{
int i20 = k + field_28087_j.nextInt(16) + 8;
int k21 = field_28087_j.nextInt(128);
int k22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenCactus()).generate(field_28081_p, field_28087_j, i20, k21, k22);
}
for(int k17 = 0; k17 < 50; k17++)
{
int j20 = k + field_28087_j.nextInt(16) + 8;
int l21 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int l22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.waterMoving.blockID)).generate(field_28081_p, field_28087_j, j20, l21, l22);
}
for(int l17 = 0; l17 < 20; l17++)
{
int k20 = k + field_28087_j.nextInt(16) + 8;
int i22 = field_28087_j.nextInt(field_28087_j.nextInt(field_28087_j.nextInt(112) + 8) + 8);
int i23 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.lavaMoving.blockID)).generate(field_28081_p, field_28087_j, k20, i22, i23);
}
field_28074_w = field_28081_p.getWorldChunkManager().getTemperatures(field_28074_w, k + 8, l + 8, 16, 16);
for(int i18 = k + 8; i18 < k + 8 + 16; i18++)
{
for(int l20 = l + 8; l20 < l + 8 + 16; l20++)
{
int j22 = i18 - (k + 8);
int j23 = l20 - (l + 8);
int k23 = field_28081_p.findTopSolidBlock(i18, l20);
double d1 = field_28074_w[j22 * 16 + j23] - ((double)(k23 - 64) / 64D) * 0.29999999999999999D;
if(d1 < 0.5D && k23 > 0 && k23 < 128 && field_28081_p.isAirBlock(i18, k23, l20) && field_28081_p.getBlockMaterial(i18, k23 - 1, l20).getIsSolid() && field_28081_p.getBlockMaterial(i18, k23 - 1, l20) != Material.ice)
{
field_28081_p.setBlockWithNotify(i18, k23, l20, Block.snow.blockID);
}
}
}
BlockSand.fallInstantly = false;
}
public boolean saveChunks(boolean flag, IProgressUpdate iprogressupdate)
{
return true;
}
public boolean unload100OldestChunks()
{
return false;
}
public boolean canSave()
{
return true;
}
public String makeString()
{
return "RandomLevelSource";
}
private Random field_28087_j;
private NoiseGeneratorOctaves field_28086_k;
private NoiseGeneratorOctaves field_28085_l;
private NoiseGeneratorOctaves field_28084_m;
private NoiseGeneratorOctaves field_28083_n;
private NoiseGeneratorOctaves field_28082_o;
public NoiseGeneratorOctaves field_28096_a;
public NoiseGeneratorOctaves field_28095_b;
public NoiseGeneratorOctaves field_28094_c;
private World field_28081_p;
private double field_28080_q[];
private double field_28079_r[];
private double field_28078_s[];
private double field_28077_t[];
private MapGenBase field_28076_u;
private BiomeGenBase field_28075_v[];
double field_28093_d[];
double field_28092_e[];
double field_28091_f[];
double field_28090_g[];
double field_28089_h[];
int field_28088_i[][];
private double field_28074_w[];
}
src\minecraft\net\minecraft\src\ChunkProviderMars.java:125: cannot find symbol
symbol : variable byte0
location: class net.minecraft.src.ChunkProviderMars
byte0 = 0;
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:131: cannot find symbol
symbol : variable byte0
location: class net.minecraft.src.ChunkProviderMars
abyte0[l1] = byte0;
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:171: cannot find symbol
symbol : method func_867_a(net.minecraft.src.ChunkProviderMars,net.minecraft.sr
c.World,int,int,byte[])
location: class net.minecraft.src.MapGenBase
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
^
src\minecraft\net\minecraft\src\ChunkProviderMars.java:172: cannot find symbol
symbol : method func_1024_c()
location: class net.minecraft.src.Chunk
chunk.func_1024_c();
^
4 errors
package net.minecraft.src;
import java.util.Random;
public class ChunkProviderMars
implements IChunkProvider
{
public ChunkProviderMars(World world, long l)
{
field_28079_r = new double[256];
field_28078_s = new double[256];
field_28077_t = new double[256];
field_28076_u = new MapGenCavesMars();
field_28088_i = new int[32][32];
field_28081_p = world;
field_28087_j = new Random(l);
field_28086_k = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28085_l = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28084_m = new NoiseGeneratorOctaves(field_28087_j, 8);
field_28083_n = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28082_o = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28096_a = new NoiseGeneratorOctaves(field_28087_j, 10);
field_28095_b = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28094_c = new NoiseGeneratorOctaves(field_28087_j, 8);
}
public void func_28071_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[], double ad[])
{
byte byte0 = 2;
int k = byte0 + 1;
byte byte1 = 33;
int l = byte0 + 1;
field_28080_q = func_28073_a(field_28080_q, i * byte0, 0, j * byte0, k, byte1, l);
for(int i1 = 0; i1 < byte0; i1++)
{
for(int j1 = 0; j1 < byte0; j1++)
{
for(int k1 = 0; k1 < 32; k1++)
{
double d = 0.25D;
double d1 = field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d2 = field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d3 = field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d4 = field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d5 = (field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d1) * d;
double d6 = (field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d2) * d;
double d7 = (field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d3) * d;
double d8 = (field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d4) * d;
for(int l1 = 0; l1 < 4; l1++)
{
double d9 = 0.125D;
double d10 = d1;
double d11 = d2;
double d12 = (d3 - d1) * d9;
double d13 = (d4 - d2) * d9;
for(int i2 = 0; i2 < 8; i2++)
{
int j2 = i2 + i1 * 8 << 11 | 0 + j1 * 8 << 7 | k1 * 4 + l1;
char c = '\200';
double d14 = 0.125D;
double d15 = d10;
double d16 = (d11 - d10) * d14;
for(int k2 = 0; k2 < 8; k2++)
{
int l2 = 0;
if(d15 > 0.0D)
{
l2 = mod_Mars.MarsStone.blockID;
}
abyte0[j2] = (byte)l2;
j2 += c;
d15 += d16;
}
d10 += d12;
d11 += d13;
}
d1 += d5;
d2 += d6;
d3 += d7;
d4 += d8;
}
}
}
}
}
public void func_28072_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[])
{
double d = 0.03125D;
field_28079_r = field_28083_n.generateNoiseOctaves(field_28079_r, i * 16, j * 16, 0.0D, 16, 16, 1, d, d, 1.0D);
field_28078_s = field_28083_n.generateNoiseOctaves(field_28078_s, i * 16, 109.0134D, j * 16, 16, 1, 16, d, 1.0D, d);
field_28077_t = field_28082_o.generateNoiseOctaves(field_28077_t, i * 16, j * 16, 0.0D, 16, 16, 1, d * 2D, d * 2D, d * 2D);
for(int k = 0; k < 16; k++)
{
for(int l = 0; l < 16; l++)
{
BiomeGenBase biomegenbase = abiomegenbase[k + l * 16];
int i1 = (int)(field_28077_t[k + l * 16] / 3D + 3D + field_28087_j.nextDouble() * 0.25D);
int j1 = -1;
byte byte1 = (byte)mod_Mars.MarsSand.blockID;
for(int k1 = 127; k1 >= 0; k1--)
{
int l1 = (l * 16 + k) * 128 + k1;
byte byte2 = abyte0[l1];
if(byte2 == 0)
{
j1 = -1;
continue;
}
if(byte2 != (byte)mod_Mars.MarsStone.blockID)
{
continue;
}
if(j1 == -1)
{
if(i1 <= 0)
{
byte0 = 0;
byte1 = (byte)mod_Mars.MarsStone.blockID;
}
j1 = i1;
if(k1 >= 0)
{
abyte0[l1] = byte0;
} else
{
abyte0[l1] = byte1;
}
continue;
}
if(j1 <= 0)
{
continue;
}
j1--;
abyte0[l1] = byte1;
if(j1 == 0 && byte1 == Block.sand.blockID)
{
j1 = field_28087_j.nextInt(4);
byte1 = (byte)Block.sandStone.blockID;
}
}
}
}
}
public Chunk prepareChunk(int i, int j)
{
return provideChunk(i, j);
}
public Chunk provideChunk(int i, int j)
{
field_28087_j.setSeed((long)i * 0x4f9939f508L + (long)j * 0x1ef1565bd5L);
byte abyte0[] = new byte[32768];
Chunk chunk = new Chunk(field_28081_p, abyte0, i, j);
field_28075_v = field_28081_p.getWorldChunkManager().loadBlockGeneratorData(field_28075_v, i * 16, j * 16, 16, 16);
double ad[] = field_28081_p.getWorldChunkManager().temperature;
func_28071_a(i, j, abyte0, field_28075_v, ad);
func_28072_a(i, j, abyte0, field_28075_v);
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
chunk.func_1024_c();
return chunk;
}
private double[] func_28073_a(double ad[], int i, int j, int k, int l, int i1, int j1)
{
if(ad == null)
{
ad = new double[l * i1 * j1];
}
double d = 684.41200000000003D;
double d1 = 684.41200000000003D;
double ad1[] = field_28081_p.getWorldChunkManager().temperature;
double ad2[] = field_28081_p.getWorldChunkManager().humidity;
field_28090_g = field_28096_a.func_4109_a(field_28090_g, i, k, l, j1, 1.121D, 1.121D, 0.5D);
field_28089_h = field_28095_b.func_4109_a(field_28089_h, i, k, l, j1, 200D, 200D, 0.5D);
d *= 2D;
field_28093_d = field_28084_m.generateNoiseOctaves(field_28093_d, i, j, k, l, i1, j1, d / 80D, d1 / 160D, d / 80D);
field_28092_e = field_28086_k.generateNoiseOctaves(field_28092_e, i, j, k, l, i1, j1, d, d1, d);
field_28091_f = field_28085_l.generateNoiseOctaves(field_28091_f, i, j, k, l, i1, j1, d, d1, d);
int k1 = 0;
int l1 = 0;
int i2 = 16 / l;
for(int j2 = 0; j2 < l; j2++)
{
int k2 = j2 * i2 + i2 / 2;
for(int l2 = 0; l2 < j1; l2++)
{
int i3 = l2 * i2 + i2 / 2;
double d2 = ad1[k2 * 16 + i3];
double d3 = ad2[k2 * 16 + i3] * d2;
double d4 = 1.0D - d3;
d4 *= d4;
d4 *= d4;
d4 = 1.0D - d4;
double d5 = (field_28090_g[l1] + 256D) / 512D;
d5 *= d4;
if(d5 > 1.0D)
{
d5 = 1.0D;
}
double d6 = field_28089_h[l1] / 8000D;
if(d6 < 0.0D)
{
d6 = -d6 * 0.29999999999999999D;
}
d6 = d6 * 3D - 2D;
if(d6 > 1.0D)
{
d6 = 1.0D;
}
d6 /= 8D;
d6 = 0.0D;
if(d5 < 0.0D)
{
d5 = 0.0D;
}
d5 += 0.5D;
d6 = (d6 * (double)i1) / 16D;
l1++;
double d7 = (double)i1 / 2D;
for(int j3 = 0; j3 < i1; j3++)
{
double d8 = 0.0D;
double d9 = (((double)j3 - d7) * 8D) / d5;
if(d9 < 0.0D)
{
d9 *= -1D;
}
double d10 = field_28092_e[k1] / 512D;
double d11 = field_28091_f[k1] / 512D;
double d12 = (field_28093_d[k1] / 10D + 1.0D) / 2D;
if(d12 < 0.0D)
{
d8 = d10;
} else
if(d12 > 1.0D)
{
d8 = d11;
} else
{
d8 = d10 + (d11 - d10) * d12;
}
d8 -= 8D;
int k3 = 32;
if(j3 > i1 - k3)
{
double d13 = (float)(j3 - (i1 - k3)) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d13) + -30D * d13;
}
k3 = 8;
if(j3 < k3)
{
double d14 = (float)(k3 - j3) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d14) + -30D * d14;
}
ad[k1] = d8;
k1++;
}
}
}
return ad;
}
public boolean chunkExists(int i, int j)
{
return true;
}
public void populate(IChunkProvider ichunkprovider, int i, int j)
{
BlockSand.fallInstantly = true;
int k = i * 16;
int l = j * 16;
BiomeGenBase biomegenbase = field_28081_p.getWorldChunkManager().getBiomeGenAt(k + 16, l + 16);
field_28087_j.setSeed(field_28081_p.getRandomSeed());
long l1 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
long l2 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
field_28087_j.setSeed((long)i * l1 + (long)j * l2 ^ field_28081_p.getRandomSeed());
double d = 0.25D;
if(field_28087_j.nextInt(4) == 0)
{
int i1 = k + field_28087_j.nextInt(16) + 8;
int l4 = field_28087_j.nextInt(128);
int i8 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLakes(Block.waterStill.blockID)).generate(field_28081_p, field_28087_j, i1, l4, i8);
}
if(field_28087_j.nextInt(8) == 0)
{
int j1 = k + field_28087_j.nextInt(16) + 8;
int i5 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int j8 = l + field_28087_j.nextInt(16) + 8;
if(i5 < 64 || field_28087_j.nextInt(10) == 0)
{
(new WorldGenLakes(Block.lavaStill.blockID)).generate(field_28081_p, field_28087_j, j1, i5, j8);
}
}
for(int k1 = 0; k1 < 8; k1++)
{
int j5 = k + field_28087_j.nextInt(16) + 8;
int k8 = field_28087_j.nextInt(128);
int i13 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenDungeons()).generate(field_28081_p, field_28087_j, j5, k8, i13);
}
for(int i2 = 0; i2 < 10; i2++)
{
int k5 = k + field_28087_j.nextInt(16);
int l8 = field_28087_j.nextInt(128);
int j13 = l + field_28087_j.nextInt(16);
(new WorldGenClay(32)).generate(field_28081_p, field_28087_j, k5, l8, j13);
}
for(int j2 = 0; j2 < 20; j2++)
{
int l5 = k + field_28087_j.nextInt(16);
int i9 = field_28087_j.nextInt(128);
int k13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.dirt.blockID, 32)).generate(field_28081_p, field_28087_j, l5, i9, k13);
}
for(int k2 = 0; k2 < 10; k2++)
{
int i6 = k + field_28087_j.nextInt(16);
int j9 = field_28087_j.nextInt(128);
int l13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.gravel.blockID, 32)).generate(field_28081_p, field_28087_j, i6, j9, l13);
}
for(int i3 = 0; i3 < 20; i3++)
{
int j6 = k + field_28087_j.nextInt(16);
int k9 = field_28087_j.nextInt(128);
int i14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreCoal.blockID, 16)).generate(field_28081_p, field_28087_j, j6, k9, i14);
}
for(int j3 = 0; j3 < 20; j3++)
{
int k6 = k + field_28087_j.nextInt(16);
int l9 = field_28087_j.nextInt(64);
int j14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreIron.blockID, 8)).generate(field_28081_p, field_28087_j, k6, l9, j14);
}
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + field_28087_j.nextInt(16);
int i10 = field_28087_j.nextInt(32);
int k14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(field_28081_p, field_28087_j, l6, i10, k14);
}
for(int l3 = 0; l3 < 8; l3++)
{
int i7 = k + field_28087_j.nextInt(16);
int j10 = field_28087_j.nextInt(16);
int l14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreRedstone.blockID, 7)).generate(field_28081_p, field_28087_j, i7, j10, l14);
}
for(int i4 = 0; i4 < 1; i4++)
{
int j7 = k + field_28087_j.nextInt(16);
int k10 = field_28087_j.nextInt(16);
int i15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreDiamond.blockID, 7)).generate(field_28081_p, field_28087_j, j7, k10, i15);
}
for(int j4 = 0; j4 < 1; j4++)
{
int k7 = k + field_28087_j.nextInt(16);
int l10 = field_28087_j.nextInt(16) + field_28087_j.nextInt(16);
int j15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreLapis.blockID, 6)).generate(field_28081_p, field_28087_j, k7, l10, j15);
}
d = 0.5D;
int k4 = (int)((field_28094_c.func_806_a((double)k * d, (double)l * d) / 8D + field_28087_j.nextDouble() * 4D + 4D) / 3D);
int l7 = 0;
if(field_28087_j.nextInt(10) == 0)
{
l7++;
}
if(biomegenbase == BiomeGenBase.forest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.rainforest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.seasonalForest)
{
//l7 += k4 + 2;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.taiga)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.desert)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.tundra)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.plains)
{
//l7 -= 20;
l7 += k4 + 5;
}
for(int i11 = 0; i11 < l7; i11++)
{
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenerator worldgenerator = biomegenbase.getRandomWorldGenForTrees(field_28087_j);
worldgenerator.func_517_a(1.0D, 1.0D, 1.0D);
worldgenerator.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int j11 = 0; j11 < 2; j11++)
{
int l15 = k + field_28087_j.nextInt(16) + 8;
int k18 = field_28087_j.nextInt(128);
int i21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantYellow.blockID)).generate(field_28081_p, field_28087_j, l15, k18, i21);
}
if(field_28087_j.nextInt(2) == 0)
{
int k11 = k + field_28087_j.nextInt(16) + 8;
int i16 = field_28087_j.nextInt(128);
int l18 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantRed.blockID)).generate(field_28081_p, field_28087_j, k11, i16, l18);
}
if(field_28087_j.nextInt(4) == 0)
{
int l11 = k + field_28087_j.nextInt(16) + 8;
int j16 = field_28087_j.nextInt(128);
int i19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomBrown.blockID)).generate(field_28081_p, field_28087_j, l11, j16, i19);
}
if(field_28087_j.nextInt(8) == 0)
{
int i12 = k + field_28087_j.nextInt(16) + 8;
int k16 = field_28087_j.nextInt(128);
int j19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomRed.blockID)).generate(field_28081_p, field_28087_j, i12, k16, j19);
}
for(int j12 = 0; j12 < 10; j12++)
{
int l16 = k + field_28087_j.nextInt(16) + 8;
int k19 = field_28087_j.nextInt(128);
int j21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenReed()).generate(field_28081_p, field_28087_j, l16, k19, j21);
}
if(field_28087_j.nextInt(32) == 0)
{
int k12 = k + field_28087_j.nextInt(16) + 8;
int i17 = field_28087_j.nextInt(128);
int l19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenPumpkin()).generate(field_28081_p, field_28087_j, k12, i17, l19);
}
int l12 = 0;
if(biomegenbase == BiomeGenBase.desert)
{
l12 += 10;
}
for(int j17 = 0; j17 < l12; j17++)
{
int i20 = k + field_28087_j.nextInt(16) + 8;
int k21 = field_28087_j.nextInt(128);
int k22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenCactus()).generate(field_28081_p, field_28087_j, i20, k21, k22);
}
for(int k17 = 0; k17 < 50; k17++)
{
int j20 = k + field_28087_j.nextInt(16) + 8;
int l21 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int l22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.waterMoving.blockID)).generate(field_28081_p, field_28087_j, j20, l21, l22);
}
for(int l17 = 0; l17 < 20; l17++)
{
int k20 = k + field_28087_j.nextInt(16) + 8;
int i22 = field_28087_j.nextInt(field_28087_j.nextInt(field_28087_j.nextInt(112) + 8) + 8);
int i23 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.lavaMoving.blockID)).generate(field_28081_p, field_28087_j, k20, i22, i23);
}
field_28074_w = field_28081_p.getWorldChunkManager().getTemperatures(field_28074_w, k + 8, l + 8, 16, 16);
for(int i18 = k + 8; i18 < k + 8 + 16; i18++)
{
for(int l20 = l + 8; l20 < l + 8 + 16; l20++)
{
int j22 = i18 - (k + 8);
int j23 = l20 - (l + 8);
int k23 = field_28081_p.findTopSolidBlock(i18, l20);
double d1 = field_28074_w[j22 * 16 + j23] - ((double)(k23 - 64) / 64D) * 0.29999999999999999D;
if(d1 < 0.5D && k23 > 0 && k23 < 128 && field_28081_p.isAirBlock(i18, k23, l20) && field_28081_p.getBlockMaterial(i18, k23 - 1, l20).getIsSolid() && field_28081_p.getBlockMaterial(i18, k23 - 1, l20) != Material.ice)
{
field_28081_p.setBlockWithNotify(i18, k23, l20, Block.snow.blockID);
}
}
}
BlockSand.fallInstantly = false;
}
public boolean saveChunks(boolean flag, IProgressUpdate iprogressupdate)
{
return true;
}
public boolean unload100OldestChunks()
{
return false;
}
public boolean canSave()
{
return true;
}
public String makeString()
{
return "RandomLevelSource";
}
private Random field_28087_j;
private NoiseGeneratorOctaves field_28086_k;
private NoiseGeneratorOctaves field_28085_l;
private NoiseGeneratorOctaves field_28084_m;
private NoiseGeneratorOctaves field_28083_n;
private NoiseGeneratorOctaves field_28082_o;
public NoiseGeneratorOctaves field_28096_a;
public NoiseGeneratorOctaves field_28095_b;
public NoiseGeneratorOctaves field_28094_c;
private World field_28081_p;
private double field_28080_q[];
private double field_28079_r[];
private double field_28078_s[];
private double field_28077_t[];
private MapGenBase field_28076_u;
private BiomeGenBase field_28075_v[];
double field_28093_d[];
double field_28092_e[];
double field_28091_f[];
double field_28090_g[];
double field_28089_h[];
int field_28088_i[][];
private double field_28074_w[];
}
Stop all caping like a 7 year old who is desperate for attention. Also, do you know what the errors mean? If you do not, why are you even attempting to do something this advanced?
You are awesome! Thanks for finishing the dimension tutorial!!! :biggrin.gif: I will attempt it this weekend. And if I succeed i'll tell you how I did :smile.gif:
Stop all caping like a 7 year old who is desperate for attention. Also, do you know what the errors mean? If you do not, why are you even attempting to do something this advanced?
I agree. I don't want to help on this tutorial because I've already stated that this is for advanced modders.
@addemod, This is all the help your getting: "Have a look into ChunkProviderHell" or something like that to replace those "func_blabla".
Note: You will need a thing called fernflower.jar for this to work. You can get it here. Put it in runtime/bin along with the other .jar's. Then put ShockahPI in your normal jar where you put modloader and decompile.
mod_Namehere
package net.minecraft.src;
public class mod_Namehere extends BaseMod
{
public mod_Namehere()
{
new DimensionNamehere().name = "Namehere";
ModLoader.RegisterBlock(NameherePortal);
ModLoader.RegisterBlock(NamehereStone);
ModLoader.RegisterBlock(NamehereDirt);
ModLoader.RegisterBlock(NamehereGrass);
ModLoader.RegisterBlock(BlockNameherePortalStarter);
ModLoader.AddName(PortalStarterNamehere, "Namehere Portal Starter");
ModLoader.AddName(NamehereStone, "Namehere Stone");
ModLoader.AddName(NamehereDirt, "Namehere Dirt");
ModLoader.AddName(NamehereGrass, "Namehere Grass");
NamehereStoneTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereStone.png");
NamehereGrassTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereGrass.png");
NamehereDirtTexture = ModLoader.addOverride("/terrain.png", "/Myfolder/NamehereDirt.png");
NamehereGrass.blockIndexInTexture = NamehereGrassTexture;
NamehereStone.blockIndexInTexture = NamehereStoneTexture;
NamehereDirt.blockIndexInTexture = NamehereDirtTexture;
ToolBase.Shovel.mineBlocks.add(new BlockHarvestPower(NamehereDirt.blockID, 0.0F));
ToolBase.Shovel.mineBlocks.add(new BlockHarvestPower(NamehereGrass.blockID, 0.0F));
ToolBase.Pickaxe.mineBlocks.add(new BlockHarvestPower(NamehereStone.blockID, 0.0F));
}
public static final BlockPortalNamehere NameherePortal;
public static final Item PortalStarterNamehere;
public static final Block BlockNameherePortalStarter;
public static final Block NamehereStone;
public static final Block NamehereGrass;
public static final Block NamehereDirt;
public static int NamehereStoneTexture;
public static int NamehereGrassTexture;
public static int NamehereDirtTexture;
static
{
NameherePortal = (BlockPortalNamehere)(new BlockPortalNamehere(234, ModLoader.getUniqueSpriteIndex("/terrain.png"))).setHardness(-1F).setStepSound(Block.soundGlassFootstep).setLightValue(0.75F).setBlockName("NameherePortal");
PortalStarterNamehere = new ItemNameherePortalStarter(1987).setIconCoord(5, 0).setItemName("NameherePortalStarter");
BlockNameherePortalStarter = new BlockNameherePortalStarter(235, 1, Material.sponge).setHardness(0.0F).disableStats().disableNeighborNotifyOnMetadataChange().setBlockName("BlockNameherePortalStarter");
NamehereStone = (new BlockNamehereStone(236, 1)).setHardness(1.5F).setResistance(10F).setStepSound(Block.soundStoneFootstep).setBlockName("NamehereStone");
NamehereGrass = (Block)(new BlockNamehereGrass(237, 1)).setHardness(0.6F).setStepSound(Block.soundGrassFootstep).setBlockName("NamehereGrass");
NamehereDirt = (new BlockNamehereDirt(238, 1)).setHardness(0.5F).setStepSound(Block.soundGravelFootstep).setBlockName("NamehereDirt");
}
public String Version()
{
return "1.7.3";
}
}
BlockNamehereDirt
package net.minecraft.src;
public class BlockNamehereDirt extends Block
{
protected BlockNamehereDirt(int i, int j)
{
super(i, j, Material.ground);
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereDirt.blockID;
}
}
BlockNamehereGrass
package net.minecraft.src;
import java.util.Random;
public class BlockNamehereGrass extends Block
{
protected BlockNamehereGrass(int i, int j)
{
super(i, Material.grassMaterial);
blockIndexInTexture = j;
setTickOnLoad(true);
}
public int getBlockTexture(IBlockAccess iblockaccess, int i, int j, int k, int l)
{
if(l == 1)
{
return 0;
}
if(l == 0)
{
return 2;
}
Material material = iblockaccess.getBlockMaterial(i, j + 1, k);
return material != Material.snow && material != Material.builtSnow ? 3 : 68;
}
public int colorMultiplier(IBlockAccess iblockaccess, int i, int j, int k)
{
iblockaccess.getWorldChunkManager().func_4069_a(i, k, 1, 1);
double d = iblockaccess.getWorldChunkManager().temperature[0];
double d1 = iblockaccess.getWorldChunkManager().humidity[0];
return ColorizerGrass.getGrassColor(d, d1);
}
public void updateTick(World world, int i, int j, int k, Random random)
{
if(world.multiplayerWorld)
{
return;
}
if(world.getBlockLightValue(i, j + 1, k) < 4 && Block.lightOpacity[world.getBlockId(i, j + 1, k)] > 2)
{
if(random.nextInt(4) != 0)
{
return;
}
world.setBlockWithNotify(i, j, k, mod_Namehere.NamehereDirt.blockID);
} else
if(world.getBlockLightValue(i, j + 1, k) >= 9)
{
int l = (i + random.nextInt(3)) - 1;
int i1 = (j + random.nextInt(5)) - 3;
int j1 = (k + random.nextInt(3)) - 1;
int k1 = world.getBlockId(l, i1 + 1, j1);
if(world.getBlockId(l, i1, j1) == mod_Namehere.NamehereDirt.blockID && world.getBlockLightValue(l, i1 + 1, j1) >= 4 && Block.lightOpacity[k1] <= 2)
{
world.setBlockWithNotify(l, i1, j1, mod_Namehere.NamehereGrass.blockID);
}
}
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereDirt.idDropped(0, random);
}
}
BlockNamehereStone
package net.minecraft.src;
import java.util.Random;
public class BlockNamehereStone extends Block
{
public BlockNamehereStone(int i, int j)
{
super(i, j, Material.rock);
}
public int idDropped(int i, Random random)
{
return mod_Namehere.NamehereStone.blockID;
}
}
BlockNameherePortalStarter
package net.minecraft.src;
public class BlockNameherePortalStarter extends Block
{
public BlockNameherePortalStarter(int i, int j, Material material)
{
super(i, j, material);
}
public void onBlockAdded(World world, int i, int j, int k){
if(world.getBlockId(i, j - 1, k) == Block.dirt.blockID && mod_Namehere.NameherePortal.tryToCreatePortal(world, i, j, k))
{
return;
}else {
world.setBlockWithNotify(i, j, k, 0);
}
}
}
BlockPortalNamehere
package net.minecraft.src;
import java.util.Random;
public class BlockPortalNamehere extends BlockBreakable
{
public BlockPortalNamehere(int i, int j)
{
super(i, j, Material.portal, false);
}
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int i, int j, int k)
{
return null;
}
public void setBlockBoundsBasedOnState(IBlockAccess iblockaccess, int i, int j, int k)
{
if(iblockaccess.getBlockId(i - 1, j, k) == blockID || iblockaccess.getBlockId(i + 1, j, k) == blockID)
{
float f = 0.5F;
float f2 = 0.125F;
setBlockBounds(0.5F - f, 0.0F, 0.5F - f2, 0.5F + f, 1.0F, 0.5F + f2);
} else
{
float f1 = 0.125F;
float f3 = 0.5F;
setBlockBounds(0.5F - f1, 0.0F, 0.5F - f3, 0.5F + f1, 1.0F, 0.5F + f3);
}
}
public boolean isOpaqueCube()
{
return false;
}
public boolean renderAsNormalBlock()
{
return false;
}
public boolean tryToCreatePortal(World world, int i, int j, int k)
{
int l = 0;
int i1 = 0;
if(world.getBlockId(i - 1, j, k) == Block.dirt.blockID || world.getBlockId(i + 1, j, k) == Block.dirt.blockID)
{
l = 1;
}
if(world.getBlockId(i, j, k - 1) == Block.dirt.blockID || world.getBlockId(i, j, k + 1) == Block.dirt.blockID)
{
i1 = 1;
}
if(l == i1)
{
return false;
}
if(world.getBlockId(i - l, j, k - i1) == 0)
{
i -= l;
k -= i1;
}
for(int l1 = -1; l1 <= 2; l1++)
{
for(int j1 = -1; j1 <= 3; j1++)
{
boolean flag = l1 == -1 || l1 == 2 || j1 == -1 || j1 == 3;
if(l1 != -1 && l1 != 2 || j1 != -1 && j1 != 3)
{
int j2 = world.getBlockId(i + l * l1, j + j1, k + i1 * l1);
if(flag)
{
if(j2 != Block.dirt.blockID)
{
return false;
}
} else
if(j2 != 0 && j2 != mod_Namehere.NameherePortal.blockID)
{
return false;
}
}
}
}
world.editingBlocks = true;
for(int i2 = 0; i2 < 2; i2++)
{
for(int k1 = 0; k1 < 3; k1++)
{
world.setBlockWithNotify(i + l * i2, j + k1, k + i1 * i2, mod_Namehere.NameherePortal.blockID);
}
}
world.editingBlocks = false;
return true;
}
public void onNeighborBlockChange(World world, int i, int j, int k, int l)
{
int i1 = 0;
int j1 = 1;
if(world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID)
{
i1 = 1;
j1 = 0;
}
int k1;
for(k1 = j; world.getBlockId(i, k1 - 1, k) == blockID; k1--) { }
if(world.getBlockId(i, k1 - 1, k) != Block.dirt.blockID)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
int l1;
for(l1 = 1; l1 < 4 && world.getBlockId(i, k1 + l1, k) == blockID; l1++) { }
if(l1 != 3 || world.getBlockId(i, k1 + l1, k) != Block.dirt.blockID)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
boolean flag = world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID;
boolean flag1 = world.getBlockId(i, j, k - 1) == blockID || world.getBlockId(i, j, k + 1) == blockID;
if(flag && flag1)
{
world.setBlockWithNotify(i, j, k, 0);
return;
}
if((world.getBlockId(i + i1, j, k + j1) != Block.dirt.blockID || world.getBlockId(i - i1, j, k - j1) != blockID) && (world.getBlockId(i - i1, j, k - j1) != Block.dirt.blockID || world.getBlockId(i + i1, j, k + j1) != blockID))
{
world.setBlockWithNotify(i, j, k, 0);
return;
} else
{
return;
}
}
public boolean shouldSideBeRendered(IBlockAccess iblockaccess, int i, int j, int k, int l)
{
if(iblockaccess.getBlockId(i, j, k) == blockID)
{
return false;
}
boolean flag = iblockaccess.getBlockId(i - 1, j, k) == blockID && iblockaccess.getBlockId(i - 2, j, k) != blockID;
boolean flag1 = iblockaccess.getBlockId(i + 1, j, k) == blockID && iblockaccess.getBlockId(i + 2, j, k) != blockID;
boolean flag2 = iblockaccess.getBlockId(i, j, k - 1) == blockID && iblockaccess.getBlockId(i, j, k - 2) != blockID;
boolean flag3 = iblockaccess.getBlockId(i, j, k + 1) == blockID && iblockaccess.getBlockId(i, j, k + 2) != blockID;
boolean flag4 = flag || flag1;
boolean flag5 = flag2 || flag3;
if(flag4 && l == 4)
{
return true;
}
if(flag4 && l == 5)
{
return true;
}
if(flag5 && l == 2)
{
return true;
}
return flag5 && l == 3;
}
public int quantityDropped(Random random)
{
return 0;
}
public int getRenderBlockPass()
{
return 1;
}
public void onEntityCollidedWithBlock(World world, int i, int j, int k, Entity entity)
{
if(entity.ridingEntity == null && entity.riddenByEntity == null)
{
if(entity instanceof EntityPlayerSP)
{
EntityPlayerSP entityplayersp = (EntityPlayerSP)entity;
entityplayersp.portal = getDimNumber();
}
entity.setInPortal();
}
}
public void randomDisplayTick(World world, int i, int j, int k, Random random)
{
if(random.nextInt(100) == 0)
{
world.playSoundEffect((double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D, "portal.portal", 1.0F, random.nextFloat() * 0.4F + 0.8F);
}
for(int l = 0; l < 4; l++)
{
double d = (float)i + random.nextFloat();
double d1 = (float)j + random.nextFloat();
double d2 = (float)k + random.nextFloat();
double d3 = 0.0D;
double d4 = 0.0D;
double d5 = 0.0D;
int i1 = random.nextInt(2) * 2 - 1;
d3 = ((double)random.nextFloat() - 0.5D) * 0.5D;
d4 = ((double)random.nextFloat() - 0.5D) * 0.5D;
d5 = ((double)random.nextFloat() - 0.5D) * 0.5D;
if(world.getBlockId(i - 1, j, k) == blockID || world.getBlockId(i + 1, j, k) == blockID)
{
d2 = (double)k + 0.5D + 0.25D * (double)i1;
d5 = random.nextFloat() * 2.0F * (float)i1;
} else
{
d = (double)i + 0.5D + 0.25D * (double)i1;
d3 = random.nextFloat() * 2.0F * (float)i1;
}
world.spawnParticle("portal", d, d1, d2, d3, d4, d5);
}
}
public int getDimNumber()
{
return 1001;
}
}
ChunkProviderNamehere
package net.minecraft.src;
import java.util.Random;
public class ChunkProviderNamehere
implements IChunkProvider
{
public ChunkProviderNamehere(World world, long l)
{
field_28079_r = new double[256];
field_28078_s = new double[256];
field_28077_t = new double[256];
field_28076_u = new MapGenCavesNamehere();
field_28088_i = new int[32][32];
field_28081_p = world;
field_28087_j = new Random(l);
field_28086_k = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28085_l = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28084_m = new NoiseGeneratorOctaves(field_28087_j, 8);
field_28083_n = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28082_o = new NoiseGeneratorOctaves(field_28087_j, 4);
field_28096_a = new NoiseGeneratorOctaves(field_28087_j, 10);
field_28095_b = new NoiseGeneratorOctaves(field_28087_j, 16);
field_28094_c = new NoiseGeneratorOctaves(field_28087_j, 8);
}
public void func_28071_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[], double ad[])
{
byte byte0 = 2;
int k = byte0 + 1;
byte byte1 = 33;
int l = byte0 + 1;
field_28080_q = func_28073_a(field_28080_q, i * byte0, 0, j * byte0, k, byte1, l);
for(int i1 = 0; i1 < byte0; i1++)
{
for(int j1 = 0; j1 < byte0; j1++)
{
for(int k1 = 0; k1 < 32; k1++)
{
double d = 0.25D;
double d1 = field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d2 = field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d3 = field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 0)];
double d4 = field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 0)];
double d5 = (field_28080_q[((i1 + 0) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d1) * d;
double d6 = (field_28080_q[((i1 + 0) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d2) * d;
double d7 = (field_28080_q[((i1 + 1) * l + (j1 + 0)) * byte1 + (k1 + 1)] - d3) * d;
double d8 = (field_28080_q[((i1 + 1) * l + (j1 + 1)) * byte1 + (k1 + 1)] - d4) * d;
for(int l1 = 0; l1 < 4; l1++)
{
double d9 = 0.125D;
double d10 = d1;
double d11 = d2;
double d12 = (d3 - d1) * d9;
double d13 = (d4 - d2) * d9;
for(int i2 = 0; i2 < 8; i2++)
{
int j2 = i2 + i1 * 8 << 11 | 0 + j1 * 8 << 7 | k1 * 4 + l1;
char c = '\200';
double d14 = 0.125D;
double d15 = d10;
double d16 = (d11 - d10) * d14;
for(int k2 = 0; k2 < 8; k2++)
{
int l2 = 0;
if(d15 > 0.0D)
{
l2 = mod_Namehere.NamehereStone.blockID;
}
abyte0[j2] = (byte)l2;
j2 += c;
d15 += d16;
}
d10 += d12;
d11 += d13;
}
d1 += d5;
d2 += d6;
d3 += d7;
d4 += d8;
}
}
}
}
}
public void func_28072_a(int i, int j, byte abyte0[], BiomeGenBase abiomegenbase[])
{
double d = 0.03125D;
field_28079_r = field_28083_n.generateNoiseOctaves(field_28079_r, i * 16, j * 16, 0.0D, 16, 16, 1, d, d, 1.0D);
field_28078_s = field_28083_n.generateNoiseOctaves(field_28078_s, i * 16, 109.0134D, j * 16, 16, 1, 16, d, 1.0D, d);
field_28077_t = field_28082_o.generateNoiseOctaves(field_28077_t, i * 16, j * 16, 0.0D, 16, 16, 1, d * 2D, d * 2D, d * 2D);
for(int k = 0; k < 16; k++)
{
for(int l = 0; l < 16; l++)
{
BiomeGenBase biomegenbase = abiomegenbase[k + l * 16];
int i1 = (int)(field_28077_t[k + l * 16] / 3D + 3D + field_28087_j.nextDouble() * 0.25D);
int j1 = -1;
byte byte0 = (byte)mod_Namehere.NamehereGrass.blockID;
byte byte1 = (byte)mod_Namehere.NamehereDirt.blockID;
for(int k1 = 127; k1 >= 0; k1--)
{
int l1 = (l * 16 + k) * 128 + k1;
byte byte2 = abyte0[l1];
if(byte2 == 0)
{
j1 = -1;
continue;
}
if(byte2 != (byte)mod_Namehere.NamehereStone.blockID)
{
continue;
}
if(j1 == -1)
{
if(i1 <= 0)
{
byte0 = 0;
byte1 = (byte)mod_Namehere.NamehereStone.blockID;
}
j1 = i1;
if(k1 >= 0)
{
abyte0[l1] = byte0;
} else
{
abyte0[l1] = byte1;
}
continue;
}
if(j1 <= 0)
{
continue;
}
j1--;
abyte0[l1] = byte1;
if(j1 == 0 && byte1 == Block.sand.blockID)
{
j1 = field_28087_j.nextInt(4);
byte1 = (byte)Block.sandStone.blockID;
}
}
}
}
}
public Chunk prepareChunk(int i, int j)
{
return provideChunk(i, j);
}
public Chunk provideChunk(int i, int j)
{
field_28087_j.setSeed((long)i * 0x4f9939f508L + (long)j * 0x1ef1565bd5L);
byte abyte0[] = new byte[32768];
Chunk chunk = new Chunk(field_28081_p, abyte0, i, j);
field_28075_v = field_28081_p.getWorldChunkManager().loadBlockGeneratorData(field_28075_v, i * 16, j * 16, 16, 16);
double ad[] = field_28081_p.getWorldChunkManager().temperature;
func_28071_a(i, j, abyte0, field_28075_v, ad);
func_28072_a(i, j, abyte0, field_28075_v);
field_28076_u.func_867_a(this, field_28081_p, i, j, abyte0);
chunk.func_1024_c();
return chunk;
}
private double[] func_28073_a(double ad[], int i, int j, int k, int l, int i1, int j1)
{
if(ad == null)
{
ad = new double[l * i1 * j1];
}
double d = 684.41200000000003D;
double d1 = 684.41200000000003D;
double ad1[] = field_28081_p.getWorldChunkManager().temperature;
double ad2[] = field_28081_p.getWorldChunkManager().humidity;
field_28090_g = field_28096_a.func_4109_a(field_28090_g, i, k, l, j1, 1.121D, 1.121D, 0.5D);
field_28089_h = field_28095_b.func_4109_a(field_28089_h, i, k, l, j1, 200D, 200D, 0.5D);
d *= 2D;
field_28093_d = field_28084_m.generateNoiseOctaves(field_28093_d, i, j, k, l, i1, j1, d / 80D, d1 / 160D, d / 80D);
field_28092_e = field_28086_k.generateNoiseOctaves(field_28092_e, i, j, k, l, i1, j1, d, d1, d);
field_28091_f = field_28085_l.generateNoiseOctaves(field_28091_f, i, j, k, l, i1, j1, d, d1, d);
int k1 = 0;
int l1 = 0;
int i2 = 16 / l;
for(int j2 = 0; j2 < l; j2++)
{
int k2 = j2 * i2 + i2 / 2;
for(int l2 = 0; l2 < j1; l2++)
{
int i3 = l2 * i2 + i2 / 2;
double d2 = ad1[k2 * 16 + i3];
double d3 = ad2[k2 * 16 + i3] * d2;
double d4 = 1.0D - d3;
d4 *= d4;
d4 *= d4;
d4 = 1.0D - d4;
double d5 = (field_28090_g[l1] + 256D) / 512D;
d5 *= d4;
if(d5 > 1.0D)
{
d5 = 1.0D;
}
double d6 = field_28089_h[l1] / 8000D;
if(d6 < 0.0D)
{
d6 = -d6 * 0.29999999999999999D;
}
d6 = d6 * 3D - 2D;
if(d6 > 1.0D)
{
d6 = 1.0D;
}
d6 /= 8D;
d6 = 0.0D;
if(d5 < 0.0D)
{
d5 = 0.0D;
}
d5 += 0.5D;
d6 = (d6 * (double)i1) / 16D;
l1++;
double d7 = (double)i1 / 2D;
for(int j3 = 0; j3 < i1; j3++)
{
double d8 = 0.0D;
double d9 = (((double)j3 - d7) * 8D) / d5;
if(d9 < 0.0D)
{
d9 *= -1D;
}
double d10 = field_28092_e[k1] / 512D;
double d11 = field_28091_f[k1] / 512D;
double d12 = (field_28093_d[k1] / 10D + 1.0D) / 2D;
if(d12 < 0.0D)
{
d8 = d10;
} else
if(d12 > 1.0D)
{
d8 = d11;
} else
{
d8 = d10 + (d11 - d10) * d12;
}
d8 -= 8D;
int k3 = 32;
if(j3 > i1 - k3)
{
double d13 = (float)(j3 - (i1 - k3)) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d13) + -30D * d13;
}
k3 = 8;
if(j3 < k3)
{
double d14 = (float)(k3 - j3) / ((float)k3 - 1.0F);
d8 = d8 * (1.0D - d14) + -30D * d14;
}
ad[k1] = d8;
k1++;
}
}
}
return ad;
}
public boolean chunkExists(int i, int j)
{
return true;
}
public void populate(IChunkProvider ichunkprovider, int i, int j)
{
BlockSand.fallInstantly = true;
int k = i * 16;
int l = j * 16;
BiomeGenBase biomegenbase = field_28081_p.getWorldChunkManager().getBiomeGenAt(k + 16, l + 16);
field_28087_j.setSeed(field_28081_p.getRandomSeed());
long l1 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
long l2 = (field_28087_j.nextLong() / 2L) * 2L + 1L;
field_28087_j.setSeed((long)i * l1 + (long)j * l2 ^ field_28081_p.getRandomSeed());
double d = 0.25D;
if(field_28087_j.nextInt(4) == 0)
{
int i1 = k + field_28087_j.nextInt(16) + 8;
int l4 = field_28087_j.nextInt(128);
int i8 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLakes(Block.waterStill.blockID)).generate(field_28081_p, field_28087_j, i1, l4, i8);
}
if(field_28087_j.nextInt(8) == 0)
{
int j1 = k + field_28087_j.nextInt(16) + 8;
int i5 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int j8 = l + field_28087_j.nextInt(16) + 8;
if(i5 < 64 || field_28087_j.nextInt(10) == 0)
{
(new WorldGenLakes(Block.lavaStill.blockID)).generate(field_28081_p, field_28087_j, j1, i5, j8);
}
}
for(int k1 = 0; k1 < 8; k1++)
{
int j5 = k + field_28087_j.nextInt(16) + 8;
int k8 = field_28087_j.nextInt(128);
int i13 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenDungeons()).generate(field_28081_p, field_28087_j, j5, k8, i13);
}
for(int i2 = 0; i2 < 10; i2++)
{
int k5 = k + field_28087_j.nextInt(16);
int l8 = field_28087_j.nextInt(128);
int j13 = l + field_28087_j.nextInt(16);
(new WorldGenClay(32)).generate(field_28081_p, field_28087_j, k5, l8, j13);
}
for(int j2 = 0; j2 < 20; j2++)
{
int l5 = k + field_28087_j.nextInt(16);
int i9 = field_28087_j.nextInt(128);
int k13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.dirt.blockID, 32)).generate(field_28081_p, field_28087_j, l5, i9, k13);
}
for(int k2 = 0; k2 < 10; k2++)
{
int i6 = k + field_28087_j.nextInt(16);
int j9 = field_28087_j.nextInt(128);
int l13 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.gravel.blockID, 32)).generate(field_28081_p, field_28087_j, i6, j9, l13);
}
for(int i3 = 0; i3 < 20; i3++)
{
int j6 = k + field_28087_j.nextInt(16);
int k9 = field_28087_j.nextInt(128);
int i14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreCoal.blockID, 16)).generate(field_28081_p, field_28087_j, j6, k9, i14);
}
for(int j3 = 0; j3 < 20; j3++)
{
int k6 = k + field_28087_j.nextInt(16);
int l9 = field_28087_j.nextInt(64);
int j14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreIron.blockID, 8)).generate(field_28081_p, field_28087_j, k6, l9, j14);
}
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + field_28087_j.nextInt(16);
int i10 = field_28087_j.nextInt(32);
int k14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(field_28081_p, field_28087_j, l6, i10, k14);
}
for(int l3 = 0; l3 < 8; l3++)
{
int i7 = k + field_28087_j.nextInt(16);
int j10 = field_28087_j.nextInt(16);
int l14 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreRedstone.blockID, 7)).generate(field_28081_p, field_28087_j, i7, j10, l14);
}
for(int i4 = 0; i4 < 1; i4++)
{
int j7 = k + field_28087_j.nextInt(16);
int k10 = field_28087_j.nextInt(16);
int i15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreDiamond.blockID, 7)).generate(field_28081_p, field_28087_j, j7, k10, i15);
}
for(int j4 = 0; j4 < 1; j4++)
{
int k7 = k + field_28087_j.nextInt(16);
int l10 = field_28087_j.nextInt(16) + field_28087_j.nextInt(16);
int j15 = l + field_28087_j.nextInt(16);
(new WorldGenMinable(Block.oreLapis.blockID, 6)).generate(field_28081_p, field_28087_j, k7, l10, j15);
}
d = 0.5D;
int k4 = (int)((field_28094_c.func_806_a((double)k * d, (double)l * d) / 8D + field_28087_j.nextDouble() * 4D + 4D) / 3D);
int l7 = 0;
if(field_28087_j.nextInt(10) == 0)
{
l7++;
}
if(biomegenbase == BiomeGenBase.forest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.rainforest)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.seasonalForest)
{
//l7 += k4 + 2;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.taiga)
{
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.desert)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.tundra)
{
//l7 -= 20;
l7 += k4 + 5;
}
if(biomegenbase == BiomeGenBase.plains)
{
//l7 -= 20;
l7 += k4 + 5;
}
for(int i11 = 0; i11 < l7; i11++)
{
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenerator worldgenerator = biomegenbase.getRandomWorldGenForTrees(field_28087_j);
worldgenerator.func_517_a(1.0D, 1.0D, 1.0D);
worldgenerator.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int i11 = 0; i11 < l7; i11++){
int k15 = k + field_28087_j.nextInt(16) + 8;
int j18 = l + field_28087_j.nextInt(16) + 8;
WorldGenTreesNamehere treeGen = new WorldGenTreesNamehere();
treeGen.generate(field_28081_p, field_28087_j, k15, field_28081_p.getHeightValue(k15, j18), j18);
}
for(int j11 = 0; j11 < 2; j11++)
{
int l15 = k + field_28087_j.nextInt(16) + 8;
int k18 = field_28087_j.nextInt(128);
int i21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantYellow.blockID)).generate(field_28081_p, field_28087_j, l15, k18, i21);
}
if(field_28087_j.nextInt(2) == 0)
{
int k11 = k + field_28087_j.nextInt(16) + 8;
int i16 = field_28087_j.nextInt(128);
int l18 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.plantRed.blockID)).generate(field_28081_p, field_28087_j, k11, i16, l18);
}
if(field_28087_j.nextInt(4) == 0)
{
int l11 = k + field_28087_j.nextInt(16) + 8;
int j16 = field_28087_j.nextInt(128);
int i19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomBrown.blockID)).generate(field_28081_p, field_28087_j, l11, j16, i19);
}
if(field_28087_j.nextInt(8) == 0)
{
int i12 = k + field_28087_j.nextInt(16) + 8;
int k16 = field_28087_j.nextInt(128);
int j19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenFlowers(Block.mushroomRed.blockID)).generate(field_28081_p, field_28087_j, i12, k16, j19);
}
for(int j12 = 0; j12 < 10; j12++)
{
int l16 = k + field_28087_j.nextInt(16) + 8;
int k19 = field_28087_j.nextInt(128);
int j21 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenReed()).generate(field_28081_p, field_28087_j, l16, k19, j21);
}
if(field_28087_j.nextInt(32) == 0)
{
int k12 = k + field_28087_j.nextInt(16) + 8;
int i17 = field_28087_j.nextInt(128);
int l19 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenPumpkin()).generate(field_28081_p, field_28087_j, k12, i17, l19);
}
int l12 = 0;
if(biomegenbase == BiomeGenBase.desert)
{
l12 += 10;
}
for(int j17 = 0; j17 < l12; j17++)
{
int i20 = k + field_28087_j.nextInt(16) + 8;
int k21 = field_28087_j.nextInt(128);
int k22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenCactus()).generate(field_28081_p, field_28087_j, i20, k21, k22);
}
for(int k17 = 0; k17 < 50; k17++)
{
int j20 = k + field_28087_j.nextInt(16) + 8;
int l21 = field_28087_j.nextInt(field_28087_j.nextInt(120) + 8);
int l22 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.waterMoving.blockID)).generate(field_28081_p, field_28087_j, j20, l21, l22);
}
for(int l17 = 0; l17 < 20; l17++)
{
int k20 = k + field_28087_j.nextInt(16) + 8;
int i22 = field_28087_j.nextInt(field_28087_j.nextInt(field_28087_j.nextInt(112) + 8) + 8);
int i23 = l + field_28087_j.nextInt(16) + 8;
(new WorldGenLiquids(Block.lavaMoving.blockID)).generate(field_28081_p, field_28087_j, k20, i22, i23);
}*/
field_28074_w = field_28081_p.getWorldChunkManager().getTemperatures(field_28074_w, k + 8, l + 8, 16, 16);
for(int i18 = k + 8; i18 < k + 8 + 16; i18++)
{
for(int l20 = l + 8; l20 < l + 8 + 16; l20++)
{
int j22 = i18 - (k + 8);
int j23 = l20 - (l + 8);
int k23 = field_28081_p.findTopSolidBlock(i18, l20);
double d1 = field_28074_w[j22 * 16 + j23] - ((double)(k23 - 64) / 64D) * 0.29999999999999999D;
if(d1 < 0.5D && k23 > 0 && k23 < 128 && field_28081_p.isAirBlock(i18, k23, l20) && field_28081_p.getBlockMaterial(i18, k23 - 1, l20).getIsSolid() && field_28081_p.getBlockMaterial(i18, k23 - 1, l20) != Material.ice)
{
field_28081_p.setBlockWithNotify(i18, k23, l20, Block.snow.blockID);
}
}
}
BlockSand.fallInstantly = false;
}
public boolean saveChunks(boolean flag, IProgressUpdate iprogressupdate)
{
return true;
}
public boolean unload100OldestChunks()
{
return false;
}
public boolean canSave()
{
return true;
}
public String makeString()
{
return "RandomLevelSource";
}
private Random field_28087_j;
private NoiseGeneratorOctaves field_28086_k;
private NoiseGeneratorOctaves field_28085_l;
private NoiseGeneratorOctaves field_28084_m;
private NoiseGeneratorOctaves field_28083_n;
private NoiseGeneratorOctaves field_28082_o;
public NoiseGeneratorOctaves field_28096_a;
public NoiseGeneratorOctaves field_28095_b;
public NoiseGeneratorOctaves field_28094_c;
private World field_28081_p;
private double field_28080_q[];
private double field_28079_r[];
private double field_28078_s[];
private double field_28077_t[];
private MapGenBase field_28076_u;
private BiomeGenBase field_28075_v[];
double field_28093_d[];
double field_28092_e[];
double field_28091_f[];
double field_28090_g[];
double field_28089_h[];
int field_28088_i[][];
private double field_28074_w[];
}
DimensionNamehere
package net.minecraft.src;
public class DimensionNamehere extends DimensionBase
{
public DimensionNamehere()
{
super(1001,WorldProviderNamehere.class,TeleporterNamehere.class);
}
}
ItemNameherePortalStarter
package net.minecraft.src;
public class ItemNameherePortalStarter extends Item
{
public ItemNameherePortalStarter(int i)
{
super(i);
}
public boolean onItemUse(ItemStack itemstack, EntityPlayer entityplayer, World world, int i, int j, int k, int l)
{
if(l == 0)
{
j--;
}
if(l == 1)
{
j++;
}
if(l == 2)
{
k--;
}
if(l == 3)
{
k++;
}
if(l == 4)
{
i--;
}
if(l == 5)
{
i++;
}
int i1 = world.getBlockId(i, j, k);
if(i1 == 0)
{
world.playSoundEffect((double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D, "fire.ignite", 1.0F, itemRand.nextFloat() * 0.4F + 0.8F);
world.setBlockWithNotify(i, j, k, mod_Namehere.BlockNameherePortalStarter.blockID);
}
itemstack.damageItem(1, entityplayer);
return true;
}
}
Stop all caping like a 7 year old who is desperate for attention. Also, do you know what the errors mean? If you do not, why are you even attempting to do something this advanced?
iam not 7 years old, and not desperate i just dont want that chunk errors.. from hes code..
and yes i know how to read errors but i dont get that peice of code that came in the error in the chunk
Hello, I get these 4 errors when decompiling after placing the shockah api files in the .jar and the fernflower in the jars folder.
src\minecraft\net\minecraft\src\SaveHandler.java:42: not a statement
exception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:48: not a statement
ioexception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:69: not a statement
exception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:75: not a statement
ioexception;
^
And here is the SaveHandler file (I have not done any editing to it)
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
import java.io.*;
import java.util.List;
import java.util.logging.Logger;
// Referenced classes of package net.minecraft.src:
// ISaveHandler, MinecraftException, DimensionBase, ChunkLoader,
// CompressedStreamTools, NBTTagCompound, WorldInfo, WorldProvider,
// IChunkLoader
public class SaveHandler
implements ISaveHandler
{
public SaveHandler(File file, String s, boolean flag)
{
saveDirectory = new File(file, s);
saveDirectory.mkdirs();
playersDirectory = new File(saveDirectory, "players");
field_28114_d = new File(saveDirectory, "data");
field_28114_d.mkdirs();
if(flag)
{
playersDirectory.mkdirs();
}
func_22154_d();
}
private void func_22154_d()
{
DataOutputStream dataoutputstream;
File file = new File(saveDirectory, "session.lock");
dataoutputstream = new DataOutputStream(new FileOutputStream(file));
dataoutputstream.writeLong(now);
break MISSING_BLOCK_LABEL_48;
Exception exception;
exception;
dataoutputstream.close();
throw exception;
dataoutputstream.close();
break MISSING_BLOCK_LABEL_70;
IOException ioexception;
ioexception;
ioexception.printStackTrace();
throw new RuntimeException("Failed to check session lock, aborting");
}
protected File getSaveDirectory()
{
return saveDirectory;
}
public void func_22150_b()
{
DataInputStream datainputstream;
File file = new File(saveDirectory, "session.lock");
datainputstream = new DataInputStream(new FileInputStream(file));
if(datainputstream.readLong() != now)
{
throw new MinecraftException("The save is being accessed from another location, aborting");
}
break MISSING_BLOCK_LABEL_59;
Exception exception;
exception;
datainputstream.close();
throw exception;
datainputstream.close();
break MISSING_BLOCK_LABEL_77;
IOException ioexception;
ioexception;
throw new MinecraftException("Failed to check session lock, aborting");
}
public IChunkLoader getChunkLoader(WorldProvider worldprovider)
{
DimensionBase dimensionbase = DimensionBase.getDimByProvider(worldprovider.getClass());
if(dimensionbase.number != 0)
{
File file = new File(saveDirectory, (new StringBuilder("DIM")).append(dimensionbase.number).toString());
file.mkdirs();
return new ChunkLoader(file, true);
} else
{
return new ChunkLoader(saveDirectory, true);
}
}
public WorldInfo loadWorldInfo()
{
File file = new File(saveDirectory, "level.dat");
if(file.exists())
{
try
{
NBTTagCompound nbttagcompound2 = CompressedStreamTools.loadGzippedCompoundFromOutputStream(new FileInputStream(file));
NBTTagCompound nbttagcompound = nbttagcompound2.getCompoundTag("Data");
return new WorldInfo(nbttagcompound);
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
file = new File(saveDirectory, "level.dat_old");
if(file.exists())
{
try
{
NBTTagCompound nbttagcompound3 = CompressedStreamTools.loadGzippedCompoundFromOutputStream(new FileInputStream(file));
NBTTagCompound nbttagcompound1 = nbttagcompound3.getCompoundTag("Data");
return new WorldInfo(nbttagcompound1);
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
}
return null;
}
public void saveWorldInfoAndPlayer(WorldInfo worldinfo, List list)
{
NBTTagCompound nbttagcompound = worldinfo.getNBTTagCompoundWithPlayer(list);
NBTTagCompound nbttagcompound1 = new NBTTagCompound();
nbttagcompound1.setCompoundTag("Data", nbttagcompound);
try
{
File file = new File(saveDirectory, "level.dat_new");
File file1 = new File(saveDirectory, "level.dat_old");
File file2 = new File(saveDirectory, "level.dat");
CompressedStreamTools.writeGzippedCompoundToOutputStream(nbttagcompound1, new FileOutputStream(file));
if(file1.exists())
{
file1.delete();
}
file2.renameTo(file1);
if(file2.exists())
{
file2.delete();
}
file.renameTo(file2);
if(file.exists())
{
file.delete();
}
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
public void saveWorldInfo(WorldInfo worldinfo)
{
NBTTagCompound nbttagcompound = worldinfo.getNBTTagCompound();
NBTTagCompound nbttagcompound1 = new NBTTagCompound();
nbttagcompound1.setCompoundTag("Data", nbttagcompound);
try
{
File file = new File(saveDirectory, "level.dat_new");
File file1 = new File(saveDirectory, "level.dat_old");
File file2 = new File(saveDirectory, "level.dat");
CompressedStreamTools.writeGzippedCompoundToOutputStream(nbttagcompound1, new FileOutputStream(file));
if(file1.exists())
{
file1.delete();
}
file2.renameTo(file1);
if(file2.exists())
{
file2.delete();
}
file.renameTo(file2);
if(file.exists())
{
file.delete();
}
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
public File func_28113_a(String s)
{
return new File(field_28114_d, (new StringBuilder(String.valueOf(s))).append(".dat").toString());
}
private static final Logger logger = Logger.getLogger("Minecraft");
private final File saveDirectory;
private final File playersDirectory;
private final File field_28114_d;
private final long now = System.currentTimeMillis();
}
And after looking around in eclipse for other errors and there is also errors in loc.class (once again I have not edited it..)
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
import java.util.ArrayList;
// Referenced classes of package net.minecraft.src:
// World, ChunkCoordinates, IBlockAccess, TileEntity
public class Loc
{
public Loc()
{
this(0, 0, 0); //error here
}
public Loc(int i, int j)
{
this(i, 0, j); //error here
}
public Loc(int i, int j, int k)
{
this(i, j, k); //error here
}
public Loc(double d, double d1)
{
this(d, 0.0D, d1);
}
public Loc(World world)
{
this(world.getSpawnPoint().x, world.getSpawnPoint().y, world.getSpawnPoint().z); //error here
}
public Loc(double d, double d1, double d2)
{
x = d;
y = d1;
z = d2;
}
public int x()
{
return (int)x;
}
public int y()
{
return (int)y;
}
public int z()
{
return (int)z;
}
public Loc add(int i, int j, int k)
{
return new Loc(x + (double)i, y + (double)j, z + (double)k);
}
public Loc add(double d, double d1, double d2)
{
return new Loc(x + d, y + d1, z + d2);
}
public Loc add(Loc loc)
{
return new Loc(x + loc.x, y + loc.y, z + loc.z);
}
public Loc subtract(int i, int j, int k)
{
return new Loc(x - (double)i, y - (double)j, z - (double)k);
}
public Loc subtract(double d, double d1, double d2)
{
return new Loc(x - d, y - d1, z - d2);
}
public Loc subtract(Loc loc)
{
return new Loc(x - loc.x, y - loc.y, z - loc.z);
}
public Loc multiply(double d, double d1, double d2)
{
return new Loc(x * d, y * d1, z * d2);
}
public Loc getSide(int i)
{
if(i == 0)
{
return new Loc(x, y - 1.0D, z);
}
if(i == 1)
{
return new Loc(x, y + 1.0D, z);
}
if(i == 2)
{
return new Loc(x, y, z - 1.0D);
}
if(i == 3)
{
return new Loc(x, y, z + 1.0D);
}
if(i == 4)
{
return new Loc(x - 1.0D, y, z);
}
if(i == 5)
{
return new Loc(x + 1.0D, y, z);
} else
{
return this;
}
}
public boolean equals(Object obj)
{
if(obj instanceof Loc)
{
Loc loc = (Loc)obj;
return x == loc.x && y == loc.y && z == loc.z;
} else
{
return false;
}
}
public String toString()
{
return (new StringBuilder("(")).append(x).append(",").append(y).append(",").append(z).append(")").toString();
}
public int distSimple(Loc loc)
{
return (int)(Math.abs(x - loc.x) + Math.abs(y - loc.y) + Math.abs(z - loc.z));
}
public double distAdv(Loc loc)
{
return Math.sqrt(Math.pow(x - loc.x, 2D) + Math.pow(y - loc.y, 2D) + Math.pow(z - loc.z, 2D));
}
public static Loc[] vecAdjacent()
{
Loc aloc[] = new Loc[6];
aloc[0] = new Loc(0, 0, 1);
aloc[1] = new Loc(0, 0, -1);
aloc[2] = new Loc(0, 1, 0);
aloc[3] = new Loc(0, -1, 0);
aloc[4] = new Loc(1, 0, 0);
aloc[5] = new Loc(-1, 0, 0);
return aloc;
}
public Loc[] adjacent()
{
Loc aloc[] = vecAdjacent();
for(int i = 0; i < aloc.length; i++)
{
aloc[i] = add(aloc[i]);
}
return aloc;
}
public static Loc[] vecAdjacent2D()
{
Loc aloc[] = new Loc[4];
aloc[0] = new Loc(0, 1);
aloc[1] = new Loc(0, -1);
aloc[2] = new Loc(1, 0);
aloc[3] = new Loc(-1, 0);
return aloc;
}
public Loc[] adjacent2D()
{
Loc aloc[] = vecAdjacent();
for(int i = 0; i < aloc.length; i++)
{
aloc[i] = add(aloc[i]);
}
return aloc;
}
public static ArrayList vecInRadius(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
Loc loc = new Loc();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
for(int l = -i; l <= i; l++)
{
Loc loc1 = new Loc(j, l, k);
double d = flag ? loc.distAdv(loc1) : loc.distSimple(loc1);
if(d <= (double)i)
{
arraylist.add(loc1);
}
}
}
}
return arraylist;
}
public ArrayList inRadius(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
for(int l = -i; l <= i; l++)
{
Loc loc = (new Loc(j, l, k)).add(this);
double d = flag ? distAdv(loc) : distSimple(loc);
if(d <= (double)i)
{
arraylist.add(loc);
}
}
}
}
return arraylist;
}
public static ArrayList vecInRadius2D(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
Loc loc = new Loc();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
Loc loc1 = new Loc(j, k);
double d = flag ? loc.distAdv(loc1) : loc.distSimple(loc1);
if(d <= (double)i)
{
arraylist.add(loc1);
}
}
}
return arraylist;
}
public ArrayList inRadius2D(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
Loc loc = (new Loc(j, k)).add(this);
double d = flag ? distAdv(loc) : distSimple(loc);
if(d <= (double)i)
{
arraylist.add(loc);
}
}
}
return arraylist;
}
public int getBlock(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockId(x(), y(), z());
}
public Loc setBlockNotify(World world, int i)
{
world.setBlockWithNotify(x(), y(), z(), i);
return this;
}
public Loc setBlock(World world, int i)
{
world.setBlock(x(), y(), z(), i);
return this;
}
public int getMeta(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockMetadata(x(), y(), z());
}
public Loc setMeta(World world, int i)
{
world.setBlockMetadata(x(), y(), z(), i);
return this;
}
public Loc setMetaNotify(World world, int i)
{
world.setBlockMetadataWithNotify(x(), y(), z(), i);
return this;
}
public Loc setBlockAndMeta(World world, int i, int j)
{
world.setBlockAndMetadata(x(), y(), z(), i, j);
return this;
}
public Loc setBlockAndMetaNotify(World world, int i, int j)
{
world.setBlockAndMetadataWithNotify(x(), y(), z(), i, j);
return this;
}
public TileEntity getTileEntity(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockTileEntity(x(), y(), z());
}
public Loc setTileEntity(World world, TileEntity tileentity)
{
world.setBlockTileEntity(x(), y(), z(), tileentity);
return this;
}
public Loc removeTileEntity(World world)
{
world.removeBlockTileEntity(x(), y(), z());
return this;
}
public int getLight(World world)
{
return world.getFullBlockLightValue(x(), y(), z());
}
public Loc notify(World world)
{
world.notifyBlockChange(x(), y(), z(), getBlock(world));
return this;
}
public Loc setSpawnPoint(World world)
{
world.setSpawnPoint(new ChunkCoordinates(x(), y(), z()));
return this;
}
public final double x;
public final double y;
public final double z;
}
I was wondering why I get these errors after not editing any of the files yet. Unless I was supposed to place the fernflower in the .jar instead of the jars folder like previously specified by the tutorial. Any help regarding this matter will be greatly appreciated.
Sry strenght if you dont like why i ask stuff about the dimension but when i light the portal with a flint and steel it dont appers a portal :sad.gif:? answer please and sry again for posting about dimension
Hello, I get these 4 errors when decompiling after placing the shockah api files in the .jar and the fernflower in the jars folder.
src\minecraft\net\minecraft\src\SaveHandler.java:42: not a statement
exception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:48: not a statement
ioexception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:69: not a statement
exception;
^
src\minecraft\net\minecraft\src\SaveHandler.java:75: not a statement
ioexception;
^
And here is the SaveHandler file (I have not done any editing to it)
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
import java.io.*;
import java.util.List;
import java.util.logging.Logger;
// Referenced classes of package net.minecraft.src:
// ISaveHandler, MinecraftException, DimensionBase, ChunkLoader,
// CompressedStreamTools, NBTTagCompound, WorldInfo, WorldProvider,
// IChunkLoader
public class SaveHandler
implements ISaveHandler
{
public SaveHandler(File file, String s, boolean flag)
{
saveDirectory = new File(file, s);
saveDirectory.mkdirs();
playersDirectory = new File(saveDirectory, "players");
field_28114_d = new File(saveDirectory, "data");
field_28114_d.mkdirs();
if(flag)
{
playersDirectory.mkdirs();
}
func_22154_d();
}
private void func_22154_d()
{
DataOutputStream dataoutputstream;
File file = new File(saveDirectory, "session.lock");
dataoutputstream = new DataOutputStream(new FileOutputStream(file));
dataoutputstream.writeLong(now);
break MISSING_BLOCK_LABEL_48;
Exception exception;
exception;
dataoutputstream.close();
throw exception;
dataoutputstream.close();
break MISSING_BLOCK_LABEL_70;
IOException ioexception;
ioexception;
ioexception.printStackTrace();
throw new RuntimeException("Failed to check session lock, aborting");
}
protected File getSaveDirectory()
{
return saveDirectory;
}
public void func_22150_b()
{
DataInputStream datainputstream;
File file = new File(saveDirectory, "session.lock");
datainputstream = new DataInputStream(new FileInputStream(file));
if(datainputstream.readLong() != now)
{
throw new MinecraftException("The save is being accessed from another location, aborting");
}
break MISSING_BLOCK_LABEL_59;
Exception exception;
exception;
datainputstream.close();
throw exception;
datainputstream.close();
break MISSING_BLOCK_LABEL_77;
IOException ioexception;
ioexception;
throw new MinecraftException("Failed to check session lock, aborting");
}
public IChunkLoader getChunkLoader(WorldProvider worldprovider)
{
DimensionBase dimensionbase = DimensionBase.getDimByProvider(worldprovider.getClass());
if(dimensionbase.number != 0)
{
File file = new File(saveDirectory, (new StringBuilder("DIM")).append(dimensionbase.number).toString());
file.mkdirs();
return new ChunkLoader(file, true);
} else
{
return new ChunkLoader(saveDirectory, true);
}
}
public WorldInfo loadWorldInfo()
{
File file = new File(saveDirectory, "level.dat");
if(file.exists())
{
try
{
NBTTagCompound nbttagcompound2 = CompressedStreamTools.loadGzippedCompoundFromOutputStream(new FileInputStream(file));
NBTTagCompound nbttagcompound = nbttagcompound2.getCompoundTag("Data");
return new WorldInfo(nbttagcompound);
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
file = new File(saveDirectory, "level.dat_old");
if(file.exists())
{
try
{
NBTTagCompound nbttagcompound3 = CompressedStreamTools.loadGzippedCompoundFromOutputStream(new FileInputStream(file));
NBTTagCompound nbttagcompound1 = nbttagcompound3.getCompoundTag("Data");
return new WorldInfo(nbttagcompound1);
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
}
return null;
}
public void saveWorldInfoAndPlayer(WorldInfo worldinfo, List list)
{
NBTTagCompound nbttagcompound = worldinfo.getNBTTagCompoundWithPlayer(list);
NBTTagCompound nbttagcompound1 = new NBTTagCompound();
nbttagcompound1.setCompoundTag("Data", nbttagcompound);
try
{
File file = new File(saveDirectory, "level.dat_new");
File file1 = new File(saveDirectory, "level.dat_old");
File file2 = new File(saveDirectory, "level.dat");
CompressedStreamTools.writeGzippedCompoundToOutputStream(nbttagcompound1, new FileOutputStream(file));
if(file1.exists())
{
file1.delete();
}
file2.renameTo(file1);
if(file2.exists())
{
file2.delete();
}
file.renameTo(file2);
if(file.exists())
{
file.delete();
}
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
public void saveWorldInfo(WorldInfo worldinfo)
{
NBTTagCompound nbttagcompound = worldinfo.getNBTTagCompound();
NBTTagCompound nbttagcompound1 = new NBTTagCompound();
nbttagcompound1.setCompoundTag("Data", nbttagcompound);
try
{
File file = new File(saveDirectory, "level.dat_new");
File file1 = new File(saveDirectory, "level.dat_old");
File file2 = new File(saveDirectory, "level.dat");
CompressedStreamTools.writeGzippedCompoundToOutputStream(nbttagcompound1, new FileOutputStream(file));
if(file1.exists())
{
file1.delete();
}
file2.renameTo(file1);
if(file2.exists())
{
file2.delete();
}
file.renameTo(file2);
if(file.exists())
{
file.delete();
}
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
public File func_28113_a(String s)
{
return new File(field_28114_d, (new StringBuilder(String.valueOf(s))).append(".dat").toString());
}
private static final Logger logger = Logger.getLogger("Minecraft");
private final File saveDirectory;
private final File playersDirectory;
private final File field_28114_d;
private final long now = System.currentTimeMillis();
}
And after looking around in eclipse for other errors and there is also errors in loc.class (once again I have not edited it..)
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
import java.util.ArrayList;
// Referenced classes of package net.minecraft.src:
// World, ChunkCoordinates, IBlockAccess, TileEntity
public class Loc
{
public Loc()
{
this(0, 0, 0); //error here
}
public Loc(int i, int j)
{
this(i, 0, j); //error here
}
public Loc(int i, int j, int k)
{
this(i, j, k); //error here
}
public Loc(double d, double d1)
{
this(d, 0.0D, d1);
}
public Loc(World world)
{
this(world.getSpawnPoint().x, world.getSpawnPoint().y, world.getSpawnPoint().z); //error here
}
public Loc(double d, double d1, double d2)
{
x = d;
y = d1;
z = d2;
}
public int x()
{
return (int)x;
}
public int y()
{
return (int)y;
}
public int z()
{
return (int)z;
}
public Loc add(int i, int j, int k)
{
return new Loc(x + (double)i, y + (double)j, z + (double)k);
}
public Loc add(double d, double d1, double d2)
{
return new Loc(x + d, y + d1, z + d2);
}
public Loc add(Loc loc)
{
return new Loc(x + loc.x, y + loc.y, z + loc.z);
}
public Loc subtract(int i, int j, int k)
{
return new Loc(x - (double)i, y - (double)j, z - (double)k);
}
public Loc subtract(double d, double d1, double d2)
{
return new Loc(x - d, y - d1, z - d2);
}
public Loc subtract(Loc loc)
{
return new Loc(x - loc.x, y - loc.y, z - loc.z);
}
public Loc multiply(double d, double d1, double d2)
{
return new Loc(x * d, y * d1, z * d2);
}
public Loc getSide(int i)
{
if(i == 0)
{
return new Loc(x, y - 1.0D, z);
}
if(i == 1)
{
return new Loc(x, y + 1.0D, z);
}
if(i == 2)
{
return new Loc(x, y, z - 1.0D);
}
if(i == 3)
{
return new Loc(x, y, z + 1.0D);
}
if(i == 4)
{
return new Loc(x - 1.0D, y, z);
}
if(i == 5)
{
return new Loc(x + 1.0D, y, z);
} else
{
return this;
}
}
public boolean equals(Object obj)
{
if(obj instanceof Loc)
{
Loc loc = (Loc)obj;
return x == loc.x && y == loc.y && z == loc.z;
} else
{
return false;
}
}
public String toString()
{
return (new StringBuilder("(")).append(x).append(",").append(y).append(",").append(z).append(")").toString();
}
public int distSimple(Loc loc)
{
return (int)(Math.abs(x - loc.x) + Math.abs(y - loc.y) + Math.abs(z - loc.z));
}
public double distAdv(Loc loc)
{
return Math.sqrt(Math.pow(x - loc.x, 2D) + Math.pow(y - loc.y, 2D) + Math.pow(z - loc.z, 2D));
}
public static Loc[] vecAdjacent()
{
Loc aloc[] = new Loc[6];
aloc[0] = new Loc(0, 0, 1);
aloc[1] = new Loc(0, 0, -1);
aloc[2] = new Loc(0, 1, 0);
aloc[3] = new Loc(0, -1, 0);
aloc[4] = new Loc(1, 0, 0);
aloc[5] = new Loc(-1, 0, 0);
return aloc;
}
public Loc[] adjacent()
{
Loc aloc[] = vecAdjacent();
for(int i = 0; i < aloc.length; i++)
{
aloc[i] = add(aloc[i]);
}
return aloc;
}
public static Loc[] vecAdjacent2D()
{
Loc aloc[] = new Loc[4];
aloc[0] = new Loc(0, 1);
aloc[1] = new Loc(0, -1);
aloc[2] = new Loc(1, 0);
aloc[3] = new Loc(-1, 0);
return aloc;
}
public Loc[] adjacent2D()
{
Loc aloc[] = vecAdjacent();
for(int i = 0; i < aloc.length; i++)
{
aloc[i] = add(aloc[i]);
}
return aloc;
}
public static ArrayList vecInRadius(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
Loc loc = new Loc();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
for(int l = -i; l <= i; l++)
{
Loc loc1 = new Loc(j, l, k);
double d = flag ? loc.distAdv(loc1) : loc.distSimple(loc1);
if(d <= (double)i)
{
arraylist.add(loc1);
}
}
}
}
return arraylist;
}
public ArrayList inRadius(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
for(int l = -i; l <= i; l++)
{
Loc loc = (new Loc(j, l, k)).add(this);
double d = flag ? distAdv(loc) : distSimple(loc);
if(d <= (double)i)
{
arraylist.add(loc);
}
}
}
}
return arraylist;
}
public static ArrayList vecInRadius2D(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
Loc loc = new Loc();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
Loc loc1 = new Loc(j, k);
double d = flag ? loc.distAdv(loc1) : loc.distSimple(loc1);
if(d <= (double)i)
{
arraylist.add(loc1);
}
}
}
return arraylist;
}
public ArrayList inRadius2D(int i, boolean flag)
{
ArrayList arraylist = new ArrayList();
for(int j = -i; j <= i; j++)
{
for(int k = -i; k <= i; k++)
{
Loc loc = (new Loc(j, k)).add(this);
double d = flag ? distAdv(loc) : distSimple(loc);
if(d <= (double)i)
{
arraylist.add(loc);
}
}
}
return arraylist;
}
public int getBlock(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockId(x(), y(), z());
}
public Loc setBlockNotify(World world, int i)
{
world.setBlockWithNotify(x(), y(), z(), i);
return this;
}
public Loc setBlock(World world, int i)
{
world.setBlock(x(), y(), z(), i);
return this;
}
public int getMeta(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockMetadata(x(), y(), z());
}
public Loc setMeta(World world, int i)
{
world.setBlockMetadata(x(), y(), z(), i);
return this;
}
public Loc setMetaNotify(World world, int i)
{
world.setBlockMetadataWithNotify(x(), y(), z(), i);
return this;
}
public Loc setBlockAndMeta(World world, int i, int j)
{
world.setBlockAndMetadata(x(), y(), z(), i, j);
return this;
}
public Loc setBlockAndMetaNotify(World world, int i, int j)
{
world.setBlockAndMetadataWithNotify(x(), y(), z(), i, j);
return this;
}
public TileEntity getTileEntity(IBlockAccess iblockaccess)
{
return iblockaccess.getBlockTileEntity(x(), y(), z());
}
public Loc setTileEntity(World world, TileEntity tileentity)
{
world.setBlockTileEntity(x(), y(), z(), tileentity);
return this;
}
public Loc removeTileEntity(World world)
{
world.removeBlockTileEntity(x(), y(), z());
return this;
}
public int getLight(World world)
{
return world.getFullBlockLightValue(x(), y(), z());
}
public Loc notify(World world)
{
world.notifyBlockChange(x(), y(), z(), getBlock(world));
return this;
}
public Loc setSpawnPoint(World world)
{
world.setSpawnPoint(new ChunkCoordinates(x(), y(), z()));
return this;
}
public final double x;
public final double y;
public final double z;
}
I was wondering why I get these errors after not editing any of the files yet. Unless I was supposed to place the fernflower in the .jar instead of the jars folder like previously specified by the tutorial. Any help regarding this matter will be greatly appreciated.
fernflower going to be in runtime/bin and shockapi's files that are in bin map from hes rar file should be in minecraft.jar
No problems, I'm adding throwable explosive tutorial now! :biggrin.gif:
Also, cowmonkey's grenade tutorial doesn't work. The texture with his code doesn't load because I tested it ages ago. I decided to do my own coding and it works now! The reason for texture not loading proplerly is because minecraft's base code for this sort of thing and bow has changed.
man i got no dimensionbase?? help please??
give me the leaves code and i help u
Download ShockahPI To Your Minecraft.jar file.
oh.. ty xD -.-
HELP PLEASE!! WHY I GET THESE ERRORS!!
Stop all caping like a 7 year old who is desperate for attention. Also, do you know what the errors mean? If you do not, why are you even attempting to do something this advanced?
Check out my Minecraft Modding Tutorials!
I agree. I don't want to help on this tutorial because I've already stated that this is for advanced modders.
@addemod, This is all the help your getting: "Have a look into ChunkProviderHell" or something like that to replace those "func_blabla".
Thanks For Uploading This I Just FInished Making It I Might GIve People Info/Help WIth This If I Have TIme
EDIT:
Witch One Do I Download? ShockahPI r5 or ShockahPI r6
iam not 7 years old, and not desperate i just dont want that chunk errors.. from hes code..
and yes i know how to read errors but i dont get that peice of code that came in the error in the chunk
And here is the SaveHandler file (I have not done any editing to it)
And after looking around in eclipse for other errors and there is also errors in loc.class (once again I have not edited it..)
I was wondering why I get these errors after not editing any of the files yet. Unless I was supposed to place the fernflower in the .jar instead of the jars folder like previously specified by the tutorial. Any help regarding this matter will be greatly appreciated.
fernflower going to be in runtime/bin and shockapi's files that are in bin map from hes rar file should be in minecraft.jar
@YourFriendlyGamer, Not too sure... If you followed it correctly then it should work.
Hmm maybe I'm doing it wrong its 2 am probably not thinking straight, Ill try again tomorrow hopefully it will work.
Edit: I see what I did wrong I place fernflower in the wrong folder, terribly sorry for wasting your time.
Also, cowmonkey's grenade tutorial doesn't work. The texture with his code doesn't load because I tested it ages ago. I decided to do my own coding and it works now! The reason for texture not loading proplerly is because minecraft's base code for this sort of thing and bow has changed.