[Résolu] Génération du minerai

Besoin d'aide ? c'est par ici ;)
Règles du forum
[En Attente] - Qui est défini par défaut à l'ouverture de la demande d'aide
[En Cours] - Qui est à mettre lorsque vous venez d'avoir une réponse à votre demande d'aide
[Résolu] - Qui est à mettre lorsque votre problème est résolu
Merci de respecter ce modèle pour toutes demandes d'assistances !
Merci de mettre votre code dans les balises code prévus à cet effet, icon </>
Version de Minecraft:
Version de Forge: (Il s'agit du numéro de version indiqué sur le nom de votre dossier forge téléchargé)

Description du problème:
(Un maximum d'informations sera utile, quel code fait crash ?, quand cela ce produit ?, ne pas hésiter à mettre des captures d'écran et fichiers de log en pièces jointes)
Répondre
Samlegamer
Messages : 55
Inscription : 19 mars 2020 23:15

Génération du minerai

Message par Samlegamer »

J'ai commencé a faire mon minerais mais je sais pas comment faire la génération de mon minerai est ce pareil que en 1.7.10
Samlegamer
Messages : 55
Inscription : 19 mars 2020 23:15

Re: Génération du minerai

Message par Samlegamer »

j'ai fais tout mais je ne comprend pas pourquoi cela ne marche pas ?

Code : Tout sélectionner

package fr.samlegamer.heartofender.world;

import java.util.Random;

import fr.samlegamer.heartofender.init.BlocksMod;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
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.minecraftforge.fml.common.IWorldGenerator;

public class WorldGenTuto implements IWorldGenerator
{
	@Override
	public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider)
	{
		switch(world.provider.getDimension())
		{
			case -1:
				GenerateNether (world, chunkX * 16, chunkZ * 16, random);
			
			case 0:
				GenerateOverWorld (world, chunkX * 16, chunkZ * 16, random);
			
			case 1:
				GenerateEnd (world, chunkX * 16, chunkZ * 16, random);
		}
	}
	
	private void addOre(Block block, Block blockSpawn, Random random, World worlds, int posX, int posZ, int minY, int maxY, int minV, int maxV, int spawnChance)
	{
		for(int i = 0; i < spawnChance; i++);
		{
			int chunkSize = 16;
			int Xpos = posX + random.nextInt(chunkSize);
			int Ypos = minY + random.nextInt(maxY - minY);
			int Zpos = posZ + random.nextInt(chunkSize);
			
		}
	}

	private void GenerateEnd(World world, int i, int j, Random random)
	{
		
	}

	private void GenerateOverWorld(World world, int i, int j, Random random)
	{
		addOre(BlocksMod.azurium_ore, Blocks.STONE, random, world, i, j, 4, 12, 2, 10, 11);
	}

	private void GenerateNether(World world, int i, int j, Random random)
	{
		
	}
}
Samlegamer
Messages : 55
Inscription : 19 mars 2020 23:15

Re: Génération du minerai

Message par Samlegamer »

c'est résolu c'est un combiné de la génération 1.8 + et créer un minerai en 1.12.2
CODE BLOCKSMOD sur la 2éme ligne init:

Code : Tout sélectionner

		azurium_ore = (BlockOreMod) new BlockOreMod("azurium_ore", 2, 1, 8).setCreativeTab(CreativeTabs.SEARCH).setHardness(5.0F);
CODE GEN TUTO:

Code : Tout sélectionner

package fr.samlegamer.heartofender.world;

import java.util.Random;

import org.apache.logging.log4j.core.tools.Generate;

import fr.samlegamer.heartofender.blocks.BlockOreMod;
import fr.samlegamer.heartofender.init.BlocksMod;
import net.minecraft.block.Block;
import net.minecraft.block.BlockOre;
import net.minecraft.block.state.IBlockState;
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.minecraftforge.fml.common.IWorldGenerator;

public class WorldGenTuto implements IWorldGenerator
{

	@Override
	public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider)
	{
		switch(world.provider.getDimension())
		{
		
			case -1:
				GenerateNether(world, chunkX * 16, chunkZ * 16, random);
				break;
				
			case 0:
				GenerateOverWorld(world, chunkX * 16, chunkZ * 16, random);
				break;
			
			case 1:	
				GenerateEnd(world, chunkX * 16, chunkZ * 16, random);
				break;
		} 
	}
	
	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)
	{
		for(int i = 0; i < spawnChance; i++)
		{
			int defaultChunkSize = 16;
			int Xpos = posX + random.nextInt(defaultChunkSize);
			int Ypos = minY + random.nextInt(maxY - minY);
			int Zpos = posZ + random.nextInt(defaultChunkSize);
			
			IBlockState state = block.getDefaultState();
			BlockPos blockPos = new BlockPos(Xpos, Ypos, Zpos);
			
			new WorldGenMinable(state, maxV).generate(world, random, blockPos);
		}
	}
	
	private void GenerateNether(World world, int i, int j, Random random)
	{
		
	}
	
	private void GenerateOverWorld(World world, int i, int j, Random random)
	{
		addOre(BlocksMod.azurium_ore, Blocks.STONE, random, world, i, j, 5, 12, 2, 4, 10);
	}

	private void GenerateEnd(World world, int i, int j, Random random)
	{
		
	}
	
	
}
CODE REGISTER TUTO:

Code : Tout sélectionner

package fr.samlegamer.heartofender.world;

import net.minecraftforge.event.RegistryEvent.Register;
import net.minecraftforge.fml.common.IWorldGenerator;
import net.minecraftforge.fml.common.registry.GameRegistry;

public class WorldRegisterTuto
{
	public static void MainRegistry()
	{
		registerWorldGen(new WorldGenTuto(), -1);
		registerWorldGen(new WorldGenTuto(), 0);
		registerWorldGen(new WorldGenTuto(), 1);
	}

	private static void registerWorldGen(IWorldGenerator iGenerator, int weightProbability)
	{
		GameRegistry.registerWorldGenerator(iGenerator, weightProbability);
	}
}
Avatar de l’utilisateur
Checconio
Site Admin
Messages : 660
Inscription : 20 juil. 2019 18:53
Localisation : Istres
Contact :

Re: Génération du minerai

Message par Checconio »

le code pour la génération en 1.12 ce trouve sur mon github si besoin ;)
Tu veux des réductions et du cashback ? passe par iGraal ;)
3€ Offert en passant par mon lien :)

https://fr.igraal.com/?parrain=AG_577542b686c1d
Image
Répondre