MFF

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

    Enchant, multi texture & doublon

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    17 Messages 3 Publieurs 3.3k 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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      Il est toujours possible de modifier les enums avec l’EnumHelper

      Site web contenant mes scripts : http://SCAREXgaming.github.io

      Pas de demandes de support par MP ni par skype SVP.
      Je n'accepte sur skype que l…

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

        @‘SCAREX’:

        Il est toujours possible de modifier les enums avec l’EnumHelper

        c’est une piste a explorer, mais j’ai peur que ce soit plus compliquer puisqu’il faut aussi modifier la méthode “canEnchantItem” de l’Enum… Je vais m’y pencher demain moi.

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

          J’up le sujet, car j’ai changé mon problème (plutôt que de créer des nouveau sujet a chaque petit problème ^^')

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

            Il vaut mieux créer un nouveau sujet à chaque fois, comme çà si quelqu’un a le même problème, ce sera plus simple de trouver le sujet.

            Pour les models : regarde dans les logs si le fichier est trouvé.

            Site web contenant mes scripts : http://SCAREXgaming.github.io

            Pas de demandes de support par MP ni par skype SVP.
            Je n'accepte sur skype que l…

            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 JSON ajoutés avec la fonction getModel doivent être enregistré, je ne connais plus par coeur la fonction, je ne pourrai que te la donner demain soir. (Je suis pas chez moi, je suis sur mon téléphone).

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

                Alors, sur les log en cours d’exécution, je n’ai pas de message d’erreur indiquant que le fichier est manquant (comme c’étais le cas pour certain autre item).

                concernant l’enregistrement des fichier .JSON, je l’avais déjà compris. Si j’ai bien compris, il suffit d’enregistrer comme s’il s’agissait d’une autre métadata de l’item

                
                       Main.proxy.registerItemTexture(this, 0, getUnlocalizedNameAlone(), modid);
                       Main.proxy.registerItemTexture(this, 1, getUnlocalizedNameAlone() + "Using", modid);
                
                

                Le problème est que dans cette ordre, cela fonctionne sans problème pour le modèle par défaut (0), mais pas du tout pour le modèle avec “getModel” (1)

                En revanche, si j’échange les deux, alors le résultat est inversé. Celui par défaut (0) ne fonctionne pas, en revanche, celui avec “getModel” (1) lui fonctionne ( en utilisant le le modèle enregistrer sur la métadata 1 évidemment ).

                
                       Main.proxy.registerItemTexture(this, 0, getUnlocalizedNameAlone() + "Using", modid);
                       Main.proxy.registerItemTexture(this, 1, getUnlocalizedNameAlone(), modid);
                
                

                Evidemment, je rappel que les fichier .json sont STRICTEMENT identique, a l’exception du nom

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

                  , getUnlocalizedNameAlone() + “Using” tu disais pas que c’était “_using” ?

                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                  Pas de demandes de support par MP ni par skype SVP.
                  Je n'accepte sur skype que l…

                  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

                    C’est cette fonction qu’il te manque
                    :
                    ModelBakery.addVariantName(NHGItems.backStabberKnife, new String[] {NanotechHungerGames.MODID + “:item_back_stabber_normal”, NanotechHungerGames.MODID + “:item_back_stabber_ready”});
                    Premier argument : l’item
                    Deuxième argument : tableau de string avec le nom des JSON.
                    À mettre côté client seulement.

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

                      Il faut mettre cette fonction ou précisément ? J’ai tenter dans clientProxy, mais elle ne semble pas fonctionner, et j’ai tenter dans la classe de mon item comme cela (que j’appelle dans mon constructeur au passage) :

                      @SideOnly(Side.CLIENT)
                      public JScythe multiTexture(String modid)
                      {
                      ModelBakery.addVariantName(this, new String[] {modid + ":" + getUnlocalizedNameAlone(), modid + ":" + getUnlocalizedNameAlone() + "Using"});
                      return this;
                      }
                      

                      Mais cela ne semble pas fonctionné aussi (aucun message d’erreur)

                      EDIT : Autant pour moi, j’avais mal appeler la fonction, j’avais utilisé multiTextue(modid + “:”) mais les “:” étais déjà intégrer ^^"

                      Merci pour la résolution ! 😄

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

                        N’oublie pas la balise résolu.

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

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

                          J’ai hésité a fermer les sujets, puis en ré-ouvrir un, mais au final, j’ai tellement de question en suspense, de chose qui m’échappe sur Forge, qu’au final, j’ai décider d’essayer de faire de se sujet, une sort de FAQ de toute mes questions. Si l’idée ne vous plait pas, n’hésiter pas a le dire, si vraiment, cela s’avères nul, je fermerai le sujet, et en ré-ouvrirai à coté.

                          Maintenant, voila la question actuel :

                          :::
                          Et c’est re partie pour des questions ^^’ Bien dormis au moins ? X)

                          public void onPlayerStoppedUsing(ItemStack itemStackIn, World worldIn, EntityPlayer playerIn, int timeLeft)
                          {
                          AxisAlignedBB hitArea;
                          int x = itemStackIn.getMaxItemUseDuration() - timeLeft;
                          if (x > 50)
                          {
                          x = 50;
                          }
                          
                          Double bonus = 1.0D + (x / 25); // 1 + (limite max - temps restant) / tickParSeconde
                          Float damageMultiplier = 0.75F ;
                          
                          rightCombo++;
                          
                          if(playerIn.isSneaking())
                          {
                          hitArea = new AxisAlignedBB(playerIn.posX, playerIn.posY, playerIn.posZ, playerIn.posX + 1.0D, playerIn.posY + 1.0D, playerIn.posZ + 1.0D).expand(bonus, 0.0D, bonus);
                          }
                          else
                          {
                          hitArea = new AxisAlignedBB(playerIn.posX, playerIn.posY + 1.0D, playerIn.posZ, playerIn.posX + 1.0D, playerIn.posY + 2.0D, playerIn.posZ + 1.0D).expand(bonus, 0.0D, bonus);
                          damageMultiplier += 0.5F;
                          }
                          damageMultiplier *= (0.25F + (float) (bonus / 4.0D))*(3.0F/2.0F) * (0.5F/rightCombo + 0.5F);
                          
                          List entityList = playerIn.worldObj.getEntitiesWithinAABBExcludingEntity(playerIn, hitArea);
                          
                          for (int i = 0; i < entityList.size(); i++)
                          {
                          if(entityList.get(i) instanceof EntityLivingBase)
                          {
                          JFunction.dealDamage(playerIn, (EntityLivingBase) entityList.get(i), damageMultiplier, false);
                          }
                          }
                          }
                          
                          

                          Voici ma fonction permettant de gérer mon attaque sur le clic droit.
                          Le problème étant que pour une raison qui m’échappe, la fonction est appeler deux fois à la suite, à chaque fois que je lâche le clic.
                          Les dégâts ne sont bien infliger qu’une fois, le problème étant plus sur la variable combo, qui se retrouve implémenter deux fois trop vite, réduisant les dégât du spam clic bien trop rapidement.

                          Ma question du jour étant : Est ce normal que la fonction s’active deux fois, ou est ce que cela est dus à autre chose (sachant que je n’appelle cette fonction nul part ailleurs)
                          :::

                          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

                            C’est une question de client / serveur. La plupart des méthodes sont appelés une fois en client et une fois en serveur à chaque fois. Donc deux fois au total.
                            Il faut utiliser la condition if(!world.isRemote) pour faire les actions que côté serveur.

                            Petite remarque, dans ton code tu devrais utiliser double et float et non Double et Float. C’est juste un majuscule qui change en apparence, mais float et double sont des primitives alors que Float et Double sont des objets. Et il ne s’exécute pas du tout à la même vitesse.

                            Et oui il est mieux de créer plusieurs discussions de tel sorte que une discussion = un problème.
                            Pour une simple raison, actuellement ta discussion s’appelle “Les petits problèmes à Jodge”. Si quelqu’un a le même problème, jamais il ne viendra voir cette discussion. Et sur google il a aucune chance que cette discussion soit trouvé en tapant “fonction pour obtenir les enchantements d’un item”.
                            À l’inverse avec un titre clair et une discussion par problème on peut trouver beaucoup mieux sur google / avec une recherche sur le fofo.

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

                              Ha ouai, je connaissais pas ^^ Merci pour l’astuce ^^

                              Pour Float ou float, je connais pas la différence de temps d’exécution, donc je te fait confiance ^^

                              Pour la discussion, okay, je clos, le sujet et j’en réouvrirai d’autre ^^

                              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