• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Charger une classe au démarrage

    1.7.x
    1.7.10
    3
    14
    1297
    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.
    • P
      PotTime dernière édition par

      Bonjour tout le monde,

      J’ai créer une classe et j’aimerai quelle se charge au démarrage, il n’y a que le constructeur et je ne souhaite pas en créer d’autre.

      J’ai éssayer de rajouter la classe dans public void Init mais ça ne marche pas.

      Amicalement

      PotTime

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

        Salut,
        on ne **rajoute **pas une classe dans une méthode, on **instancie **une classe dans une méthode.
        Qu’est-ce qui ne marche pas ? Du code pourrait nous être utile.

        Au passage, je pense que tu t’es trompé de rubrique.

        1 réponse Dernière réponse Répondre Citer 0
        • P
          PotTime dernière édition par

          En gros, le code que je veux ajouter c’est :

          
          import java.util.Random;
          
          import net.minecraft.client.Minecraft;
          import net.minecraft.client.renderer.EntityRenderer;
          import net.minecraft.client.resources.IResourceManager;
          
          public class ServerProxy extends EntityRenderer {
          
          private Minecraft m;
          private double d;
          private long l;
          private Random r;
          
          public ServerProxy(Minecraft p_i45076_1_, final IResourceManager p_i45076_2_) {
          super(p_i45076_1_, p_i45076_2_);
          this.d = 3.7;
          this.l = 0L;
          this.r = new Random();
          this.m = p_i45076_1_;
          }
          
          }
          
          

          et j’aimerai le rajouter à ma classe principal qui charge mon mode plus précisément dans le init

          
          import cpw.mods.fml.common.Mod;
          import cpw.mods.fml.common.Mod.EventHandler;
          import cpw.mods.fml.common.Mod.Instance;
          import cpw.mods.fml.common.SidedProxy;
          import cpw.mods.fml.common.event.FMLInitializationEvent;
          import cpw.mods.fml.common.event.FMLPostInitializationEvent;
          import cpw.mods.fml.common.event.FMLPreInitializationEvent;
          import fr.pottime.proxy.CommonProxy;
          
          @Mod(modid = Reference.MODID, name = Reference.Name, version = Reference.Version)
          public class Pottime {
          
          @Instance(Reference.MODID)
          public static Pottime instance;
          
          @SidedProxy(clientSide = Reference.ClientProxy, serverSide = Reference.ServerProxy)
          public static CommonProxy proxy;
          
          @EventHandler
          public void preInit(FMLPreInitializationEvent event)
          {
          
          }
          
          @EventHandler
          public void Init(FMLInitializationEvent event)
          {
          
          proxy.registerRenders();
          /*
          * Je souhaite le rajouter ici !
          */
          
          }
          
          @EventHandler
          public void PostInit(FMLPostInitializationEvent event)
          {
          
          }
          }
          
          
          1 réponse Dernière réponse Répondre Citer 0
          • Deleted
            Deleted dernière édition par

            Qu’essaies-tu de faire concrètement ?
            Car quand je voie un ServerProxy contenir des références vers des classes client, mon cerveau me dit que c’est tout bêtement impossible …

            1 réponse Dernière réponse Répondre Citer 0
            • P
              PotTime dernière édition par

              Ma classe ServerProxy modifie des choses dans Minecraft, j’ai dejà créer un gui pour le lancer manuellement mais je souhaiterai que ça le fasse automatiquement au démarrage.
              J’aimerai que ma classe s’éxécute au démarrage en gros…

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

                Passons le fait que tu auras sûrement des problèmes ClassNotFound lors de l’exécution du mod sur serveur, pour ta demande, je te conseille, en + d’apprendre définitivement les bases de la POO, d’instancier ta classe dans la méthode init, et avec ta variable ServerProxy, lancer les fonctions qui t’intéressent.

                1 réponse Dernière réponse Répondre Citer 0
                • P
                  PotTime dernière édition par

                  D’accord, tu peux me dire comment tu pourrai régler mon problème 🙂

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

                    @‘Plaigon’:

                    'instancier ta classe dans la méthode init, et avec ta variable ServerProxy, lancer les fonctions qui t’intéressent.

                    1 réponse Dernière réponse Répondre Citer 0
                    • P
                      PotTime dernière édition par

                      Tu peux me donner le code car je n’ai pas exactement tout compris,
                      instancier ta classe dans la méthode init, faut faire un

                      
                      @Instance(Reference.ServerProxy)
                      public static final ServerProxy ServerProxy;
                      
                      

                      au dessus de

                      
                      @EventHandler
                      public void Init(FMLInitializationEvent event)
                      {
                      proxy.registerRenders();
                      }
                      
                      

                      et après ?

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

                        Bon premièrement, tu ne devrais pas avoir de classe appelé ServerProxy. C’est soit ClientProxy, soit CommonProxy, pas ServerProxy.
                        Ensuite, tu réexpliqueras ce que tu souhaites faire car je n’ai toujours pas compris.

                        1 réponse Dernière réponse Répondre Citer 0
                        • robin4002
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                          Salut,
                          Pour répondre à ta question :

                          new ServerProxy(Minecraft.getMinecraft(), une instance de quelque chose implémentant IResourceManager, aucune idée de quoi);
                          

                          Voila comment tu peux instancier ta classe (ça fait partie de la base java)

                          Et si tu as besoin de faire quelque chose de ton instance :

                          ServerProxy nomVariable = new ServerProxy(Minecraft.getMinecraft(), une instance de quelque chose implémentant IResourceManager, aucune idée de quoi);
                          

                          ceci dit, je pense que tu ferai mieux d’expliquer ce que tu cherches à faire pour qu’on puisse t’aider de façon pertinente.

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

                            Robin, tu devrais changer ce topic de catégorie, je ne pense pas que ce soit la bonne.

                            1 réponse Dernière réponse Répondre Citer 0
                            • robin4002
                              robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                              En effet, je viens de voir.

                              1 réponse Dernière réponse Répondre Citer 0
                              • P
                                PotTime dernière édition par

                                Merci , ça marche !

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

                                MINECRAFT FORGE FRANCE © 2018

                                Powered by NodeBB