1. Le forum de Minecraft-France va définitivement fermer ses portes. Celui-ci restera en lecture seule mais vous ne pourrez plus y apporter de nouveaux topics. Nous vous invitons à nous rejoindre sur le Discord de Minecraft-France qui permet de présenter vos projets, discuter avec la communauté etc.. Merci à tous d'avoir fait vivre ce forum de nombreuses années. Pour nous rejoindre sur Discord, Cliquez ici

[1.7.2]Erreur sur .setPotionEffect

Discussion dans 'Aide à la création de mod' créé par Nolan-XX, 13 Juil 2014.

  1. Nolan-XX

    Nolan-XX Modérateur
    Staff

    Inscrit:
    29 Déc 2012
    Messages:
    10 234
    Points:
    304
    Sexe:
    Homme
    J'ai crée un item de type food et j'essaye de lui ajouter un effet de potion. Problème, lorsque que j'ajoute un .setPotionEffect, il me met une erreur que voici :
    Code (cpp):
    The method setPotionEffect(String) in the type Item is not applicable for the arguments (Potion, int, int, float)
    Voici le code de l'item :
    Code (Java):

    Panachay = new Panachay(2,2.0F,true).setUnlocalizedName("panac").setTextureName(Main.MODID + ":panac").setPotionEffect(Potion.damageBoost, 5, 2, 1.0F);
    GameRegistry.registerItem(Panachay, "Panachay");
     
    Code (Java):

    package fr.nolancraft.onche.Items;


    import net.minecraft.creativetab.CreativeTabs;
    import net.minecraft.item.EnumAction;
    import net.minecraft.item.ItemFood;
    import net.minecraft.item.ItemStack;

    public class Panachay extends ItemFood {

       
       public Panachay(int gigot, float saturation, boolean wolf)
       {
         super(gigot, saturation, wolf);
         this.setCreativeTab(CreativeTabs.tabFood);
         
       }
       
        public EnumAction getItemUseAction(ItemStack par1ItemStack)
        {
        return EnumAction.drink;
        }
       
       

       
    }
     
    Par ailleurs, si vous saviez comment faire pour que l'item soit mangeable même quand on a pas faim/on est en créatif
     
  2. robin4002

    robin4002 Support Technique
    Staff

    Inscrit:
    17 Août 2012
    Messages:
    5 478
    Points:
    229
    Sexe:
    Homme
    Salut,
    Essaye comme ça :
    Code (cpp):
    Panachay = (new Panachay(2,2.0F,true, true)).setPotionEffect(Potion.damageBoost, 5, 2, 1.0F).setUnlocalizedName("panac").setTextureName(Main.MODID + ":panac");
     
  3. Nolan-XX

    Nolan-XX Modérateur
    Staff

    Inscrit:
    29 Déc 2012
    Messages:
    10 234
    Points:
    304
    Sexe:
    Homme
    Code (cpp):

    The constructor Panachay(int, float, boolean, boolean) is undefined
     
    Voila ce que ça donne avec le code que tu m'as donné
     
  4. robin4002

    robin4002 Support Technique
    Staff

    Inscrit:
    17 Août 2012
    Messages:
    5 478
    Points:
    229
    Sexe:
    Homme
    En effet, il me semblait que alwaysEdible passait par le constructeur, mais non c'est une fonction :
    Code (cpp):
    Panachay = (new Panachay(2,2.0F,true)).setAlwaysEdible().setPotionEffect(Potion.damageBoost, 5, 2, 1.0F).setUnlocalizedName("panac").setTextureName(Main.MODID + ":panac");
     
  5. Nolan-XX

    Nolan-XX Modérateur
    Staff

    Inscrit:
    29 Déc 2012
    Messages:
    10 234
    Points:
    304
    Sexe:
    Homme
    Toujours l'erreur
    Code (cpp):
    The method setPotionEffect(int, int, int, float) in the type ItemFood is not applicable for the arguments (Potion, int, int, float)
    Pour info, je suis en FML v7.2.156.1060 Minecraft Forge 10.12.1.1060, ça vient peut-être de cette build ?
     
  6. robin4002

    robin4002 Support Technique
    Staff

    Inscrit:
    17 Août 2012
    Messages:
    5 478
    Points:
    229
    Sexe:
    Homme
    Non, ça vient pas du build.
    Remplace Potion.damageBoost par Potion.damageBoost.potionId ou un truc comme ça
     
    • J'aime J'aime x 1
  7. Nolan-XX

    Nolan-XX Modérateur
    Staff

    Inscrit:
    29 Déc 2012
    Messages:
    10 234
    Points:
    304
    Sexe:
    Homme
    Code (Java):

    Panachay = (new Panachay(2,2.0F,true)).setAlwaysEdible().setPotionEffect(Potion.damageBoost.id, 5, 2,1.0F).setUnlocalizedName("panac").setTextureName(Main.MODID + ":panac");
    GameRegistry.registerItem(Panachay, "Panachay");
    Parfait, merci.
     

Partager cette page