MFF

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

    Item variant

    Planifier Épinglé Verrouillé Déplacé Résolu 1.11.x
    1.11.x
    7 Messages 4 Publieurs 1.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.
    • Alexandre1156A Hors-ligne
      Alexandre1156
      dernière édition par

      Salut,

      Je veux créer un item dont la texture peut changer suivant un item dans son craft. Après avoir enregistré et créé tous les modèles et textures :

      
      ResourceLocation[] resLoc = new ResourceLocation[this.mushPowersItems.size()+1];
      resLoc[0] = new ResourceLocation(Reference.MOD_ID, "shroomrodstick");
      for(int i = 0; i < this.mushPowersItems.size(); i++)
         resLoc[i+1] = new ResourceLocation(Reference.MOD_ID, "shroomrodstick_"+this.mushPowersItems.get(i).getRegistryName().getResourcePath());
      ModelLoader.registerItemVariants(itemShroomRodStick, resLoc);
      
      

      je ne sais pas comment m’y prendre pour afficher la bonne texture, sachant que la méthode getIcons n’existe plus :s  .

      Merci  😄

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

        Salut
        a mon avis, faut un peu de ces ingrédients là :

        • ta classe CustomRecipe implémentant de IRecipe, qui retournera le stack “result” avec le metadata variant en fonction des itemstacks “input” constituant ta recette.
        • ton item enregistrant plusieurs métadatas.
        • tes fichiers .jsons affichants la bonne texture en fonction du bon métadata.

        Voilà, à toi de voir quels sont les étapes de ta recette, temps de cuissons, températures, etc…

        PS = Il est tard, je voulais user de métaphores à travers ma réponse, mais je me rends compte que ça n’a rien de comique…

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

          @‘Plaigon’:

          Salut
          a mon avis, faut un peu de ces ingrédients là :

          • ta classe CustomRecipe implémentant de IRecipe, qui retournera le stack “result” avec le metadata variant en fonction des itemstacks “input” constituant ta recette.
          • ton item enregistrant plusieurs métadatas.
          • tes fichiers .jsons affichants la bonne texture en fonction du bon métadata.

          Voilà, à toi de voir quels sont les étapes de ta recette, temps de cuissons, températures, etc…

          PS = Il est tard, je voulais user de métaphores à travers ma réponse, mais je me rends compte que ça n’a rien de comique…

          Justement, je ne veux pas utiliser les metadatas car mon objet peut prendre jusqu’à 12 textures actuellement, mais ce chiffre va augmenter et dépassé un jour 16…

          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

            Les item peuvent avoir jusqu’à 32767 metadata différent.
            Autant dire que tu as de la marge.

            (les variantes sont de toute façon a un moment relié à un metadata, sauf si la valeur de la variante est calculable).

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

              Bon, j’ai finalement réussis ^^

              MAIS, un autre problème intervient : dans la méthode onItemRightClick, je veux savoir si le joueur fait clic droit sur une entity. Pour cela, j’utilise la méthode rayTrace. Problème : elle ne prend en compte que les blocs et pas les entities. J’ai donc fait ainsi :

              
              @Override
              protected RayTraceResult rayTrace(World worldIn, EntityPlayer playerIn, boolean useLiquids) {
              if(playerIn instanceof EntityPlayerMP){
                 MinecraftServer server = FMLCommonHandler.instance().getMinecraftServerInstance();
                 return null;
              } else 
                 return Minecraft.getMinecraft().objectMouseOver;
              }
              
              

              Mais je ne sais pas quoi mettre pour avoir un *RayTraceResult *côté serveur  :s

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

                Quelqu’un a déjà posé cette question :

                https://www.minecraftforgefrance.fr/showthread.php?tid=4657&page=2

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

                  Eh bien merci à vous tous, tous marche marche parfaitement !

                  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