• Récent
  • Mots-clés
  • Populaire
  • Utilisateurs
  • Groupes
  • S'inscrire
  • Se connecter
  • S'inscrire
  • Se connecter
  • Recherche
  • Récent
  • Mots-clés
  • Populaire
  • Utilisateurs
  • Groupes

Résolu Problème avec hasEffect

1.7.x
1.7.x
3
5
2.4k
Charger plus de messages
  • Du plus ancien au plus récent
  • Du plus récent au plus ancien
  • Les plus votés
Répondre
  • Répondre à l'aide d'un nouveau sujet
Se connecter pour répondre
Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
  • Vayper
    Vayper dernière édition par robin4002 8 août 2018, 00:34 21 juin 2014, 23:15

    Forge 10.12.1.1117, Minecraft 1.7.2

    Salut à tous, dans mon mod, j’ai une classe appelée Gem qui est la base de toutes les gemmes de minerais de mon mod.
    J’aimerais appliquer l’effet d’enchantement (hasEffect) seulement sur 2 gemmes : la divineGem et la sataniteGem (il y en a 4 gemmes en tout).

    J’ai donc ajouté ce code dans la classe Gem :

    // Particule enchantées
    @Override
    public boolean hasEffect(ItemStack par1ItemStack)
    {
        if (ItemStack == MorePowerCraft.divineGem || ItemStack == MorePowerCraft.sataniteGem)
            return true;
         return false;
    }
    

    Le problème c’est que les 2 ItemStack de mon if sont sous-ligné en rouge : ““ItemStack” cannot be resolved to a variable”.
    J’ai pas vraiment compris comment utiliser ItemStack et ce qu’il représente…

    Que dois-je faire pour appliquer uniquement les particules d’enchantements sur la sataniteGem et la divineGem ?

    Merci d’avance
    Vayper

    1 réponse Dernière réponse Répondre Citer 0
    • robin4002
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 21 juin 2014, 23:27

      public boolean hasEffect(ItemStack par1ItemStack)
      Ton paramètre s’appelle par1ItemStack, donc :
      if (par1ItemStack== MorePowerCraft.divineGem …
      Mais ça ne fonctionnera pas non plus, car tu peux pas comparer un Item avec un ItemStack.
      Il faut donc faire :
      if (par1ItemStack.getItem() == MorePowerCraft.divineGem || par1ItemStack.getItem() == MorePowerCraft.sataniteGem)

      Sinon -> go apprendre la base de java.

      1 réponse Dernière réponse Répondre Citer 1
      • Vayper
        Vayper dernière édition par 21 juin 2014, 23:39

        @‘robin4002’:

        public boolean hasEffect(ItemStack par1ItemStack)
        Ton paramètre s’appelle par1ItemStack, donc :
        if (par1ItemStack== MorePowerCraft.divineGem …
        Mais ça ne fonctionnera pas non plus, car tu peux pas comparer un Item avec un ItemStack.
        Il faut donc faire :
        if (par1ItemStack.getItem() == MorePowerCraft.divineGem || par1ItemStack.getItem() == MorePowerCraft.sataniteGem)

        Sinon -> go apprendre la base de java.

        Ca fonctionne merci !

        Les bases en Java je les ai, ce qui me manque c’est connaitre les méthodes de base dans le modding Minecraft, ItemStack, et tout un tas d’autres méthodes ou paramètres, c’est expliqué nulle part a quoi elles servent ni ou on peut les trouver. C’est quelque fois expliqué en commentaires dans Forge mais je trouve que c’est pas suffisant.

        1 réponse Dernière réponse Répondre Citer 0
        • utybo
          utybo dernière édition par 21 juin 2014, 23:42

          Sauf que si tu connaissais les bases du Java tu aurais sû qu’il faut utiliser les noms des paramètres et non leur type.
          Openclassrooms à la rescousse!

          Moddeur à la retraite et développeur de trucs en Java.

          J'aide les gens comme je peux, alors si mon message v…

          1 réponse Dernière réponse Répondre Citer 1
          • Vayper
            Vayper dernière édition par 21 juin 2014, 23:44

            @‘utybo’:

            Sauf que si tu connaissais les bases du Java tu aurais sû qu’il faut utiliser les noms des paramètres et non leur type.
            Openclassrooms à la rescousse!

            T’as raison 🙂 j’avais fais une pause au milieu du chapitre 2 de la POO pour me lancer dans le modding parce que je pensais que ca serait suffisant pour le début mais ca m’a fait oublier quelques notions ^^ J’y retourne

            1 réponse Dernière réponse Répondre Citer 0
            • 1 / 1
            1 sur 5
            • Premier message
              1/5
              Dernier message
            Design by Woryk
            Contact / Mentions Légales

            MINECRAFT FORGE FRANCE © 2018

            Powered by NodeBB