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

    Résolu Un zombie qui attaque un golem?

    1.7.x
    1.7.2
    3
    10
    2110
    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.
    • T
      totos51 dernière édition par

      Bonjour à tous, voici le problème au quel je me heurte:

      #Description(Description)
      Je cherche à fair en sorte que quand le zombie voit un golem, il attaque ce dernier, puis que si le golem est tué par un zombie alors il se transforme en Golem Zombie

      #Mon soucis(Mon soucis)
      J’ai mis dans un event pour les deux, mais cela ne semble pas marcher, voici le code:

         @ForgeSubscribe
         public void onDeath(LivingDeathEvent event)
         {
             if(event.entity instanceof EntityGolem)
             {
                 if(DamageSource.causeMobDamage(event.entityLiving).getEntity() instanceof EntityZombie)
                 {
                     EntityGolemZombie EZG = new EntityGolemZombie(event.entity.worldObj);
                     EZG.setPosition(event.entity.posX, event.entity.posY, event.entity.posZ);
                     event.entity.worldObj.spawnEntityInWorld(EZG);
                 }
             }
         }
      
         @ForgeSubscribe
         public void onSpawn(LivingSpawnEvent event)
         {
             if(event.entity instanceof EntityZombie)
             {
                 EntityZombie zomb = (EntityZombie)event.entity;
                 zomb.targetTasks.addTask(3, new EntityAINearestAttackableTarget(zomb, EntityGolem.class, 0, true));
             }
         }
      

      Merci de votre aide! 🙂

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

        Est ce que le zombie attaque le golem ?

        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

          non c’est bien la le soucis

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

            ajoute ça dans le code de l’event :
            zomb.tasks.addTask(2, new EntityAIAttackOnCollide(this, EntityIronGolem.class, 1.0D, true));
            zomb.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityIronGolem.class, 0, true));
            J’ai fait des tests sur les entités, il faut avoir ces 2 boots de code !

            Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
            Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

              J’ai donc ajouter la ligne, cela donne ce code:

              
              @ForgeSubscribe
              public void onSpawn(LivingSpawnEvent event)
              {
              if (event.entityLiving instanceof EntityZombie)
              {
              EntityZombie zomb = (EntityZombie)event.entityLiving;
              zomb.tasks.addTask(2, new EntityAIAttackOnCollide(zomb, EntityIronGolem.class, 1.0D, true));
              zomb.targetTasks.addTask(2, new EntityAINearestAttackableTarget(zomb, EntityIronGolem.class, 0, true));
              }
              }
              
              

              Et en effet cela marche, merci donc ! 🙂
              Maintenant je cherche pour que à sa mort le golem devienne un Golem Zombie

              Edit: J’ai trouvé, voici le code que j’aurai du utiliser:

              
              @ForgeSubscribe
              public void onDeath(LivingDeathEvent event)
              {
              if (event.entityLiving instanceof EntityIronGolem)
              {
              if (event.source.getEntity() instanceof EntityZombie)
              {
              EntityGolemZombie EZG = new EntityGolemZombie(event.entity.worldObj);
              EZG.setPosition(event.entity.posX, event.entity.posY, event.entity.posZ);
              event.entity.worldObj.spawnEntityInWorld(EZG);
              }
              
              }
              }
              
              
              1 réponse Dernière réponse Répondre Citer 0
              • Überfap
                Überfap dernière édition par

                De rien 😉

                Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                  @ForgeSubscribe
                  public void onDeath(LivingDeathEvent event)
                  {
                  if (event.entity instanceof EntityGolem)
                  {
                  if (event.source.getEntity() instanceof EntityZombie)
                  {
                  EntityGolemZombie EZG = new EntityGolemZombie(event.entity.worldObj);
                  EZG.setPosition(event.entity.posX, event.entity.posY, event.entity.posZ);
                  event.entity.worldObj.spawnEntityInWorld(EZG);
                  }
                  }
                  }
                  

                  Comme ça non ?

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

                    yep, j’allais te demander pourquoi le if (DamageSource.causeMobDamage(event.entityLiving).getEntity() instanceof EntityZombie) alors qu’il y a plus cours 😉

                    Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                    Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

                    1 réponse Dernière réponse Répondre Citer 1
                    • T
                      totos51 dernière édition par

                      Merci à vous, bien que j’ai trouvé finalement avant que tu me donnes la réponse mais merci quand même à vous deux pour votre aide! ce sujet est donc résolu!

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

                        De rien 😉 (par contre, tu es sûr qu’un zombie va tuer un golem ? x))

                        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

                        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