24 févr. 2014, 18:55

youtubeCe 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

0_1529587695902_item_moddé.png

Github

Crédits

Rédaction :

Correction :

Creative Commons
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

retourRetour vers le sommaire des tutoriels