MFF

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

    Mise à jour de mon mod vers la 1.12.2

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

      Bonjour,
      je souhaite migrer un mod que j’ai codé il y a 6 mois en 1.7.10 en un mod en 1.12.2 car les libraires maven ont changé et rendu cette version inutilisable. J’ai donc téléchargé la dernière version de la 1.12.2 de forge (le mdk) et fait l’installation. Mais en l’ouvrant dans eclipse, des centaines d’erreurs apparaissent (je m’y attendait un peu car les méthodes ont changées) mais comment pourrais-je mettre à jour mon mod car même en cherchant d’anciens topic sur le site, je n’ai pas trouvé grand chose pour savoir quelle méthode changer en quelle méthode.

      Merci d’avance de votre aide.

      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

        Bonjour,
        Peux-tu envoyer un échantillon des erreurs que tu as ?

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

          Par exemple tous les items que j’ai créés mettent une erreur sur setTextureName.

          Ici j’ai une erreur dans ma classe principale sur la fonction public Item get TabByIcon() (Il n’aime pas que j’ai marqué Item il voudrait marquer ItemStack )

          @SideOnly(Side.CLIENT)
          public Item getTabIconItem() {
          	return Item.getItemFromBlock(BlockMod.elonium_block);
          }
          

          Ensuite j’ai crée des entitées et elles sont elles aussi avec une erreur sur le registerModEntity :

          EntityRegistry.registerModEntity(EntityDynamite.class, "EntityDynamite", 420, Main.instance, 32, 20, false);
          

          J’ai aussi un guiHandler et ya une erreur que je n’arrive pas a corriger :

          TileEntity tile = world.getTileEntity(x, y, z);
          

          Il ne reconnait pas la fonction getTileEntity.

          Bref que des erreurs de ce genre et je ne vois pas comment les résoudre.

          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

            Pour les textures -> il faut créer le fichier json, retires complètement la fonction setTextureName

            Pour la table créatif :

            @SideOnly(Side.CLIENT)
            public ItemStack getTabIconItem() {
            	return new ItemStack(BlockMod.elonium_block);
            }
            

            Pour les entités, tu peux détailler l’erreur ?

            Pour tout ce qui utilisait x, y, z il faut des blocspos :

            TileEntity tile = world.getTileEntity(new BlockPos(x, y, z)); 
            
            1 réponse Dernière réponse Répondre Citer 0
            • F Hors-ligne
              FullLager
              dernière édition par FullLager

              @robin4002 a dit dans Mise à jour de mon mod vers la 1.12.2 :

              new BlockPos(x, y, z)

              Merci

              Pour les entités, dans la classe pricipake il me souligne le “registerModEntity” et il ecrit que l’erreur c’est ca : “The method registerModEntity(ResourceLocation, Class<? extends Entity>, String, int, Object, int, int, boolean) in the type EntityRegistry is not applicable for the arguments (Class<EntityBomb>, String, int, Main, int, int, boolean)”

              Je suis en train de remplacer quelques méthodes et je cherche le getBlockMetadata, je n’arrive pas à trouver cette méthode, comme ici :

              if(event.blockMetadata == 7) {
              

              Et je cherche aussi comment envoyer un message à un joueur car ceci ne fonctionne pas :

              e.getPlayer().addChatMessage(new ChatComponentText("Tu n'as pas le niveau necessaire !"));
              

              J’ai encore d’autre erreurs mais je vais tenter de les corriger avant de demander de l’aide si j’ai un problème. Merci d’avance.

              P.S : Je n’ai pas bien compris pour les textures des items et des blocs.

              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

                Pour les textures de bloc : https://www.minecraftforgefrance.fr/topic/4102/créer-un-bloc-basique

                Pour registerModEntity il faut mettre en premier le nom, mais avec une location de ressource : EntityRegistry.registerModEntity(new ResourceLocation("modid", "EntityDynamite"), EntityDynamite.class, 420, Main.instance, 32, 20, false);

                Les metadata n’existe plus, ce sont des blocs state maintenant : https://www.minecraftforgefrance.fr/topic/4731/utiliser-les-blockstates
                Pour l’envoie de message : player.sendMessage(new TextComponentString("le texte"));

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

                  @robin4002 a dit dans Mise à jour de mon mod vers la 1.12.2 :

                  EntityRegistry.registerModEntity(new ResourceLocation(“modid”, “EntityDynamite”), EntityDynamite.class, 420, Main.instance, 32, 20, false);

                  Merci pour tout ça.
                  Pour les entités j’ai toujours la même erreur je ne comprend pas.

                  Je cherche aussi comment récupérer le nombre d’item que le joueur a quand il le récupère dans un four. En 1.7.10 c’était ça :

                  e.smelting.stackSize
                  

                  Mais je ne trouve pas d’équivalent en 1.12.2 à part le getCount() mais je ne suis pas sûr que ce soit ça.

                  J’avais aussi des GUIs et j’écrivais des texte mais dans la fonction drawString quelque chose a changé, il s’agit de fontRenderObject et je ne vois pas par quoi il faut remplacer cet argument :

                  drawString(fontRendererObj, "Niveau : ", guiLeft + 174, guiTop + 80, Color.CYAN.getRGB());
                  

                  Et aussi, j’utilisais des effets de potiosn pour des sticks mais il y a une erreur quand je cherche à récupérer l’id de la potion :

                  player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 240 , 1));
                  

                  C’est la partie “moveSpeed” qui est soulignée.
                  Erreur : moveSpeed cannot be resolved or is not a field

                  Merci

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

                    Problème réglé pour les effets de potion. Mais je ne sait toujours pas pour le reste. Quelqu’un a une idée ?

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

                      Salut,
                      ce qui marche bien en général pour trouver un équivalent du code qui foire, c’est de regarder à un endroit où il était utilisé, dans l’ancienne version, puis de regarder à ce même endroit (ou + ou - “à côté”) dans ta nouvelle version.

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

                        D’accord merci.

                        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