MFF

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

    Plusieurs questions/problèmes

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    95 Messages 9 Publieurs 15.5k 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.
    • BrokenSwingB Hors-ligne
      BrokenSwing Moddeurs confirmés Rédacteurs
      dernière édition par

      Je l’ai changé, dans mon premier message j’utilisai un consumer, si tu observes bien ici je le parcours avec une boucle for

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

        D’ailleurs il serait plus pratique d’avoir directement l’entité avec un for(Entity entity : world.loadedEntityList) plutôt que la get à chaque ligne.

        Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

        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
        • BrokenSwingB Hors-ligne
          BrokenSwing Moddeurs confirmés Rédacteurs
          dernière édition par

          Oui, faites comme vous voulez, ça va pas changer grand chose

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

            Niveau utilisation des ressources, ceci devrait être mieux :

            
            for(Entity entity : getWorld().loadedEntityList) 
            {
            if(entity  instanceof EntityWolf) 
            {
            EntityZombie zombie = new EntityZombie(entity.getEntityWorld());
            zombie.setPosition(entity.posX, entity.posY, entity.posZ);
            zombie.setAngles(entity.rotationYaw, entity.rotationPitch);
            zombie.motionX = entity.motionX;
            zombie.motionY = entity.motionY;
            zombie.motionZ = entity.motionZ;
            entity.setDead();
            getWorld().spawnEntityInWorld(zombie);
            
            }
            }
            
            

            Code non testé mais doit fonctionner.

            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
            • AxaurusA Hors-ligne
              Axaurus
              dernière édition par

              BrokenSwing : Désolé, en voyant le code et sa disposition j’avais cru que c’était le code que t’avais donné en 1ère page. Mais en le testant, j’ai des erreurs sur ce qui concerne la position, le mouvement et l’orientation (getPosition(), getEntityWorld(), rotationYaw, rotationPitch, et les 3 motion). De plus, je n’ai pas compris certaines parties du code.
              Mais j’ai préféré prendre le code d’AymericRed, je le comprend mieux (je préfère comprendre un code avant de l’utiliser). Mais merci quand même 😉

              Pour la boucle que tu m’a donné Aymeric (je peux t’appelé comme ca ?), sur la ligne ```java
              event.world.loadedEntityList

              
              Merci d'avance
              1 réponse Dernière réponse Répondre Citer 0
              • AymericRedA Hors-ligne
                AymericRed
                dernière édition par

                Mon code fait la même chose que celui de BrokenSwing mais j’ai préféré enlever le getPosition() car je n’étais pas sur de son existence…j’ai eu raison ^^
                Pour ton erreur, c’est que Mojang n’a pas spécifié à la liste d’entités qu’elle ne peut contenir que ça, donc si eclipse de propose de cast (pas sur pour un for comme ça), fais-le sinon remplace le débute du for par ça :

                for(Object o : event.world.loadedEntityList)
                {
                if(o instanceof EntityWolf)
                {
                EntityWorlf entity = (Entity) o;
                
                

                PS : Bonne traduction oui 🙂

                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
                • AxaurusA Hors-ligne
                  Axaurus
                  dernière édition par

                  Tu as raison, Eclipse ne propose pas de cast. J’ai remplacer le début du for comme t’as dit. Quand je vais tester : quand ce n’est pas l’apocalypse, je fais spawner un loup. Quand j’active l’apocalyse, rien ne se passe (que ce soit dans le jeu ou dans les logs). Par contre, quand c’est déjà l’apocalypse et que je fais spawner un loup, il se change en loup-garou (normal me diriez vous) mais avec le loup-garou s’accompagne une erreur dans les logs, mais pas de crash du jeu :

                  [22:50:52] [Server thread/ERROR] [FML]: Exception caught during firing event net.minecraftforge.event.entity.EntityJoinWorldEvent@15c6044d:
                  java.util.ConcurrentModificationException
                  at java.util.ArrayList$Itr.checkForComodification(Unknown Source) ~[?:1.8.0_92]
                  at java.util.ArrayList$Itr.next(Unknown Source) ~[?:1.8.0_92]
                  at thisishalloween.CommonEventHandler.apocalypseMobReplace(CommonEventHandler.java:104) ~[CommonEventHandler.class:?]
                  at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_9_CommonEventHandler_apocalypseMobReplace_EntityJoinWorldEvent.invoke(.dynamic) ~[?:?]
                  at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
                  at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:140) [EventBus.class:?]
                  at net.minecraft.world.World.spawnEntityInWorld(World.java:1230) [World.class:?]
                  at net.minecraft.item.ItemMonsterPlacer.spawnCreature(ItemMonsterPlacer.java:220) [ItemMonsterPlacer.class:?]
                  at net.minecraft.item.ItemMonsterPlacer.onItemUse(ItemMonsterPlacer.java:107) [ItemMonsterPlacer.class:?]
                  at net.minecraftforge.common.ForgeHooks.onPlaceItemIntoWorld(ForgeHooks.java:599) [ForgeHooks.class:?]
                  at net.minecraft.item.ItemStack.onItemUse(ItemStack.java:146) [ItemStack.class:?]
                  at net.minecraft.server.management.ItemInWorldManager.activateBlockOrUseItem(ItemInWorldManager.java:488) [ItemInWorldManager.class:?]
                  at net.minecraft.network.NetHandlerPlayServer.processPlayerBlockPlacement(NetHandlerPlayServer.java:624) [NetHandlerPlayServer.class:?]
                  at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.processPacket(C08PacketPlayerBlockPlacement.java:67) [C08PacketPlayerBlockPlacement.class:?]
                  at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.processPacket(C08PacketPlayerBlockPlacement.java:114) [C08PacketPlayerBlockPlacement.class:?]
                  at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:24) [PacketThreadUtil$1.class:?]
                  at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_92]
                  at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_92]
                  at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:714) [FMLCommonHandler.class:?]
                  at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:727) [MinecraftServer.class:?]
                  at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669) [MinecraftServer.class:?]
                  at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171) [IntegratedServer.class:?]
                  at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
                  at java.lang.Thread.run(Unknown Source) [?:1.8.0_92]
                  [22:50:52] [Server thread/ERROR] [FML]: Index: 3 Listeners:
                  [22:50:52] [Server thread/ERROR] [FML]: 0: HIGHEST
                  [22:50:52] [Server thread/ERROR] [FML]: 1: ASM: net.minecraftforge.common.ForgeInternalHandler@55c901b2 onEntityJoinWorld(Lnet/minecraftforge/event/entity/EntityJoinWorldEvent;)V
                  [22:50:52] [Server thread/ERROR] [FML]: 2: NORMAL
                  [22:50:52] [Server thread/ERROR] [FML]: 3: ASM: thisishalloween.CommonEventHandler@24537e30 apocalypseMobReplace(Lnet/minecraftforge/event/entity/EntityJoinWorldEvent;)V
                  [22:50:52] [Server thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
                  java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
                  at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_92]
                  at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_92]
                  at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:715) [FMLCommonHandler.class:?]
                  at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:727) [MinecraftServer.class:?]
                  at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669) [MinecraftServer.class:?]
                  at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171) [IntegratedServer.class:?]
                  at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
                  at java.lang.Thread.run(Unknown Source) [?:1.8.0_92]
                  Caused by: java.util.ConcurrentModificationException
                  at java.util.ArrayList$Itr.checkForComodification(Unknown Source) ~[?:1.8.0_92]
                  at java.util.ArrayList$Itr.next(Unknown Source) ~[?:1.8.0_92]
                  at thisishalloween.CommonEventHandler.apocalypseMobReplace(CommonEventHandler.java:104) ~[CommonEventHandler.class:?]
                  at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_9_CommonEventHandler_apocalypseMobReplace_EntityJoinWorldEvent.invoke(.dynamic) ~[?:?]
                  at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
                  at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:140) ~[EventBus.class:?]
                  at net.minecraft.world.World.spawnEntityInWorld(World.java:1230) ~[World.class:?]
                  at net.minecraft.item.ItemMonsterPlacer.spawnCreature(ItemMonsterPlacer.java:220) ~[ItemMonsterPlacer.class:?]
                  at net.minecraft.item.ItemMonsterPlacer.onItemUse(ItemMonsterPlacer.java:107) ~[ItemMonsterPlacer.class:?]
                  at net.minecraftforge.common.ForgeHooks.onPlaceItemIntoWorld(ForgeHooks.java:599) ~[ForgeHooks.class:?]
                  at net.minecraft.item.ItemStack.onItemUse(ItemStack.java:146) ~[ItemStack.class:?]
                  at net.minecraft.server.management.ItemInWorldManager.activateBlockOrUseItem(ItemInWorldManager.java:488) ~[ItemInWorldManager.class:?]
                  at net.minecraft.network.NetHandlerPlayServer.processPlayerBlockPlacement(NetHandlerPlayServer.java:624) ~[NetHandlerPlayServer.class:?]
                  at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.processPacket(C08PacketPlayerBlockPlacement.java:67) ~[C08PacketPlayerBlockPlacement.class:?]
                  at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.processPacket(C08PacketPlayerBlockPlacement.java:114) ~[C08PacketPlayerBlockPlacement.class:?]
                  at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:24) ~[PacketThreadUtil$1.class:?]
                  at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_92]
                  at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_92]
                  at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:714) ~[FMLCommonHandler.class:?]
                  … 5 more
                  

                  L’erreur (d’habitude j’appelle tout le temps ça un crash parce que le jeu plante, mais ce n’est pas le cas ici ; je l’appelle donc erreur) me pointe vers le for :```java
                  for(Object o : event.world.loadedEntityList)

                  
                  Merci d'avance
                  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

                    https://docs.oracle.com/javase/7/docs/api/java/util/ConcurrentModificationException.html

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

                      C’est parce-que j’ai trop modifié le code de BrokenSwing, quand tu mets une liste en itération (ici c’est via le for), on ne peut pas la modifier or le spawnEntity la modifie, donc il faut que tu crées une nouvelle liste avant le for, puis, dans le for, à la place du spawnEntity, tu ajoute l’entité à la liste. Puis après ce for tu fais un autre for cette fois ci avec ta liste à la place de loadedEntityList, et à cette endroit tu fais spawn l’entité (prends exemple sur le code de BrokenSwing).

                      Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

                      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
                      • BrokenSwingB Hors-ligne
                        BrokenSwing Moddeurs confirmés Rédacteurs
                        dernière édition par

                        C’est pour ça que j’avais créer une liste qui ajoute les entités après avoir parcourue la première
                        @Aymeric, en fait j’ai fait le code vite fait, et en 1.9 ils ont mis des getters, d’où le getPosition, getWorld, etc … Le crash viens de ton code, quand tu ajoutes l’entité au monde tu la rajoute à la liste que tu est en train de parcourir, il ne faut pas ajouter ou enlever des éléments d’une liste que l’on parcourt, le setDead ne pose pas problème car l’entité sera supprimée seulement au tick d’après, il faut créer une liste d’entité que l’on ajoute après avoir parcourue la première

                        EDIT : Bah c’est bon, t’avais compris en fait

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

                          @BrokenSwing oui quand j’ai enlevé ton deuxième for j’avais pas pensé à ça, mais de toute façon dans le code que t’avais fait ou tu get le code à chaque ligne, il n’y avait pas d’itération (mais maintenant je pense que ça aurait tout fais bug en changeant la taille de la liste sans le second for).

                          Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

                          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
                          • AxaurusA Hors-ligne
                            Axaurus
                            dernière édition par

                            Salut
                            J’ai fais comme ça : ```java
                            @SubscribeEvent
                             public void apocalypseMobReplace(EntityJoinWorldEvent event)
                             {
                              if(ThisisHalloween.apocalypse)
                              {
                               final List <entity>spawnEntity = new ArrayList<entity>();
                               for(Object o : event.world.loadedEntityList)
                               {
                                if(event.entity instanceof EntityWolf) 
                                {
                                 EntityWerewolf werewolf = new EntityWerewolf(event.world);
                                 double x = event.entity.posX;
                                 double y = event.entity.posY;
                                 double z = event.entity.posZ;
                                 float rotateX = event.entity.rotationPitch;
                                 float rotateY = event.entity.rotationYaw;

                            event.entity.setDead();

                            werewolf.setPositionAndRotation(x, y, z, rotateX, rotateY);
                                 spawnEntity.add(werewolf);
                                }
                               }
                               for(int e = 0; spawnEntity.size() > e; e++)
                               {
                                event.world.spawnEntityInWorld(spawnEntity.get(e));
                               }
                              }
                             }

                            Résultats : quand ce n'est pas l'apocalypse, je fais spawner un loup, j'active l'apocalypse toujours rien ne se passe. En revanche, quand c'est l'apocalypse et que je fais spawner un loup, il se transforme bien (plus de message d'erreur dans les logs) mais … . En fait juste avant que je fasse spawner, je regarde les débugs, 0 entité. Mais quand je fais spawner, ça met u nombre complétement aléatoire de loup-garou (308, 497, et mon préféré 3806). Mais je ne comprend pas du tout pourquoi ça fait ça
                            
                            Voilà ce que ça fait : :::
                            ![](http://image.noelshack.com/fichiers/2016/25/1466670271-2016-06-23-10-14-27.png)
                            Ici, tout les loup-garou sont exactement au même endroit.
                            
                            Mais dès que je fonce dans le toupeau, ...
                            ![](http://image.noelshack.com/fichiers/2016/25/1466670273-2016-06-23-10-22-00.png)
                            
                            ::: C'est quand même assez bizarre, bien que marrant sur le coup où ça arrive
                            
                            Merci d'avance</entity></entity>
                            1 réponse Dernière réponse Répondre Citer 0
                            • BrokenSwingB Hors-ligne
                              BrokenSwing Moddeurs confirmés Rédacteurs
                              dernière édition par

                              Parce que c’est pas comme ça qu’il fallait faire, tu as d’un côté un morceau de code qui doit s’exécuter lorsque l’apocalypse démarre avec le code que tu viens de faire, qui ne va s’exécuter qu’une seule fois, pour changer tout les loups en loup-garous, puis via l’event tu gère les nouveaux loups qui spawns, j’avais dit de ne pas mettre ce code dans l’event. Dans l’event il faut que tu regardes si l’entitée qui spawn est un loup est dans ce cas tu le remplace par un loup-garou, tu n’as pas besoin de boucle

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

                                J’ai réussi à remplacer les loups déjà existant en loup-garou. Il suffisait d’utiliser l’évent LivingEvent. Ca marche bien maintenant
                                J’ai essayer ce que tu m’as dit mais je n’arrivais pas à initialiser entity. J’ai fait ```java
                                Entity entity =

                                
                                Pour les autres problèmes, j'aimerais ne mettre que de l'orage sans la pluie. Or, quand il y a de l'orage, il pleut aussi.
                                
                                Pour l'herbe, je pense abandonné et ne faire qu'un ressource pack (texture pack pour les nostalgique  :heart: )
                                1 réponse Dernière réponse Répondre Citer 0
                                • AymericRedA Hors-ligne
                                  AymericRed
                                  dernière édition par

                                  Pour l’event, je suppose que tu a fais que la boucle est parcourue à chaque LivingEvent, ce qui n’est pas une bonne idée, pour résoudre ça, mets une boolean dans la classe d’event, puis avant ta boucle, tu mets un

                                  if(taBoolean != LaClasseOuTaLaVariableApocalypse.apocalypse)
                                  ``` puis à la fin de la fonction tu fais ```java
                                  taBoolean = LaClasseOuTaLaVariableApocalypse.apocalypse;
                                  ```, ceci va permettre d’exécuter le code uniquement quand l'apocalypse a été déclenchée (ou arrêtée).
                                  Et pour l'event EntityJoinWorldEvent, tu as juste à mettre ce qu'il y a à l'intérieur du for, en changeant "spawnEntity.add(werewolf);" par "event.world.spawnEntityInWorld(wereWolf);" cette fois-ci.

                                  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
                                  • AxaurusA Hors-ligne
                                    Axaurus
                                    dernière édition par

                                    J’ai déjà fait la variable. Voilà ce que j’ai mis :

                                    @SubscribeEvent
                                     public void apocalypseMobReplace(LivingEvent event)
                                     {
                                      if(ThisisHalloween.apocalypse)
                                      {
                                       if(event.entity instanceof EntityWolf) 
                                       {
                                        World world = Minecraft.getMinecraft().theWorld;
                                        EntityWerewolf werewolf = new EntityWerewolf(world);
                                        double x = event.entity.posX;
                                        double y = event.entity.posY;
                                        double z = event.entity.posZ;
                                        float rotateX = event.entity.rotationPitch;
                                        float rotateY = event.entity.rotationYaw;
                                    
                                        event.entity.setDead();
                                    
                                        werewolf.setPositionAndRotation(x, y, z, rotateX, rotateY);
                                        world.spawnEntityInWorld(werewolf);
                                       }
                                      }
                                      else
                                      {
                                       // Apocalypse == disable == false
                                       Random rand = new Random();
                                       int n = rand.nextInt(3);
                                    
                                       switch(n)
                                       {
                                       case 1 : if(event.entity instanceof EntityWerewolf) 
                                       {
                                        event.entity.setDead();
                                       }
                                       break;
                                       case 2 : 
                                        if(event.entity instanceof EntityWerewolf) 
                                        {
                                         World world = Minecraft.getMinecraft().theWorld;
                                         EntityWolf wolf = new EntityWolf(world);
                                         double x = event.entity.posX;
                                         double y = event.entity.posY;
                                         double z = event.entity.posZ;
                                         float rotateX = event.entity.rotationPitch;
                                         float rotateY = event.entity.rotationYaw;
                                    
                                         event.entity.setDead();
                                    
                                         wolf.setPositionAndRotation(x, y, z, rotateX, rotateY);
                                         world.spawnEntityInWorld(wolf);
                                        }
                                       }
                                    
                                      }
                                     }
                                    

                                    Par contre, je viens de voir un bug étrange : je fais spawner des loups quand l’apocalypse est désactiver ils marchent bien. Quand j’active l’apocalypse, ils se changent en loup-garou, mais ils ne bougent pas, quand on les tape ca fait rien et on ne peux pas les pousser. Comme si c’est juste une image et non une entité. Au départ, je m’étais dis que c’étais un énorme lag, mais je peux taper d’autre mob. Même en les faisant spawner par leur oeufs ils marchent bien. C’est pareil pour l’effet inverse (quand je fais spawner des loup-garou, marche bien mais quand je désactive l’apocalypse, ils se transforment en loups qui ne bougent pas, …). Etrange

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

                                      C’est un problème de synchronisation client-serveur : fais attention à toujours faire spawner les mobs côté serveur.

                                      PS : tu n’as toujours pas changé l’emplacement de la variable pour l’apocalypse, le problème peut venir de là donc fait attention à modifier cette valeur (en attendant de passer par un autre système) côté serveur, voir même la mettre en SideOnly

                                      Site web contenant mes scripts : http://SCAREXgaming.github.io

                                      Pas de demandes de support par MP ni par skype SVP.
                                      Je n'accepte sur skype que l…

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

                                        Je ne comprend pas pourquoi ça ne marche pas si je le laisse dans la classe principale. Il y a que deux méthodes qui peuvent changer la variable : faire la commande /halloween apocalypse enable ou entrer dans la dimension Frightful. Et les deux sont cotés serveur

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

                                          Dans ton event, vérifie que le code est exécuté côté serveur

                                          Site web contenant mes scripts : http://SCAREXgaming.github.io

                                          Pas de demandes de support par MP ni par skype SVP.
                                          Je n'accepte sur skype que l…

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

                                            J’utilise l’event LivingEvent, logiquement ça serait uniquement côté serveur (à moins que je me trompe ? ) mais je peux quand même mettre un sideOnly au cas où

                                            Sinon, je viens de penser, pour le code : ```java
                                               World world = Minecraft.getMinecraft().theWorld;

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB