Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

So Yesterday I had my ore generating just fine. Today I tried adding another block to the list of blocks to generate. They stopped generating. I tried taking it back out and they still didn't work. I don't know if I accidentally messed up something else, but here's my code: 

package mineqwerty.diamines.worldgen;

import java.util.Random;

import mineqwerty.diamines.init.ModBlocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraft.world.chunk.IChunkGenerator;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.fml.common.IWorldGenerator;

public class OreGen implements IWorldGenerator{
	
	//World generation
	private WorldGenerator dark_iron_overworld;
	private WorldGenerator light_diamond_overworld;
	private WorldGenerator diamine_overworld;
	
	
	public OreGen() {
		dark_iron_overworld = new WorldGenMinable(ModBlocks.darkironore.getDefaultState(), 3);
		light_diamond_overworld = new WorldGenMinable(ModBlocks.lightdiamondore.getDefaultState(), 3);
		diamine_overworld = new WorldGenMinable(ModBlocks.diamine.getDefaultState(), 8);
		
	}
	private void runGenerator(WorldGenerator generator, World world, Random rand, int chunk_X, int chunk_Z, int chancesToSpawn, int minHeight, int maxHeight) {
		if (minHeight < 0 || maxHeight > 256 || minHeight > maxHeight)
			throw new IllegalArgumentException("Illegal Height Arguments for WorldGenerator");

		int heightDiff = maxHeight - minHeight + 1;
		for (int i = 0; i < chancesToSpawn; i ++) {
			int x = chunk_X * 16 + rand.nextInt(16);
		        int y = minHeight + rand.nextInt(heightDiff);
		        int z = chunk_Z * 16 + rand.nextInt(16);
		        generator.generate(world, rand, new BlockPos(x, y, z));
		}
	} 
	@Override
	public void generate(Random random, int chunkX, int chunkZ, World world,
			IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) {
		switch(world.provider.getDimension()){
		case 0: 
			this.runGenerator(dark_iron_overworld, world, random, chunkX, chunkZ, 3, 0, 16);
			this.runGenerator(light_diamond_overworld, world, random, chunkX, chunkZ, 3, 0, 16);
			this.runGenerator(diamine_overworld, world, random, chunkX, chunkZ, 3, 0, 16);
			
		}
		
	}
	
}

 

The code you've provided looks mostly fine apart from the switch statement but that's my preference. Could you please provide more of your code, preferrably as a git repository?

  • Author

The only other place I think its referenced is the commonproxy

 

(idk if i did this right so the code is also below) https://github.com/Mineqwerty/code/blob/master/CommonProxy.java

 

package mineqwerty.diamines.proxy;

import mineqwerty.diamines.reference;
import mineqwerty.diamines.tileentity.TileEntityEssenceExtractinator;
import mineqwerty.diamines.worldgen.OreGen;
import net.minecraftforge.fml.common.registry.GameRegistry;

public class CommonProxy {
	
	public void init() {
		GameRegistry.registerWorldGenerator(new OreGen(), 0);
	}
	
	public void registerTileEntities() {
		GameRegistry.registerTileEntity(TileEntityEssenceExtractinator.class, reference.MODID + ":EssenceExtractinator");
	}
	public void registerRenders() {
		
	}
}

 

Edited by Blaze0025_

10 hours ago, Blaze0025_ said:

The only other place I think its referenced is the commonproxy

 

Well first and foremost a CommonProxy makes no sense. Proxies exist to separate sided-only code. If your code is common it goes anywhere but your proxy.

Your issue might be caused by the fact that you have a Common Proxy but since you didn't provide any more code I can't tell for sure.

  • Author

well heh that would explain it. moved it to my main class and it works fine, thanks for the help (sorry i'm so dense lol)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.