Advertisement
Guest User

Main & Generation Code

a guest
Dec 10th, 2014
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.30 KB | None | 0 0
  1. Main Class:
  2.  
  3. package com.graysull.Main;
  4.  
  5. import net.minecraftforge.fml.common.IWorldGenerator;
  6. import net.minecraftforge.fml.common.Mod;
  7. import net.minecraftforge.fml.common.Mod.EventHandler;
  8. import net.minecraftforge.fml.common.SidedProxy;
  9. import net.minecraftforge.fml.common.event.FMLInitializationEvent;
  10. import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
  11. import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
  12. import net.minecraftforge.fml.common.registry.GameRegistry;
  13.  
  14. import com.graysull.blocks.CompressedStone;
  15. import com.graysull.item.ObsidianStick;
  16. import com.graysull.lib.RefStrings;
  17. import com.graysull.world.MWorld;
  18. @Mod(modid = RefStrings.MODID , name = RefStrings.NAME , version = RefStrings.VERSION)
  19. public class MainRegistry {
  20.  
  21. @SidedProxy (clientSide = RefStrings.CLIENTSIDE , serverSide = RefStrings.SERVERSIDE )
  22. public static ServerProxy proxy;
  23.  
  24.  
  25. @EventHandler
  26. public static void PreLoad(FMLPreInitializationEvent PreEvent) {
  27. ObsidianStick.mainRegistry();
  28. CompressedStone.mainRegistry();
  29. MWorld.mainRegistry();
  30. proxy.registerRenderInfo();
  31.  
  32. }
  33.  
  34. @EventHandler
  35. public static void Load(FMLInitializationEvent event) {
  36.  
  37.  
  38.  
  39. }
  40.  
  41. @EventHandler
  42. public static void PostLoad(FMLPostInitializationEvent PostEvent) {
  43.  
  44.  
  45.  
  46. }
  47.  
  48.  
  49.  
  50. }
  51.  
  52. Generation Class:
  53.  
  54. package com.graysull.world;
  55.  
  56. import java.util.Random;
  57.  
  58. import net.minecraft.util.BlockPos;
  59. import net.minecraft.world.World;
  60. import net.minecraft.world.chunk.IChunkProvider;
  61. import net.minecraft.world.gen.feature.WorldGenMinable;
  62. import net.minecraftforge.fml.common.IWorldGenerator;
  63.  
  64. public class GrayOre implements IWorldGenerator {
  65.  
  66. @Override
  67. public void generate(Random random, int chunkX, int chunkZ, World world,
  68. IChunkProvider chunkGenerator, IChunkProvider chunkprovider) {
  69. switch(world.provider.getDimensionId()) {
  70. case -1:
  71. break;
  72. case 0:
  73. generateSurface(world, random, chunkX * 16, chunkZ * 16);
  74. break;
  75. case 1:
  76. break;
  77.  
  78.  
  79. }
  80.  
  81. }
  82.  
  83.  
  84. private void generateSurface(World world, Random rand, int chunkX, int chunkZ) {
  85. for (int k = 0; k < 16; k++)
  86. {
  87. int firstBlockXCoord = chunkX + rand.nextInt(16);
  88. int firstBlockZCoord = chunkZ + rand.nextInt(16);
  89. //Will be found between y = 0 and y = 20
  90. int ComStoneY = rand.nextInt(100);
  91. BlockPos ComStone = new BlockPos(firstBlockXCoord, ComStoneY, firstBlockZCoord);
  92. if (ConfigHandler.enableGeneration)
  93. //The 10 as the second parameter sets the maximum vein size
  94. (new WorldGenMinable(BlockRegistry.ComStone.getDefaultState(), 20)).generate(world, rand, ComStone);
  95.  
  96.  
  97.  
  98. }
  99. }
  100. }
  101.  
  102.  
  103. Other Generation Class:
  104.  
  105. package com.graysull.world;
  106.  
  107. import net.minecraftforge.fml.common.IWorldGenerator;
  108. import net.minecraftforge.fml.common.registry.GameRegistry;
  109.  
  110. public class MWorld {
  111.  
  112. public static void mainRegistry() {
  113. initiliazeWorldGen();
  114. }
  115.  
  116. public static void initiliazeWorldGen() {
  117. registerWorldGen(new GrayOre(), 1);
  118. }
  119.  
  120. public static void registerWorldGen(IWorldGenerator worldGenClass, int weightedProbability) {
  121. GameRegistry.registerWorldGenerator(worldGenClass, weightedProbability);
  122.  
  123.  
  124. }
  125.  
  126.  
  127.  
  128. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement