AddInformation qui ne fonctionne pas



  • Bonjour, 
    j'ai essayé de mettre un addInformation dans la classe d'un item.
    Mais cela ne fonctionne pas je ne comprend pas pourquoi…

    package fr.playflop.extania.common.item;
    
    import java.awt.List;
    
    import net.minecraft.entity.player.EntityPlayer;
    import net.minecraft.item.ItemFood;
    import net.minecraft.item.ItemStack;
    import net.minecraft.potion.Potion;
    import net.minecraft.potion.PotionEffect;
    import net.minecraft.util.EnumChatFormatting;
    import net.minecraft.world.World;
    
    public class Pain_Monazite
      extends ItemFood
    {
      public Pain_Monazite()
      {
        super(100, true);
        setAlwaysEdible();
      }
      protected void onFoodEaten(ItemStack paramItemStack, World paramWorld, EntityPlayer paramEntityPlayer)
      {
        super.onFoodEaten(paramItemStack, paramWorld, paramEntityPlayer);
        if (!paramWorld.isRemote)
        {
          paramEntityPlayer.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 2400, 0));
        }
      }
      public void addInformation(ItemStack par1ItemStack, List par2List)
      {
      par2List.add("Lore Line #1");
      par2List.add("Lore Line #2");
      // etc ...
      }
    }
    
    


  • Salut, la méthode addInformation est-elle appelée au moins?



  • @'Plaigon':

    Salut, la méthode addInformation est-elle appelée au moins?

    Comment ça ?


  • Administrateurs

    Salut,
    Non elle ne l'ai pas car il n'a pas les bons arguments.

    Regardes dans la classe Item à quoi la fonction ressemble.



  • Cela devient très récurent ce genre de problèmes je trouve 😕
    Faudrait faire quelque chose pour aider les débutants à ce propos.



  • @'robin4002':

    Salut,
    Non elle ne l'ai pas car il n'a pas les bons arguments.

    Regardes dans la classe Item à quoi la fonction ressemble.

    j'ai trouvé ceci, mais ça change le nom de l'item, moi je voudais ajouté une "Lore" en fait ^^

        @SideOnly(Side.CLIENT)
        public void addInformation(ItemStack p_77624_1_, EntityPlayer p_77624_2_, List p_77624_3_, boolean p_77624_4_) {}
    
        public String getItemStackDisplayName(ItemStack p_77653_1_)
        {
            return ("" + StatCollector.translateToLocal(this.getUnlocalizedNameInefficiently(p_77653_1_) + ".name")).trim();
        }
    
    


  • La première méthode suffisait. Tu avais oublié un paramètre boolean en fait.



  • @'Plaigon':

    La première méthode suffisait. Tu avais oublié un paramètre boolean en fait.

    En fait j'ai fix mon souci… Mauvais import, j'ai importer java.awt.List a la place de [color=#131313java.util.List][font=Helvetica, Arial,…]



  • Remontre ta classe en entier et dis nous précisément le rendu en jeu.



  • @'Plaigon':

    Remontre ta classe en entier et dis nous précisément le rendu en jeu.

    En fait j'ai fix mon souci… Mauvais import, j'ai importer [font=Ubuntu, sans-serifjava.awt.List a la place de java.util.List…]



  • Maintenant pense à attribuer la meilleure réponse afin de clôturer le topic 😃