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

    Problème erreur de la part de register(block)

    Sans suite
    1.12.x
    5
    14
    2254
    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
      Fury dernière édition par

      Bonjour je me suis mis sur la nouvelle version de minecraft forge 1.12 et j’ai une erreur étrange aux niveaux de gamerestry.register(block)

      import net.minecraft.block.Block;
      import net.minecraft.block.material.Material;
      import net.minecraft.client.renderer.block.model.ModelResourceLocation;
      import net.minecraft.creativetab.CreativeTabs;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemBlock;
      import net.minecraftforge.client.model.ModelLoader;
      import net.minecraftforge.fml.common.FMLCommonHandler;
      import net.minecraftforge.fml.common.registry.GameRegistry;
      
      public class ModBlocks {
      public ModBlocks(){
      init();
      registerBlocks();
      registerItemBlocks();
      if(FMLCommonHandler.instance().getSide().isClient())
      registerRenders();
      }
      public static Block orangeneon;
      private void init(){
      orangeneon = new Block(Material.IRON).setRegistryName("orangeneon").setUnlocalizedName("orangeneon").setHardness(2.0f).setResistance(1.5f).setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
      }
      private void registerBlocks(){
      registerBlock(orangeneon);
      }
      private void registerRenders(){
      registerRender(orangeneon,0);
      }
      
      private void registerItemBlocks(){
      registerItemBlock(orangeneon);
      }
      /*******************************/
      private void registerBlock(Block block){
      GameRegistry.register(block);
      
      }
      private void registerRender(Block block, int meta){
      Item item = Item.getItemFromBlock(block);
      ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(item.getRegistryName(),"inventory"));
      
      }
      private void registerItemBlock(Block block){
      ItemBlock ib = new ItemBlock(block);
      ib.setRegistryName(block.getRegistryName());
      GameRegistry.register(ib); il me dis comme ceci:the methode register(K)frome type GamesRegistry is not visible
      
      }
      }
      

      voila merci

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

        Salut,

        private void registerBlock(Block block){
        GameRegistry.register(block);
        
        }
        

        Ca devrait être

        private static void registerBlock(Block block){
        GameRegistry.register(orangeneon);
        
        }
        

        Oui ce gif est drôle.

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

          Euh…non c’est très bien comme c’est, car si il ajoute des blocks par la suite il faut laisser ça.

          Par contre en 1.11 je sais que GameRegistry.register(…) est dépréciée et elle est documentée comme allant être retirée.
          Il faut maintenant faire comme indiqué dans ce tutoriel https://www.minecraftforgefrance.fr/showthread.php?tid=4374 pour enregistrer des blocs.

          Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

          AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

          Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
          Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

            Oups my bad, effectivement j’ai oublié que j’ai pas fait par rapport au tuto ^^

            Oui ce gif est drôle.

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

              je doit le remplacer par quoi le GameRegister.register pour les block car les object et item fonctionne tres bien sauf pour les block.

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

                En 1.12 et plus, c’est “mieux” d’utiliser les events pour faire tout ça. Un exemple de classe pour register tes blocks :

                
                public static BlockTest BLOCK_TEST = new BlockTest();
                public static BlockTest2 BLOCK_TEST2 = new BlockTest2();
                public static BlockTest3 BLOCK_TEST3 = new BlockTest3();
                public static BlockTest4 BLOCK_TEST4 = new BlockTest4();
                
                    @Mod.EventBusSubscriber
                    public static class RegistrationHandler {
                
                        @SubscribeEvent
                        public static void registerBlocks(final RegistryEvent.Register <block>event) {
                
                            final IForgeRegistry <block>registry = event.getRegistry();
                
                            final Block[] blocks = {
                                    BLOCK_TEST,
                                    BLOCK_TEST2,
                                    BLOCK_TEST3,
                                    BLOCK_TEST4,
                            };
                
                            registry.registerAll(blocks);
                        }
                
                        public static final Set <itemblock>ITEM_BLOCKS = new HashSet<>();
                
                        @SubscribeEvent
                        public static void registerItemBlocks(final RegistryEvent.Register event) {
                
                            final ItemBlock[] items = {
                                    new ItemBlock(BLOCK_TEST),
                                    new ItemBlock(BLOCK_TEST2),
                                    new ItemBlock(BLOCK_TEST3),
                                    new ItemBlock(BLOCK_TEST4),
                            };
                
                            final IForgeRegistry registry = event.getRegistry();
                
                            for (final ItemBlock item : items) {
                                final Block block = item.getBlock();
                                final ResourceLocation registryName = Preconditions.checkNotNull(block.getRegistryName(), "Block %s has null registry name", block);
                                registry.register(item.setRegistryName(registryName));
                                ITEM_BLOCKS.add(item);
                            }
                        }
                    }
                
                

                Je te laisse deviner pour les modèles 🙂


                PS: Je rajouterai juste que tu peux utiliser ce site génial : http://tabstospaces.com/ pour que ton code soit espacé même dans le forum (ça convertit tous tes \t (tabulations) en espaces 🙂 )</itemblock></block></block>

                Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                  Surtout que la 1.12 n’est pas encore réellement sortie et que LexManos ré-écrit le système de registre. Dans le nouveau système GameRegistry#register est privé donc vous ne pourrez plus l’utiliser 😄

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

                    je vais laisser tomber la 1.12 pour le moment et attendre que quel q’un fasse une video tuto.

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

                      @‘BrokenSwing’:

                      Surtout que la 1.12 n’est pas encore réellement sortie et que LexManos ré-écrit le système de registre. Dans le nouveau système GameRegistry#register est privé donc vous ne pourrez plus l’utiliser 😄

                      J’ai tout qui tourne sous 1.12, et je trouve que tout est plus simple au contraire 😛

                      Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                        Je n’ai pas dit qu’on ne pouvait pas encore utiliser la 1.12 mais il n’y a pas encore de release stable (voir ici http://files.minecraftforge.net/maven/net/minecraftforge/forge/index_1.12.html). Et de plus je n’ai pas non plus dit que c’était compliqué, je suis au contraire très content qu’ils aient enlever le GameRegister#register, j’indiquait seulement que dans les builds actuels GaemeRegistry#register est encore disponible mais que dès lors qu’une version stable de 1.12 sera dispo, il n’y sera plus.

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

                          @‘BrokenSwing’:

                          Je n’ai pas dit qu’on ne pouvait pas encore utiliser la 1.12 mais il n’y a pas encore de release stable (voir ici http://files.minecraftforge.net/maven/net/minecraftforge/forge/index_1.12.html). Et de plus je n’ai pas non plus dit que c’était compliqué, je suis au contraire très content qu’ils aient enlever le GameRegister#register, j’indiquait seulement que dans les builds actuels GaemeRegistry#register est encore disponible mais que dès lors qu’une version stable de 1.12 sera dispo, il n’y sera plus.

                          C’est pour ça que dans la réponse que j’ai posté je n’utilise nulle part GameRegister#register.

                          Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                            oui j’ai vue ça il faut pratiquement faire c’est block par tileEntitie et pareille pour les items pour L’instant cette version de forge minecraft n’est pas trop conseiller pour les débutant et personne qui ne sait pas coder a 75% sur java.
                            Sais assie l’ancien mainteneur de buildcraft qui ma la dit direct sur sont live.merci pour le tuyau Dylem.

                            pour L’instant je vais rester sur la 1.10.2.

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

                              Tu peux parfaitement commencer par la version 1.12, une release est sortie mercredi dernier. Débutant ou pas, rien ne t’empêche de modder en 1.12

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

                                oui un seul sais que je suis habituer avec gameregistry.register() mais ca changer je sais pas par quoi exactement il a pas de exemples et en plus les sever en 1.12 ca lag comme pas possible.

                                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