Advertisement
chanez

WorldGen

Dec 23rd, 2015
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.31 KB | None | 0 0
  1. package com.smy.mod.World;
  2.  
  3. import java.util.Random;
  4.  
  5. import Blocks.BlocksMod;
  6.  
  7. import com.smy.mod.init.BlockMod;
  8.  
  9. import net.minecraft.block.Block;
  10. import net.minecraft.block.state.IBlockState;
  11. import net.minecraft.init.Blocks;
  12. import net.minecraft.util.BlockPos;
  13. import net.minecraft.world.World;
  14. import net.minecraft.world.chunk.IChunkProvider;
  15. import net.minecraft.world.gen.feature.WorldGenMinable;
  16. import net.minecraftforge.fml.common.IWorldGenerator;
  17.  
  18. public class WorldGenSmy implements IWorldGenerator
  19. {
  20.  
  21. @Override
  22. public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
  23. {
  24. switch(world.provider.getDimensionId())
  25. {
  26. case -1:
  27. GenerateNether(world, chunkX = 16, chunkZ = 16, random);
  28. break;
  29.  
  30. case 0:
  31. GenerateOverWorld(world, chunkX = 16, chunkZ = 16, random);
  32. break;
  33.  
  34. case 1:
  35. GenerateEnd(world, chunkX = 16, chunkZ = 16, random);
  36. break;
  37.  
  38. }
  39. }
  40.  
  41. private void addOre(Block block, Block blockSpawn, Random random, World world, int posX, int posZ, int minY, int maxY, int minV, int maxV, int spawnChance)
  42. {
  43. for(int i = 0; i < spawnChance; i++)
  44. {
  45. int defaultChunkSize = 16;
  46. int Xpos = posX + random.nextInt(defaultChunkSize);
  47. int Ypos = minY + random.nextInt(maxY - minY);
  48. int Zpos = posZ + random.nextInt(defaultChunkSize);
  49.  
  50. IBlockState state = block.getDefaultState();
  51. BlockPos blockPos = new BlockPos(Xpos, Ypos, Zpos);
  52.  
  53. new WorldGenMinable(state, maxV).generate(world, random, blockPos);
  54. }
  55. }
  56.  
  57. private void GenerateNether(World world, int i, int j, Random random)
  58. {
  59.  
  60. }
  61.  
  62. private void GenerateOverWorld(World world, int i, int j, Random random)
  63. {
  64. addOre(Blocks.glass, Blocks.stone , random, world, i, j, 20, 100, 4, 8, 500);
  65. }
  66.  
  67. private void GenerateEnd(World world, int i, int j, Random random)
  68. {
  69. addOre(Blocks.glass, Blocks.netherrack , random, world, i, j, 20, 100, 4, 8, 60);
  70. }
  71.  
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement