Ce tutoriel est également disponible en vidéo.
Sommaire
Introduction
Dans ce tutoriel, nous allons créer un item très basique, puis je vais donner quelques méthodes qui peuvent être utiles.
Pré-requis
Code
Classe de l’item :
Vous pouvez commencer par créer une nouvelle classe qu’il faut étendre d’Item:
public class ItemTutoriel extends Item
{
}
Vous n’avez plus besoin d’ajouter un constructeur en 1.7. Voila, votre classe est terminée, pour l’instant, car vous pourrez lui ajouter des fonctions.
Classe principale :
Après avoir fait notre classe d’item, il faut maintenant enregistrer votre item.
En haut de la classe vous aller déclarer une nouvelle variable Item:
public static Item itemTutoriel;
Puis, dans la méthode PreInit de votre classe principale (celle avec FMLPreInitializationEvent en argument) vous aller déclarer la variable comme ItemTutoriel:
itemTutoriel = new ItemTutoriel();
Nous allons lui donner un nom en ajoutant setUnlocalizedName(“nom”) à la déclaration:
itemTutoriel = new ItemTutoriel().setUnlocalizedName("tutoriel");
Attention, ceci n’est que le nom non localisé donc, en jeu il sera nommé item.tutoriel.name. Pour localiser le nom (donc avec traduction) allez dans forge/src/main/resources/assets/votre_modid/lang/ et ouvrez les fichiers de lang précédemment créés. Ajoutez :
item.le nom non localisé.name=Nom Localisé
Ce qui donnera pour le en_US.lang :
item.tutoriel.name=Item Tutorial
et pour le fr_FR.lang :
item.tutoriel.name=Item Tutoriel
Après ceci, nous allons enregistrer l’item en ajoutant la méthode suivante:
GameRegistry.registerItem(itemTutoriel, "item_tutoriel")
itemTutoriel correspond à la variable déclaré précédemment.
“item_tutoriel” correspond au nom donné à l’item dans le “game data”. Ce nom sera utilisé comme référence en jeu (pour le /give, etc …)
Nous en avons terminé avec la classe principale.
Appliquer une texture
Pour appliquer une texture à un item, il existe deux façons de faire, une simple mais limité et une autre plus longue mais complète.
Simple: il vous suffit de rajouter .setTextureName(ModTutoriel.MODID + “:nomdelatexture”) dans la déclaration de l’item, dans la classe principale.
Ce qui nous donne:
itemTutoriel = new ItemTutoriel().setUnlocalizedName("tutoriel").setTextureName(ModTutoriel.MODID + ":itemtutoriel");
Cette méthode étant limité à une seule texture(ce qui est le plus souvent utilisé), il existe une autre façon de faire:
pour cela, rendez-vous dans la classe de l’Item où vous pouvez ajouter cette méthode qui va enregistrer la texture:
@Override
public void registerIcons(IIconRegister iconregister)
{
this.itemIcon = iconregister.registerIcon(ModTutoriel.MODID + ":itemtutoriel");
}
La texture est à mettre dans le dossier assets/modid/textures/items/
Avec modid à remplacer par l’id du mod.
Méthodes utiles
Ajouter votre item à une page de l’inventaire créatif:
Dans la classe principale ajoutez .setCreativeTab(creativetab) dans la déclaration de l’item (remplacer creativetab par la page souhaitée)
itemTutoriel = new ItemTutoriel().setUnlocalizedName("itemTutoriel").setTextureName(ModTutoriel.MODID + ":itemtutoriel").setCreativeTab(CreativeTabs.tabMaterials);
Ou dans la classe de l’item, ajouter un constructeur :
public ItemTutoriel()
{
this.setCreativeTab(CreativeTabs.Materials);
}
Résultat
Crédits
Rédaction :
Correction :
Ce tutoriel de Minecraft Forge France est mis à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International