MFF

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

    setHarvestLevel n'excède pas les "3"

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.2
    6 Messages 3 Publieurs 2.1k Vues 1 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.
    • N Hors-ligne
      Noxon
      dernière édition par robin4002

      Rebonjour,
      Ayant pas mal codé entre hier et cet après-midi, me voilà de nouveau face à un conflit que je ne sais déceler :
      Il repose sur la définition du level qui détermine la puissance minimale de l’outil pour récolter le bloc.

      setHarvestLevel("outil",Level)
      

      Lorsque que l’on choisit un niveau entre 0 et 3, la cohésion entre ce bloc personnalisé et les outils de différents types (or, fer, diamant) est correcte et respectée. Néanmoins, ayant produit un Material de niveau 4, en changeant la méthode comme ci-dessous :

      setHarvestLevel("pickaxe",4)
      

      La pioche de niveau 4 n’a aucune influence sur mon bloc, il en est de même pour les pioches de niveaux supérieurs ou inférieurs.
      Ayant testé mon bloc avec un setHarvestLevel(“pickaxe”,3) auparavant, il est bien fonctionnel.

      Voici la class entière de mon bloc :

      
      package wwrp.Blocks;
      
      import java.util.Random;
      import cpw.mods.fml.common.registry.GameRegistry;
      import wwrp.Common.Modwwrp;
      import net.minecraft.block.material.Material;
      import net.minecraft.block.Block;
      import net.minecraft.item.Item;
      
      public class BlockwwrpetincellimeOre extends Block
      {
      public BlockwwrpetincellimeOre()
      {
      super(Material.rock);
      setHarvestLevel("pickaxe",4);
      this.setHardness(4.5F);
      this.setStepSound(Block.soundTypeStone);
      }
      
      @Override
      public int quantityDropped(int meta, int fortune, Random random)
      {
      return quantityDroppedWithBonus(fortune, random);
      }
      
      //If the block's drop is an item.
      public Item getItemDropped(int metadata, Random random, int fortune) {
      return wwrp.Common.Modwwrp.etincellime;
      }
      
      public int quantityDropped(Random random)
      {
      return 1;
      }
      
      public int quantityDroppedWithBonus(int fortune, Random random)
      {
      if (fortune > 0)
      {
      int j = random.nextInt(fortune + 2) - 1;
      
      if (j < 0)
      {
      j = 0;
      }
      
      return quantityDropped(random) * (j + 1);
      }
      else
      {
      return quantityDropped(random);
      }
      }
      }
      }
      

      Y a-t-il quelque chose que l’on doit modifier (dans un autre fichier) ?
      Mille merci d’avance pour votre aide,
      Nox’.

      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

        Il me semble que ça ne monte pas au dessus de 3, je vais faire des vérifications de mon côté.

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

          On ne peut pas créer de matériel au dessus du diamant alors ?
          Il me semblait que l’on pouvait le faire sur les précédentes versions… 😕
          Il y a pas d’alternative à ce problème ? Qu’est-ce qui le limite en soit ?

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

            Je pense qu’il y a une méthode quelque part pour ajouter un harvest level 😉

            Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
            Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

            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

              Je viens de tester dans le constructeur d’un bloc :

              this.setHarvestLevel("pickaxe", 4);
              

              et dans celui d’une pioche :

              this.setHarvestLevel("pickaxe", 4);
              

              Mon bloc ne peut que être droppé avec cette pioche, et ma pioche peut aussi dropper du diam, de l’obsi, etc …

              Donc ça fonctionne très bien, je ne sais pas où tu t’es loupé.

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

                Mon dieu je suis bête …
                Je viens de trouver mon erreur. En fait en copiant une série de tools j’ai raccordé ma pioche à ma class qui définit les épées personnalisées…
                Je cherchais simplement le problème au mauvais endroit.
                Effectivement avec un tag pickaxe ça marche, il n’y a pas de bug sur l’harvest.
                Problème résolu, enfin même si du coup il y avait pas de problème.
                Désolé pour le temps perdu. Merci de m’avoir aidé. 😊

                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