Item qui répare l'armure équipé
-
Sommaire
Introduction
Salut, dans ce tutoriel, nous allons apprendre a faire une item basique en 1.11 et lui ajouter la possibilité de réparer l’armure si ton item est dans l’inventaire !
Pré-requis
Maîtriser forge et deux trois choses basique des versions ultérieurs !
L’espace de travail de base mis en placeCode
Classe Principale
Déjà la première chose a faire est de faire c’est de déclarer l’item a créer ici son nom sera : MagicStone
On déclare donc ça dans la classe principale au dessus de ton preInit :public static Item magicstone;
Voila notre item est déclarer mais juste ça rien de plus maintenant il faut ajouter a cette item ces “propriété” donc cette fois il faut aller dans l’évent du preInit
public static void preInit(FMLPreInitializationEvent event) { }
et a l’intérieur ajouté ça ;
magicstone = new ItemMagicStone();
Une erreur est présente sur : new ItemMagicStone().
Créais la classe et reviens dans la classe principaleJuste en dessous on change des anciennes version le GameRegistry est totalement modifier (j’en ai fais les frais, Merci robin =))
GameRegistry.register(magicstone);
C’est par cette simple ligne que l’on enregistre en 1.11
Voila je pense que pour la classe principale la base est faite maintenant on passe dans la classe de l’item
Classe de l’item
Nous voila dans la classe de l’item qui normalement doit donner ça :
public class ItemMagicStone { }
Si tu n’as pas ça reprends le tutoriel de 0 tu as surement du oublier quelque chose
il faut maintenant l’extends Item afin d’avoir toutes les fonctionnalités d’un item et qu’il soit reconnue
public class ItemMagicStone extends Item { }
On importe Item (Conseil de Mosca : ctrl + shit + o import après choisis le bon import)
A l’intérieur des crochet tu vas devoir crée un constructeur du même nom que ta classe
public ItemMagicStone (){ }
et dans cette méthode ajouter quelques petits bouts de codes qui te permettrons de “personnalisé” l’item :
public class ItemMagicStone extends Item { public ItemMagicStone () { setMaxStackSize(1); //Le nombre max que tu peux stacker ici : 1 setMaxDamage(1000); //Le nombre maximal de durabilités de l'item (permet de réparer 1000 d'armure /4 250 par pièce) setUnlocalizedName("magicstone"); //Le nom de l'item (fichier lang) setCreativeTab(CreativeTabs.COMBAT); //La tabs ou tu le met } }
Voila techniquement si je ne me suis pas louper a partir d’ici ton item est prêt
(pas de texture, de nom correct) mais si tu lances Minecraft ça ne devrait pas crasherEnsuite on enchaîne sur le fait que l’item répare l’armure qui est équipée :
En dessous du constructeur ItemMagicStone ajoute ceci
public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean selected) { if ((entity instanceof EntityPlayer)) { //on verifie que l'entity est bien un joueur EntityPlayer player = (EntityPlayer) entity;//On définie entity comme EntityPlayer for (int i = 0; i < 4; i++) { // 4 pour les 4 slots d'armures ItemStack armor = player.inventory.armorInventory.get(i); // on récupere l'armure dans le slot i (0,1,2,3) garce a notre boucle for if ((armor != null) && (armor.getItemDamage() > 0) && (stack.getItemDamage() < stack.getMaxDamage())) { // si tu as une partie de l'armure équipé et qu'elle est endommagé et que ta pierre a encore de la durabilité alors stack.setItemDamage(stack.getItemDamage() + 1); // on enlève 1 de durabilité a ta pierre armor.setItemDamage(armor.getItemDamage() - 1); // on ajoute 1 de durabilité a ton armure } } } }
Voila normalement lorsque tu auras l’item dans ton inventaire il réparera ton armure.
Le reste est du json et de la texture qui sont géré exactement pareil qu’en 1.8.9 je vous invite donc a poursuivre sur les anciens tutoriels pour crée un item.
Résultat
Rédaction :
- Mosca421
Correction :
Ce tutoriel de Mosca421 publié sur 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