MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    [1.12.2] Problème durabilité non perdu

    Planifier Épinglé Verrouillé Déplacé Résolu 1.12.x
    1.12.2
    10 Messages 2 Publieurs 448 Vues 2 Watching
    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.
    • R Hors-ligne
      Reikenz
      dernière édition par Reikenz

      Bonjour à tous, j’ai un petit souci mon item fonctionne correctement, mais ne perd pas de durabilité alors que je lui en retire

      J’ai regardé énormément les sujets anglais sans trouver la réponse alors je me tourne sur les forums français.

      Voici mon code:

          private PotionEffect effect;
          private int coolDown;
      
          public ItemEffect(String name, int maxDamage, int stackSize, int coolDown, PotionEffect effect)
          {
              super(name);
      
              this.setMaxDamage(maxDamage);
              this.setMaxStackSize(stackSize);
              this.setFull3D();
      
              this.effect = effect;
              this.coolDown = coolDown;
          }
      
          @Override
          public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn) {
              ItemStack itemStack = playerIn.getHeldItemMainhand();
      
              if (!worldIn.isRemote) {
                  if (playerIn.inventory.hasItemStack(itemStack)) {
                      if (itemStack.getItemDamage() < itemStack.getMaxDamage()) {
                          playerIn.addPotionEffect(new PotionEffect(effect.getPotion(), effect.getDuration(), effect.getAmplifier(), effect.getIsAmbient(), effect.doesShowParticles()));
                          playerIn.getCooldownTracker().setCooldown(this, coolDown);
                          
                          itemStack.damageItem(1, playerIn);
      
                          return new ActionResult<>(EnumActionResult.SUCCESS, itemStack);
                      } else {
                          return new ActionResult<>(EnumActionResult.FAIL, itemStack);
                      }
                  } else {
                      return new ActionResult<>(EnumActionResult.FAIL, itemStack);
                  }
              } else {
                  return new ActionResult<>(EnumActionResult.FAIL, itemStack);
              }
          }
      

      SI je crois bien ça viendrais du ActionResult, mais je ne suis pas sûr de ça.

      Merci d’avance aux personne qui m’aiderons.

      1 réponse Dernière réponse Répondre Citer 0
      • R Hors-ligne
        Reikenz
        dernière édition par

        Le problème était que j’était en créatif et sa n’use pas la dura en dura via la méthode la

        1 réponse Dernière réponse Répondre Citer 0
        • robin4002R Hors-ligne
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
          dernière édition par

          @Reikenz a dit dans [1.12.2] Problème durabilité non perdu :

          if(itemStack.getItemDamage() < 10) {

          Je pense que cette condition est inversée.

          1 réponse Dernière réponse Répondre Citer 0
          • R Hors-ligne
            Reikenz
            dernière édition par Reikenz

            L’items fonctionne parfaitement juste ne perd aucune durabilité
            Et non mon signe est bien correct il regarde si l’item ne dépasse pas la durabilité maximum j’ai fais un petit correctif au lieu du 10 j’ai remplacer par

            itemStack.getMaxDamage()
            
            1 réponse Dernière réponse Répondre Citer 0
            • robin4002R Hors-ligne
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
              dernière édition par

              Sauf erreur de ma part, les damages fonctionnent en sens inverse.
              0 = item cassé, la fonction damageItem reduit de 1 à chaque fois.

              1 réponse Dernière réponse Répondre Citer 0
              • R Hors-ligne
                Reikenz
                dernière édition par Reikenz

                Je test sa mais le problème ne change pas sa reste qu’il ne perd aucun durabilité

                EDIT: Oui j’avais bien raison je me suis give mon stick via la commande /give @a utils:strength_stick 1 8

                Le 8 m’as bien réduit ma durabilité donc il m’en reste plus que 2

                1 réponse Dernière réponse Répondre Citer 0
                • robin4002R Hors-ligne
                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                  dernière édition par

                  Ce message a été supprimé !
                  1 réponse Dernière réponse Répondre Citer 0
                  • R Hors-ligne
                    Reikenz
                    dernière édition par Reikenz

                    Ne trouve pas c’est bien de Item pas de ItemTool que tu récupère sa ?

                    J’ai trouver isDamageable();

                    1 réponse Dernière réponse Répondre Citer 0
                    • robin4002R Hors-ligne
                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                      dernière édition par

                      Ouai non j’ai rien dit x)

                      Je vais arrêter d’essayer d’aider avec juste ma mémoire, visiblement ça remonte trop.

                      Du-coup aucune idée de pourquoi ça ne fonctionne pas, désolé.

                      1 réponse Dernière réponse Répondre Citer 0
                      • R Hors-ligne
                        Reikenz
                        dernière édition par

                        Oui toujours pas 😞

                        1 réponse Dernière réponse Répondre Citer 0
                        • R Hors-ligne
                          Reikenz
                          dernière édition par

                          Le problème était que j’était en créatif et sa n’use pas la dura en dura via la méthode la

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

                          MINECRAFT FORGE FRANCE © 2024

                          Powered by NodeBB