MFF

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

    La classe principale et les proxys

    Planifier Épinglé Verrouillé Déplacé Les bases
    1.6.x
    23 Messages 8 Publieurs 21.4k 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.
    • C Hors-ligne
      Ceratmike
      dernière édition par

      Bonjour

      D’abord merci pour ces tutos (en français ! 🙂 )

      je débute en java et en modding donc ne soyez pas étonné de la simplicité de mes questions :))

      Dans la classe pincipale du tuto “ModTutoriel” sous @EventHandler les 3 méthodes suivantes sont utilisées :PreInit() Init() PostInit() ; tu parle de load à un moment : “Dans ma méthode load, j’ai mis proxy.registerRender…” .
      Après recherche (Forge) j’ai vu 3 autres méthodes qui apparemment font la même chose , soit dans l’ordre : preInit() load() postInit() , (j’ai testé les 2 ensembles de méthodes dans le même code pas de différence apparemment).

      Qu’elle est la différence donc entre ces 2 ensembles MAJ d’anciennes méthodes? En gros lesquelles doit ont utiliser ?

      1 réponse Dernière réponse Répondre Citer 0
      • kevin_68K Hors-ligne
        kevin_68 Moddeurs confirmés
        dernière édition par

        Le nom de la méthode ne change rien, il faut juste que tu es l’event en argument et le @EventHandler au dessus.


        Mettez à jours vers la dernière version stable (1.8.9 voir même…

        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

          J’ai modifier en “Dans ma méthode Init, j’ai mis proxy.registerRender…”, c’est plus compréhensible comme ça. (j’avais reprit de l’ancien tutoriel)

          Comme kevin_68 l’a dit, le nom de la méthode ne change absolument rien, c’est l’annotation @EventHandler et l’argument FML(Post/Pre)InitializationEvent qui fait que la méthode va être chargé par FML. Tu peux mettre :
          [code_java]@EventHandler
          nimporteQuelNomDeMethode(FMLInitializationEvent event)
          {

          }[/code_java]
          Ça reviendra au même.

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

            Merci beaucoup pour cette réponse rapide et précise.

            Obnubilé par le " @EventHandler " je n’avais pas capté que c’était nous qui créions ces méthodes; ces annotations " @quelquechose " ne me sont pas encore
            vraiment compréhensibles.
            Je sais que se sont des tags javadoc ,mais je pensais que cela ne concernait que le domaine des commentaires ,de la documentation du programme.
            Apparemment cela va plus loin ; si l’on omet le " @EventHandler " àMarchePu ! Donc cela a une action sur : l’exécution du programme, la compilation du code ?
            Je sais que cela relève de la connaissance de la programmation java , mais si vous aviez un début de réponse ou une piste à suivre pour cette utilisation spécifique de la javadoc ,je suis preneur ; les @quelquechose sont très utilisés dans le code minecraft.

            J’ai vu dans ‘cpw.mods.fml.common.Mod’ cette annotation :

            • // Mark this method for receiving an {@link FMLEvent} (in this case, it’s the {@link FMLPreInitializationEvent})
            • {@literal @}EventHandler public void preInit(FMLPreInitializationEvent event){}
              J’en déduit(par recoupement) que ça crée un lien avec les ’ FMLEvent’ qu’on l’utilise comme ça : @EventHandler
              public void preInit(FMLPreInitializationEvent event){}
              Mais au niveau java j’aimerai trouver de la doc sur la syntaxe et le mécanisme de ce genre d’annotation; en faite je manque de mot clef pour faire une recherche sur internet . En gros comment s’appelle ce genre de technique en java ?

            Ceci juste au cas ou quelqu’un aurait quelques éléments de réponse .

            Et encore un grand merci pour les réponses à ma précédente question.

            1 réponse Dernière réponse Répondre Citer 0
            • kevin_68K Hors-ligne
              kevin_68 Moddeurs confirmés
              dernière édition par

              Tout ce que je peux te dire c’est qu’un @quelquehose est une annotation (ou @interface) et que l’annotation @EventHandler est elle-même sous deux autres annotations qui sont: @Retention(RetentionPolicy.RUNTIME) et @Target(ElementType.METHOD). Pour comprendre à quoi elles servent regarde ça:
              http://adiguba.developpez.com/tutoriels/java/tiger/annotations/


              Mettez à jours vers la dernière version stable (1.8.9 voir même…

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

                Merci kevin_68 pour ta réponse super rapide j’ai de quoi m’occuper un moment 🙂

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

                  Pourquoi dans:
                  @Mod(modid = “ModTutoriel”, name = “Mod Tutoriel”, version = “1.0.0”, acceptedMinecraftVersions = “[1.6.1,)”)
                  acceptedMinecraftVersions est inférieur ou égal à 1.6.1 alors que le tuto est en 1.6.2?

                  Sa ne devrait pas être:
                  @Mod(modid = “ModTutoriel”, name = “Mod Tutoriel”, version = “1.0.0”, acceptedMinecraftVersions = “[1.6.2,)”)

                  ou encore:
                  @Mod(modid = “ModTutoriel”, name = “Mod Tutoriel”, version = “1.0.0”, acceptedMinecraftVersions = “[1.6.1]”)
                  vu que dans forge 1.6.2 on a remplacé - @Init, @PreInit, @PostInit par @EventHandler
                  les vieilles versions de forge (1.6.1 ou 1.5.2…) ne sont donc pas logiquement capable de comprendre un mod fait pour la 1.6.2!

                  1 réponse Dernière réponse Répondre Citer 0
                  • kevin_68K Hors-ligne
                    kevin_68 Moddeurs confirmés
                    dernière édition par

                    Le tuto a été rédigé en 1.6.1 la première fois et robin a oublié de changer ça.


                    Mettez à jours vers la dernière version stable (1.8.9 voir même…

                    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

                      [1.6.1,) = 1.6.1 et supérieurs pas inférieurs, relis la doc sur “maven version range”

                      Et oui, je pense que je vais remplacer par 1.6.2, car un mod 1.6.2 n’est pas compatible 1.6.1 si tu utilise la classe ResourceLocation (due à changement de package)

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

                        Bonjour j’ai un petit problème assez conséquent le problème est que je n’est pas le package cpw.mods.fml.common.Mod pourtant l’installation était un succès.

                        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 te manque juste ce package ou tout les packages en cpw.mods.fml ?
                          Vérifie aussi que tu as bien les packages en net.minecraftforge

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

                            Il ne me manque que celui la il me semble.

                            :::

                            cpw.mods.fml.client
                            cpw.mods.fml.client.modloader
                            cpw.mods.fml.client.registry
                            cpw.mods.fml.common
                            cpw.mods.fml.common.asm
                            cpw.mods.fml.common.asm.transformers
                            cpw.mods.fml.common.asm.transformers.deobf
                            cpw.mods.fml.common.discovery
                            cpw.mods.fml.common.discovery.asm
                            cpw.mods.fml.common.event
                            cpw.mods.fml.common.functions
                            cpw.mods.fml.common.launcher
                            cpw.mods.fml.common.modloader
                            cpw.mods.fml.common.network
                            cpw.mods.fml.common.patcher
                            cpw.mods.fml.common.registry
                            cpw.mods.fml.common.toposort
                            cpw.mods.fml.common.versioning
                            cpw.mods.fml.relauncher
                            cpw.mods.fml.repackage.com.nothome.delta
                            cpw.mods.fml.server
                            ibxm
                            net.minecraft.block
                            net.minecraft.block.material
                            net.minecraft.client
                            net.minecraft.client.audio
                            net.minecraft.client.entity
                            net.minecraft.client.gui
                            net.minecraft.client.gui.achievement
                            net.minecraft.client.gui.inventory
                            net.minecraft.client.gui.mco
                            net.minecraft.client.main
                            net.minecraft.client.mco
                            net.minecraft.client.model
                            net.minecraft.client.multiplayer
                            net.minecraft.client.particle
                            net.minecraft.client.renderer
                            net.minecraft.client.renderer.culling
                            net.minecraft.client.renderer.entity
                            net.minecraft.client.renderer.texture
                            net.minecraft.client.renderer.tileentity
                            net.minecraft.client.resources
                            net.minecraft.client.resources.data
                            net.minecraft.client.settings
                            net.minecraft.client.stats
                            net.minecraft.command
                            net.minecraft.crash
                            net.minecraft.creativetab
                            net.minecraft.dispenser
                            net.minecraft.enchantment
                            net.minecraft.entity
                            net.minecraft.entity.ai
                            net.minecraft.entity.ai.attributes
                            net.minecraft.entity.boss
                            net.minecraft.entity.effect
                            net.minecraft.entity.item
                            net.minecraft.entity.monster
                            net.minecraft.entity.passive
                            net.minecraft.entity.player
                            net.minecraft.entity.projectile
                            net.minecraft.inventory
                            net.minecraft.item
                            net.minecraft.item.crafting
                            net.minecraft.logging
                            net.minecraft.nbt
                            net.minecraft.network
                            net.minecraft.network.packet
                            net.minecraft.network.rcon
                            net.minecraft.pathfinding
                            net.minecraft.potion
                            net.minecraft.profiler
                            net.minecraft.scoreboard
                            net.minecraft.server
                            net.minecraft.server.dedicated
                            net.minecraft.server.gui
                            net.minecraft.server.integrated
                            net.minecraft.server.management
                            net.minecraft.src
                            net.minecraft.stats
                            net.minecraft.tileentity
                            net.minecraft.util
                            net.minecraft.village
                            net.minecraft.world
                            net.minecraft.world.biome
                            net.minecraft.world.chunk
                            net.minecraft.world.chunk.storage
                            net.minecraft.world.demo
                            net.minecraft.world.gen
                            net.minecraft.world.gen.feature
                            net.minecraft.world.gen.layer
                            net.minecraft.world.gen.structure
                            net.minecraft.world.storage
                            net.minecraftforge.classloading
                            net.minecraftforge.client
                            net.minecraftforge.client.event
                            net.minecraftforge.client.event.sound
                            net.minecraftforge.client.model
                            net.minecraftforge.client.model.obj
                            net.minecraftforge.client.model.techne
                            net.minecraftforge.common
                            net.minecraftforge.common.network
                            net.minecraftforge.common.network.packet
                            net.minecraftforge.event
                            net.minecraftforge.event.brewing
                            net.minecraftforge.event.entity
                            net.minecraftforge.event.entity.item
                            net.minecraftforge.event.entity.living
                            net.minecraftforge.event.entity.minecart
                            net.minecraftforge.event.entity.player
                            net.minecraftforge.event.terraingen
                            net.minecraftforge.event.world
                            net.minecraftforge.fluids
                            net.minecraftforge.liquids
                            net.minecraftforge.oredict
                            net.minecraftforge.transformers
                            paulscode.sound.codecs

                            :::

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

                              un Spoiler aurai étai bien … 😞


                              Merci 😉

                              Auteur originale de Sevenno's Addons et de [url=http://www.minecraftfor…

                              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

                                Étrange, supprime le dossier forge/mcp et relance l’installation de forge.
                                Si le problème persiste, envoie-moi le fichier forge\mcp\logs\mcp.log

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

                                  Je t’ai envoyer un mp

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

                                    J’ai exactement le même problème que blackswan 😕 Si le problème a était trouver entre temps merci de m’en faire part ^^

                                    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

                                      Prend la dernière version de forge, et réinstalle ton JDK ainsi que ton JRE

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

                                        A vrai dire c’est exactement ce que je viens de faire, car je commence dans le modding ^^’ (Je vais quand même le faire au cas ou :P)

                                        –—
                                        Je vien de le refaire et toujours pas de cpw.mods.fml.common.Mod 😞 Est-ce que le ‘‘Mod’’ en question serais dans cpw.mods.fml.common MAIS en l’ouvrant ? 😕

                                        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

                                          Normalement non, envoie un screenshot du project explorer pour être sûr.
                                          (Voir plus bas pour la solution).

                                          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

                                            Heu attend, j’ai parlé trop vite ><
                                            En fait, c’est ça qui nous induit en erreur :
                                            import cpw.mods.fml.common.Mod.EventHandler;
                                            En fait Mod n’est pas un package, mais une classe, et EventHandler est une interface dans cette classe. Donc il n’y pas de package cpw.mods.fml.common.Mod, je sais même pas pourquoi je l’ai pas vu plutôt o_O
                                            (Surtout que la convention java impose de mettre une majuscule au nom des classes, et une minuscule au nom de package). Bref, pour pas changer je loupe un petit détail à la con.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB