Bonjour
Aujourd'hui, nous allons aborder la function void GenerateSurface().
Cette fonction va permettre de générer ses propres blocs, grâce aux deux axes : X et Z, Y (largeur, longueur, hauteur
En premier temps voici notre fichier mod_MineraiGen.java :
Analyse du code : GenerateSurface
La boucle "for(int i = 0;i < 50; i++) {" sert à générer une veine à chaque passage de la boucle, le "50" sert à 'patcher' la rareté du minerai.
L'entier int randPosY sert à dire dans quelle largeur le bloc peut gen, ici c'est à la couche 50, sa commence à se générer !
Les deux entiers randPosX et randPosZ servent à délimiter le gen du bloc ex :
"A chaque passage de la boucle, le minerai à 50% de chance de gen plus, il gen à partir de la couche 50 et la gen se termine à la largeur et la longeur 16"
la fnc WorldGenMinable permet de générer notre minerai après la définition des variables entière, le "4" est la limite de minerai par Chunk !
Petit PLUS
Vous pouvez initialiser la boucle for comme ceci : "for(int i = 0;i < rand.nextInt(100); i++)".
Comme sa, la gen est complétement RANDOM !!!!
Voila ! Merci d'avoir lu, commenter, questioner(WTF)
Don't forget that : MultiMod
Aujourd'hui, nous allons aborder la function void GenerateSurface().
Cette fonction va permettre de générer ses propres blocs, grâce aux deux axes : X et Z, Y (largeur, longueur, hauteur
En premier temps voici notre fichier mod_MineraiGen.java :
package net.minecraft.scr;
public class mod_MineraiGen extends BaseMod {
public static Block ore = new BlockOre(150, 102).setBlockName("oregen").setHardness(5F);
public void mod_MineraiGen() {
}
public void load() {
ModLoader.RegisterBlock(ore);
ModLoader.AddName(ore, "?? Ore");
// Ajouter ce que vous voulez pour le craft etc...
}
public void GenerateSurface(World world, Random rand, int chunkX, int chunkZ) {
for(int i = 0; i < 50; i++) {
int randPosX = chunkX + rand.nextInt(16);
int randPosY = rand.nextInt(50);
int randPosZ = chunkZ + rand.nextInt(16);
(new WorldGenMinable(ore.blockID, 4)).generate(world, rand, randPosX, randPosY, randPosZ);
}
}
Analyse du code : GenerateSurface
La boucle "for(int i = 0;i < 50; i++) {" sert à générer une veine à chaque passage de la boucle, le "50" sert à 'patcher' la rareté du minerai.
L'entier int randPosY sert à dire dans quelle largeur le bloc peut gen, ici c'est à la couche 50, sa commence à se générer !
Les deux entiers randPosX et randPosZ servent à délimiter le gen du bloc ex :
"A chaque passage de la boucle, le minerai à 50% de chance de gen plus, il gen à partir de la couche 50 et la gen se termine à la largeur et la longeur 16"
la fnc WorldGenMinable permet de générer notre minerai après la définition des variables entière, le "4" est la limite de minerai par Chunk !
Petit PLUS
Vous pouvez initialiser la boucle for comme ceci : "for(int i = 0;i < rand.nextInt(100); i++)".
Comme sa, la gen est complétement RANDOM !!!!
Voila ! Merci d'avoir lu, commenter, questioner(WTF)
Don't forget that : MultiMod