MFF

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

    Bug étrange lors d'un spawn de mob

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.2
    6 Messages 2 Publieurs 1.2k 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.
    • AmaA Hors-ligne
      Ama
      dernière édition par

      Bonsour !

      J’ai un bug étrange qui m’arrive lorsque j’ai fait en sorte qu’un mob spawn à la mort d’un (¿ comprendo ?):huh:

      En gros un mob spawn mais ne bouge pas, ne prend pas de dégâts

      Voici mon bout de code dans un event “LivingDeathEvent”

      if (event.entityLiving instanceof EntityZombieMale)
      {
      EntityZombieCrawler var2 = new EntityZombieCrawler(event.entityLiving.worldObj);
             var2.setLocationAndAngles(event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, event.entityLiving.rotationYaw, event.entityLiving.rotationPitch);
             event.entityLiving.worldObj.spawnEntityInWorld(var2);
      }
      

      J’espère ne pas m’être trompé d’event biensûr, et que quelqu’un à la réponse !

      Merci !

      -ZeAmateis-

      Si je t'ai filé un coup de main n'oublie pas le + / -
      Par contre évite les demandes d'aides en MP, tu sera sympa'

      La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

      Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

      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

        Salut,
        Même sans voir le reste du code, je suis sûr à 100 % que tu fais spawn l’entity sur le monde client.

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

          Euhh Oui Il faut un worldObj.remote un truc comme ça ?

          Si je t'ai filé un coup de main n'oublie pas le + / -
          Par contre évite les demandes d'aides en MP, tu sera sympa'

          La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

          Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

          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

            if(!event.entityLiving.worldObj.isRemote)
            Mais avec ça tu aura sûrement plus rien du tout cas la je pense que tu déclenche que ce code en client. Il faudrait le reste du code (et surtout où l’event est enregistré).

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

              Je te file les codes de suite !


              Event enregistré comme ceci dans la fonction “init” de la classe principale

              MinecraftForge.EVENT_BUS.register(new DeathEvent());
              

              La classe complète du DeathEvent:

              :::

              package viruz.zeamateis.event;
              
              import java.util.Random;
              
              import net.minecraft.entity.player.EntityPlayer;
              import net.minecraft.item.Item;
              import net.minecraft.item.ItemStack;
              import net.minecraft.nbt.NBTTagCompound;
              import net.minecraftforge.event.ForgeSubscribe;
              import net.minecraftforge.event.entity.living.LivingDeathEvent;
              import viruz.zeamateis.mob.monster.EntityZombieCrawler;
              import viruz.zeamateis.mob.monster.EntityZombieMale;
              
              public class DeathEvent
              {
              
              /*@ForgeSubscribe
              public void onLivingDeath(LivingDeathEvent event)
              {
              Entity source = event.source.getSourceOfDamage();
              if (source != null)
              {
              if (source instanceof EntityZombieMale)
              {
              if(event.entityLiving.worldObj.isAirBlock((int)(event.entityLiving.posX - 1), (int)event.entityLiving.posY, (int)event.entityLiving.posZ))
              {
              EntityZombieMale var2 = new EntityZombieMale(event.entityLiving.worldObj);
              var2.setLocationAndAngles(event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, event.entityLiving.rotationYaw, event.entityLiving.rotationPitch);
              event.entityLiving.worldObj.spawnEntityInWorld(var2);
              
              }
              }
              }
              }*/
              
              @ForgeSubscribe
              public void onLivingDeath(LivingDeathEvent event)
              {
              //Player's Head in PVP !
              Random rand = new Random();
              if (event.entityLiving instanceof EntityPlayer)
              {
              boolean dodrop = true;
              if (event.source.equals("player"))
              {
              dodrop = false;
              }
              
              double chance = rand.nextDouble() * 100;
              if ((dodrop && chance <= 1))
              {
              ItemStack playerHead = new ItemStack(Item.skull, 1, 3);
              playerHead.setTagCompound(new NBTTagCompound());
              EntityPlayer player = (EntityPlayer) event.entityLiving;
              String playerName = player.getEntityName();
              playerHead.getTagCompound().setString("SkullOwner", playerName);
              event.entityLiving.entityDropItem(playerHead, 0.5F);
              }
              }
              
              if (event.entityLiving instanceof EntityZombieMale)
              {
              EntityZombieCrawler var2 = new EntityZombieCrawler(event.entityLiving.worldObj);
              var2.setLocationAndAngles(event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, event.entityLiving.rotationYaw, event.entityLiving.rotationPitch);
              event.entityLiving.worldObj.spawnEntityInWorld(var2);
              }
              }
              }
              
              

              :::

              Si je t'ai filé un coup de main n'oublie pas le + / -
              Par contre évite les demandes d'aides en MP, tu sera sympa'

              La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

              Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                Voilà c’est tout ce qui touche au DeathEvent___Merci ! Robin !

                if(!event.entityLiving.worldObj.isRemote) fonctionne parfaitement !

                Si je t'ai filé un coup de main n'oublie pas le + / -
                Par contre évite les demandes d'aides en MP, tu sera sympa'

                La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                MINECRAFT FORGE FRANCE © 2024

                Powered by NodeBB