Ajouter des blocs dans les grottes

The_Lord_King

Aventurier
6 Juin 2011
11
0
0
Bonjour, je voudrais savoir comment ajouter un bloc que j'ai crée dans une grotte, c'est à dire qu'on le trouve naturellement.
Merci de votre aide.
 

Martyrize

Papappah Rah, Papappah Rah Rah
7 Juin 2011
43
0
1
dabitude il faut fair un clic droit quand ta le bloc en main . c qoi le nom de ton bloc si sa marche pas .?
 

The_Lord_King

Aventurier
6 Juin 2011
11
0
0
Merci mais c'était pas ça ma question ^^. Je souhaite qu'en faite, le bloc soit généré lors de la création de la map. Qu'on le trouve comme du diamant par exemple.
 

Martyrize

Papappah Rah, Papappah Rah Rah
7 Juin 2011
43
0
1
allors tu veux te faire une map avec un bloc specifier a un endroit?
Ou un block d'un mod??
 

The_Lord_King

Aventurier
6 Juin 2011
11
0
0
Non, je m'explique. J'ai fais un bloc, une sorte de minerai comme de l'or ou du fer. Et j'aimerais que ce minerai que j'ai fais soit trouvable dans des grottes, pour être miné puis utilisé plus tard.
 

Martyrize

Papappah Rah, Papappah Rah Rah
7 Juin 2011
43
0
1
a sa c du codage :/ je mi connais pas mais si je trouve quelcun ste fais signe :)
 

max790

Aventurier
30 Décembre 2010
12
0
0
Pour répondre à ta question. J'ai essayé moi même de générer des blocs sur la map. En cherchant en peu je suis tombé sur ce fichier "ChunkProviderGenerate" en déchiffrant le code je me suis aperçu qu'il générait les minerais sur la map et plus précisément entre la ligne 358 et 453.
Je cite et j'explique une des génération de minerai :
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + rand.nextInt(16);
int i10 = rand.nextInt(32);
int l12 = l + rand.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(worldObj, rand, l6, i10, l12);
}
int l6 = k + rand.nextInt(16);
int i10 = rand.nextInt(32);
int l12 = l + rand.nextInt(16);[/quote]

D'abord il faut faire une boucle pour toute génération :
for(int k3 = 0; k3 < 2; k3++)
Ensuite les variable dont je ne connais pas vraiment l'utilisation doivent permettre de définir la probabilité, le nombre et la profondeur du minerai.
int l6 = k + rand.nextInt(16);
int i10 = rand.nextInt(32);
int l12 = l + rand.nextInt(16);
Puis les informations du minerai :
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(worldObj, rand, l6, i10, l12);
WorldGenMinable qui est en rapport avec la génération des minerais et entre parenthèse le nom de ton bloc et encore la génération.

Donc au final ton morceau de code que tu vas rajouter entre ces lignes doit à peu près resembler à sa :
for(int k5 = 0; k5 < 2; k5++)
{
int l20 = k + rand.nextInt(16);
int i20 = rand.nextInt(32);
int l21 = l + rand.nextInt(16);
(new WorldGenMinable(Block.tonBloc.blockID, 8)).generate(worldObj, rand, l20, i20, l21);
}
NB : pour les variables k5, l20, etc... Tu devras bien en nommer une qui N'EXISTE PAS ENCORE ( ex l20, i20, ...) dans le fichier pour ne pas entrer en conflit avec une autre génération. Et Block.tonBloc.blockID doit bien être remplacé par le nom du bloc que tu veux générer. Aussi si tu veux savoir à quoi servent les variables je te conseil de tester en changeant les valeur entre parenthèse.

J'espère avoir répondu à ta question,
max790
 

essaic

Bucheron
1 Juin 2011
122
1
13
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + rand.nextInt(16);
int i10 = rand.nextInt(32);
int l12 = l + rand.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(worldObj, rand, l6, i10, l12);
}

le 16 et 32 ne seraient pas les couches ou on le trouve ?
 

Stormweaker

Bucheron
15 Mai 2011
518
1
11
30
serveur-sinan.forumgratuit.fr
essaic a dit:
for(int k3 = 0; k3 < 2; k3++)
{
int l6 = k + rand.nextInt(16);
int i10 = rand.nextInt(32);
int l12 = l + rand.nextInt(16);
(new WorldGenMinable(Block.oreGold.blockID, 8)).generate(worldObj, rand, l6, i10, l12);
}

le 16 et 32 ne seraient pas les couches ou on le trouve ?

l6 et l12 correspondent au chunk, pas besoin de les changer
Pour faire varier la hauteur (depuis la couche 0) il faut changer i10, dans ce cas c'est de la couche 0 à 32
Après je crois que le nombre d'itérations de la boucle règle la rareté et le 8 c'est le nombre de blocs par le filon