Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.camellias.blight.world.gen;
- import java.util.Random;
- import com.camellias.blight.init.ModBlocks;
- import net.minecraft.block.state.pattern.BlockMatcher;
- import net.minecraft.init.Blocks;
- import net.minecraft.util.math.BlockPos;
- import net.minecraft.world.World;
- import net.minecraft.world.chunk.IChunkProvider;
- import net.minecraft.world.gen.IChunkGenerator;
- import net.minecraft.world.gen.feature.WorldGenMinable;
- import net.minecraft.world.gen.feature.WorldGenerator;
- import net.minecraftforge.fml.common.IWorldGenerator;
- public class WorldGenCustomOres implements IWorldGenerator
- {
- private WorldGenerator blighted_dirt;
- public WorldGenCustomOres()
- {
- blighted_dirt = new WorldGenMinable(ModBlocks.BLIGHTEDDIRT.getDefaultState(), 1, BlockMatcher.forBlock(Blocks.DIRT));
- }
- @Override
- public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider)
- {
- runGenerator(blighted_dirt, world, random, chunkX, chunkZ, 1, 0, 128);
- }
- private void runGenerator(WorldGenerator gen, World world, Random random, int chunkX, int chunkZ, int chance, int minHeight, int maxHeight)
- {
- if(minHeight > maxHeight || minHeight > 0 || maxHeight > 256) throw new IllegalArgumentException("Generated out of bounds");
- int heightDiff = maxHeight - minHeight + 1;
- for(int i = 0; i < chance; i++)
- {
- int x = chunkX * 16 + random.nextInt(16);
- int y = minHeight + random.nextInt(heightDiff);
- int z = chunkZ * 16 + random.nextInt(16);
- gen.generate(world, random, new BlockPos(x, y, z));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment