Aide au développement/Créer un nouveau bloc

De Minecraft Wiki
< Aide au développement
Révision datée du 4 novembre 2012 à 13:56 par Benjo51 (discussion | contributions) (Ajout de tutoriel texture et escalier.)
Aller à : navigation, rechercher
La page est en cours de finalisation.

Un bloc normal (cube)

Pour créer un bloc basique (exemple : bois, pierre, bois, terre ...), vous devez vous rendre dans : Client --> src --> net.minecraft.src --> Block.java.

Ensuite, allez à la ligne 191 (environ), vous devriez voir cela : public static final Block stairsWoodJungle[...]

Faites alors un retour à la ligne et mettez ceci :

public static final Block NOMDUBLOC = (new Block(250, 169, Material.rock)).setHardness(3F).setResistance(5F).setStepSound(soundStoneFootstep).setBlockName("magnesium");

Voici la définition de ce code :

  • NOMDUBLOC = Le nom de votre bloc. (Ce n'est pas le nom qui s'affichera dans le jeu, c'est juste le nom du bloc qu'on utilise dans le code!)
  • (new Block(250, 169, Material.rock)) définit que le type de bloc pris ici est un bloc simple, il existe plusieurs autres types, qu'on découvrira plus tard. 250 est l'ID du bloc que nous allons créer (La liste des ID du jeu est disponible ici). 169 est le numéro de la texture de votre bloc, cela sera expliqué plus bas. Material.rock est la matière de votre bloc. Pour le bois c'est Material.wood, ou Material.cloth pour la laine...
  • .setHardness définit la durée de temps nécessaire pour casser le bloc.
  • .setResistance définit la résistance du bloc à la TNT.
  • .setStepSound définit le son produit lorsqu'on marche sur votre bloc. (Pour les autres, c'est simple, allez-y avec votre logique.)
  • .setBlockName définit la clé de traduction du nom du bloc (vous allez comprendre plus bas, c'est pour définir le nom en jeu de votre bloc (Note : ce n'est pas encore le nom affiché, mais il va servir pour traduire ce nom affiché en plusieurs langues!)

Mettre le bloc dans l'inventaire créatif

Pour mettre un bloc en mode créatif, il faut rajouter la fonction .setCreativeTabs() dans la variable de création de l'objet :

[...] .setBlockName("magnesium").setCreativeTabs(CreativeTabs.Onglet);

Voici la liste officielle des onglets que vous pouvez utiliser. Les noms sont à mettre à la place de CreativeTabs.Onglet. Exemple : [...].setCreativeTabs(CreativeTabs.tabBlock); par exemple !

  • Building Blocks (Blocs de constructions) : CreativeTabs.tabBlock
  • Decoration Blocks (Blocs décoratifs) : CreativeTabs.tabDeco
  • Redstone (Redstone) : CreativeTabs.tabDeco
  • Transportation (Moyens de transport) : CreativeTabs.tabTransport
  • Miscellaneous (Divers) : CreativeTabs.tabMisc
  • Foodstuffs (Nourriture) : CreativeTabs.tabFood
  • Tools (Outils) : CreativeTabs.tabTools
  • Combat (Combat) : CreativeTabs.tabCombat
  • Brewing (Potions) : CreativeTabs.tabBrewing
  • Material (Matériaux) : CreativeTabs.tabMaterials

Ajouter une texture a son bloc

Pour ajouter une texture, rien de plus simple. Il suffit d'ouvrir minecraft.jar (1.4.2) avec votre logiciel d'extraction préféré.
Ensuite, trouvez le terrain.png et glissez le dans un dossier quelconque.
Ouvrez avec un logiciel de graphisme supportant la transparence. (Ne pas utiliser Paint, choisir plutôt Paint.NET.)
Ensuite, dans une case violette et rose (C'est une case de texture libre), créez votre texture.
Maintenant, comptez les cases jusqu’à la texture que vous avez dessiné. Exemple: la Pierre a la texture numéro 2.

Dans le code (new Block(250, 169, Material.rock)), remplacez 169 par votre numéro de texture.


Un bloc de type escalier

Pour créer un escalier, il suffit de remplacer (new Block(250, 169, Material.rock)) par: (new BlockStairs(201, glowStone, 0)) et d'ajouter la fonction .setRequiresSelfNotify().

Explications:

  • 201 est l'ID de vote bloc
  • glowStone est la matière de votre bloc. vous pouvez la changer par ce que vous voulez. Cela correspond au nom (dans le code) du bloc.
  • 0 est le meta-data du bloc. Explications: Prennons pour exemple les planches de bois. Il en existe quatre types. Mais si vous regardez bien, elles ont tous le même ID. Par contre, elles ont aussi un sous ID qui correspond a leur couleur. Il s'agit du meta-data. Et si vous faites un escalier avec un bloc ayant des meta-data, vous mettez celui-ci a la place du 0.


Un bloc de type barrière

Un bloc de type Porte-Barrière