MFF

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

    Mon mob ne spawn pas dans le biome que je veut. (1.12.2)

    Planifier Épinglé Verrouillé Déplacé Non résolu Support pour les moddeurs
    1.12.2
    23 Messages 3 Publieurs 1.7k 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Ce n’est pas du tout comme cela que ça fonctionne.
      à l’endroit ou tu enregistres ton entity, tu as normalement un objet EntityEntryBuilder c’est dans ce dernier qu’il faut utiliser la fonction .spawn pour indiquer les biomes.

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

        Je n’y suis pas arriver. Je crois avois fait ce que fous m’aver dis mais je suis pas sur (les mob c’est pa mon point fort 😕 ) Masi je cois avoir quand meme bien importer la fonction .spawn

        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

          Envoies ton code où tu enregistre ton entité.

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

            je pence que ce n’est toujours pa sa mais bon: voici le code:

            {
            @SubscribeEvent
            public static void LivingSpawnEvent(Spawn e) 
            {
            	Spawn EntityScopion,BiomePlains;
            }
            

            }
            et dans les import il y a bien sa
            import net.minecraftforge.fml.common.registry.EntityEntryBuilder.Spawn

            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

              Bon je répète ma question présente, à quel endroit tu as enregistré ton entité ?

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

                Ce message a été supprimé !
                1 réponse Dernière réponse Répondre Citer 0
                • B Hors-ligne
                  billyfury31
                  dernière édition par billyfury31

                  public class EntityInit 
                  {
                  	public static void registerEntities() 
                  	{
                  		registerEntity("scorpion", EntityScorpion.class, 111, 30, 16757283, 13391906);
                  	}
                  	
                  	private static void registerEntity(String name, Class<? extends Entity> entity, int id, int range, int color1, int color2)
                  	{
                  		EntityRegistry.registerModEntity(new ResourceLocation(Reference.MODID + ":" + name), entity, name, id, Main.instance, range, 1, true, color1, color2);
                  	}
                  

                  Voila ou j’ais enregistrer mon Entiter

                  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 robin4002

                    Il faut utiliser la fonction
                    EntityRegistry.addSpawn(EntityScopion.class, <weight>, <min>, <max>, EnumCreatureType.MONSTER, <liste des biomes>);

                    Ou sinon, enregistrer l’entité avec les événements de registre, pour la fonction .spawn :

                        @SubscribeEvent
                        public static void registerEntities(RegistryEvent.Register<EntityEntry> e) {
                            Collection<Biome> allBiome = ForgeRegistries.BIOMES.getValuesCollection();
                            EntityEntry entry = EntityEntryBuilder.create()
                                .entity(EntityScorpion.class)
                                .id(new ResourceLocation(Reference.MODID + ":" + "scorpion"), 111)
                                .name("scorpion")
                                .egg(16757283, 13391906)
                                .tracker(30, 1, true)
                                .spawn(EnumCreatureType.MONSTER, 100, 2, 5, allBiome)
                                .build();
                            e.getRegistry().register(entry);
                        }
                    

                    Et si tu passes par cette méthode, plus besoin du EntityRegistry.registerModEntity

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

                      j’ais fait quelque adaptation au code mais sa ne marche toujours pas.
                      Avec votre méthode sa fessais crash mon jeu et je ne pouvais meme pas faire spawn l’entier . Mais avec mes adaptation sa ne marche toujours pas non plus.
                      pouvais vois une fois de plus m’aider. voila les adaptation (je me suis base sur votre méthode):

                      {
                      
                      	public static void registerEntities()
                          {
                             registerEntity("scorpion", EntityScorpion.class, 111, 50, 16765255, 1672485); 
                             
                             Collection<Biome> allBiome = ForgeRegistries.BIOMES.getValuesCollection();
                          		   
                             EntityRegistry.addSpawn(EntityScorpion.class, 100, 2, 5, EnumCreatureType.MONSTER, allBiome);
                          		   
                          }
                          private static void registerEntity(String name, Class<? extends Entity> entity, int id, int range, int color1, int color2)
                          {
                              EntityRegistry.registerModEntity(new ResourceLocation(Reference.MODID + ":" + name), entity, name, id, Main.instance, range, 1, true, color1, color2);
                          }
                      }
                      
                      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 robin4002

                        Le problème là c’est qu’il ne spawn toujours pas ?

                        Tu avais quoi comme rapport de crash avec mon code ?

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

                          voila le rapport de crash avec votre méthode crash-2021-07-31_11.37.25-client.txt

                          d’apprêt les log sa dis qu’il y a un problème avec ma classe RegisterEntities et RegistryHandler . Mais j’était persuader que sa ne venez pas de la, j’ais donc supprimer le code que vous m’aver donner et me suis inspirer de lui.
                          Mais sa ne marche toujours pas.
                          Si vous voulez on pourrais voc. Je suis sur que le problème et très con sa ne prendra que 5 min a résoudre.
                          (Voilà mon discord si vous voulez voc svp: luigi31#0615)

                          Problème détailler :
                          apparemment dans preinit le mob ne voulais pas se preinitialiser il y avait une erreur en permanence. J’avait également supprimer pour voir l’erreur dans preinit mais comme je m’en doutais le mob ne spawner pas et l’œuf n’etait meme plus la(si vous pouvez voc demain a environ 14h00 je vois montrerez).

                          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

                            Je ne suis pas dispo pour du vocal demain, désolé.
                            Il y avait quoi à la ligne 30 de EntityInit.java quand tu avais essayé mon code ?

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

                              y avait rien. pourquoi? ton code ne va pas jusqu’à la ligne 30

                              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

                                Le rapport de crash mentionne la ligne 30 de EntityInit.java comme étant à l’origine du crash, il avait forcement une ligne 30 …

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

                                  Non c’est impossible a mon avis l’erreur ne se situ pas la
                                  car mon ancient code était :

                                  package com.draco.test.init;
                                  
                                  import com.draco.test.Main;
                                  import com.draco.test.objects.entity.EntityScorpion;
                                  import com.draco.test.util.Reference;
                                  
                                  import net.minecraft.entity.Entity;
                                  import net.minecraft.util.ResourceLocation;
                                  import net.minecraftforge.fml.common.registry.EntityRegistry;
                                  
                                  public class EntityInit
                                  {
                                      public static void registerEntities()
                                      {
                                         registerEntity("scorpion", EntityScorpion.class, 111, 50, 16765255, 1672485); 
                                      }
                                      
                                      private static void registerEntity(String name, Class<? extends Entity> entity, int id, int range, int color1, int color2)
                                      {
                                          EntityRegistry.registerModEntity(new ResourceLocation(Reference.MODID + ":" + name), entity, name, id, Main.instance, range, 1, true, color1, color2);
                                      }
                                  }
                                  

                                  Et comme vous pouvez le voir il n’y a pas de ligne 30.
                                  Et c’est pareil pour l’autre code(le votre):

                                      @SubscribeEvent
                                      public static void registerEntities(RegistryEvent.Register<EntityEntry> e) {
                                          Collection<Biome> allBiome = ForgeRegistries.BIOMES.getValuesCollection();
                                          EntityEntry entry = EntityEntryBuilder.create()
                                              .entity(EntityScorpion.class)
                                              .id(new ResourceLocation(Reference.MODID + ":" + "scorpion"), 111)
                                              .name("scorpion")
                                              .egg(16757283, 13391906)
                                              .tracker(30, 1, true)
                                              .spawn(EnumCreatureType.MONSTER, 100, 2, 5, allBiome)
                                              .build();
                                          e.getRegistry().register(entry);
                                      }
                                  

                                  il n’y a pas non plus de ligne 30

                                  isadorI 1 réponse Dernière réponse Répondre Citer 0
                                  • isadorI Hors-ligne
                                    isador Moddeurs confirmés Modérateurs @billyfury31
                                    dernière édition par

                                    @billyfury31 Bonjour,

                                    Peux-tu envoyer l’intégralité du fichier EntityInit.java?

                                    Merci d’avance

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

                                      Ce message a été supprimé !
                                      1 réponse Dernière réponse Répondre Citer 0
                                      • B Hors-ligne
                                        billyfury31
                                        dernière édition par billyfury31

                                        la voila:

                                        package com.draco.test.init;
                                        
                                        import java.util.Collection;
                                        
                                        import com.draco.test.objects.entity.EntityScorpion;
                                        import com.draco.test.util.Main;
                                        import com.draco.test.util.Reference;
                                        
                                        import net.minecraft.entity.Entity;
                                        import net.minecraft.entity.EnumCreatureType;
                                        import net.minecraft.util.ResourceLocation;
                                        import net.minecraft.world.biome.Biome;
                                        import net.minecraftforge.fml.common.registry.EntityRegistry;
                                        import net.minecraftforge.fml.common.registry.ForgeRegistries;
                                        
                                        public class EntityInit 
                                        {
                                        
                                        	public static void registerEntities()
                                            {
                                               registerEntity("scorpion", EntityScorpion.class, 111, 50, 16765255, 1672485); 
                                               
                                               Collection<Biome> allBiome = ForgeRegistries.BIOMES.getValuesCollection();
                                            		   
                                               EntityRegistry.addSpawn(EntityScorpion.class, 100, 2, 5, EnumCreatureType.MONSTER, allBiome);
                                            		   
                                            }
                                            private static void registerEntity(String name, Class<? extends Entity> entity, int id, int range, int color1, int color2)
                                            {
                                                EntityRegistry.registerModEntity(new ResourceLocation(Reference.MODID + ":" + name), entity, name, id, Main.instance, range, 1, true, color1, color2);
                                            }
                                        }
                                        

                                        Et entre deux je me suis aperçu qu’il avait bien un ligne 30, mais l’erreur ne se situe pas la. dans les log il y a aussi une erreur sur l ligne 64 de RegistryHandler : voilla cette ligne:

                                        EntityInit.registerEntities();
                                        
                                        1 réponse Dernière réponse Répondre Citer 0
                                        • B Hors-ligne
                                          billyfury31
                                          dernière édition par

                                          Le problèmes n’est toujours pas résolu malheureusement

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

                                          MINECRAFT FORGE FRANCE © 2024

                                          Powered by NodeBB