Génération Buisson
-
Bonjours,
J’essaye de faire générer mon buisson dans la map sur de la durt j’ai donc regardé le code du melon sauf que j’arrive pas a le trouvé.
for (int l = 0; l < 64; ++l) { if (Main.BlockBuisson.canPlaceBlockAt(world, x, y, z) && world.getBlock(x, y - 1, z) == Blocks.grass) { this.addOreSpawn(Main.BlockBuisson, 0, Blocks.air, world, random, x, z, 16, 16, 1, 100, 0, 256); } }
package fr.darkvince.ultrav2; import java.util.Random; import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.world.World; import net.minecraft.world.chunk.IChunkProvider; import net.minecraft.world.gen.feature.WorldGenMinable; import cpw.mods.fml.common.IWorldGenerator; public class WorldGeneration implements IWorldGenerator { public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider) { switch(world.provider.dimensionId) { case -1: generateNether(world, random, chunkX * 16, chunkZ * 16); break; case 0: generateSurface(world, random, chunkX * 16, chunkZ * 16, chunkZ); break; case 1: generateEnd(world, random, chunkX * 16, chunkZ * 16); break; } } private void generateEnd(World world, Random random, int x, int z) { } public void generateSurface(World world, Random random, int x, int z, int y) { this.addOreSpawn(Main.BlockMineraiLinarite, 0, Blocks.stone, world, random, x, z, 16, 16, 10, 6, 0, 32); this.addOreSpawn(Main.BlockMineraiPyrite, 0, Blocks.stone, world, random, x, z, 16, 16, 8, 4, 0, 16); this.addOreSpawn(Main.BlockMineraiIridium, 0, Blocks.stone, world, random, x, z, 16, 16, 4, 3, 0, 16); this.addOreSpawn(Main.BlockMineraiPlutonium, 0, Blocks.stone, world, random, x, z, 16, 16, 16, 8, 0, 32); this.addOreSpawn(Main.SandMove, 0, Blocks.sand, world, random, x, z, 16, 16, 30, 8, 0, 256); this.addOreSpawn(Main.MineraiMeteorite, 0, Blocks.obsidian, world, random, x, z, 16, 16, 20, 6, 0, 256); for (int l = 0; l < 64; ++l) { if (Main.BlockBuisson.canPlaceBlockAt(world, x, y, z) && world.getBlock(x, y - 1, z) == Blocks.grass) { this.addOreSpawn(Main.BlockBuisson, 0, Blocks.air, world, random, x, z, 16, 16, 1, 100, 0, 256); } } } private void generateNether(World world, Random random, int x, int z) { } public void addOreSpawn(Block block, int metadata, Block target, World world, Random random, int blockXPos, int blockZPos, int maxX, int maxZ, int maxVeinSize, int chancesToSpawn, int minY, int maxY) { assert maxY > minY : "La position Y maximum doit �tre sup�rieure � la position Y minimum."; assert maxX > 0 && maxX <= 16 : "X doit se trouver entre 0 et 16."; assert minY > 0 : "La position Y minimum doit �tre sup�rieure � 0."; assert maxY < 256 && maxY > 0 : "La position Y maximum doit se trouver entre 0 et 256."; assert maxZ > 0 && maxZ <= 16 : "Z doit se trouver entre 0 et 16."; for(int i = 0; i < chancesToSpawn; i++) { int posY = random.nextInt(128); if((posY <= maxY) && (posY >= minY)) { (new WorldGenMinable(block, metadata, maxVeinSize, target)).generate(world, random, blockXPos + random.nextInt(16), posY, blockZPos + random.nextInt(16)); } } } }
-
Petit up car j’ai toujours pas trouvé la solution
-
Bonsoir,
Si ton post n’a pas eu de réponse pendant aussi longtemps, je pense qu’il y a des raisons.Je dirais, en regardant ton message :
- Aucun effort, pas de recherches.
- Quel est ton problème ? Qu’as-tu fait pour le résoudre, que n’as-tu pas réussi ? Qu’est-ce qui ne fonctionne pas ?
- Peut-être y a-t-il des logs utiles ?