MFF

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

    [SEMI TUTO] Création de mon mob hostile: spawn, attaque etc.

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8.8
    110 Messages 9 Publieurs 20.9k 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.
    • DeletedD Hors-ligne
      Deleted
      dernière édition par

      Mais c’est le même principe –’
      Le système de get les entity aux alentours est ce que je souhaitais que tu regardes à travers ce tuto. Ensuite au lieu de heal tu set comme target.
      Ensuite pour le prob de 1.8.8, qu’est-ce qui ne va pas (je n’ai pas mon pc, donc je peux pas adapter le code) ?

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

        http://www.minecraftforgefrance.fr/showt…=730
        Je comprends toujours pas faut m’expliquer.
        http://www.minecraftforgefrance.fr/showt...tid=907
        Ne marche pas sur la 1.8.8. Avec le mob n’est plus fonctionnel, et ne popera ni naturellement ni avec l’oeuf.
        Après modifications il repop de nouveau, mais n’attaque plus, help!

        Sérieusement, les mobs comme les vaches ou les zombies sautent bien… C’est quoi la commande pour faire comme avec eux?

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

          Bah tu modifies le motionY, c’est pas compliqué :3

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

            Mon mob n’attaque plus maintenant que j’ai du tout effacer.
            Je comprends pas. Qu’est-ce qui fait qu’il n’attaque pas avec ça:
            package Entity;

            import net.minecraft.entity.EntityCreature;
            import net.minecraft.entity.SharedMonsterAttributes;
            import net.minecraft.entity.ai.EntityAIAttackOnCollide;
            import net.minecraft.entity.ai.EntityAIHurtByTarget;
            import net.minecraft.entity.ai.EntityAILookIdle;
            import net.minecraft.entity.ai.EntityAIMoveThroughVillage;
            import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction;
            import net.minecraft.entity.ai.EntityAINearestAttackableTarget;
            import net.minecraft.entity.ai.EntityAISwimming;
            import net.minecraft.entity.ai.EntityAIWander;
            import net.minecraft.entity.ai.EntityAIWatchClosest;
            import net.minecraft.entity.monster.EntityIronGolem;
            import net.minecraft.entity.monster.EntityMob;
            import net.minecraft.entity.monster.EntityPigZombie;
            import net.minecraft.entity.passive.EntityChicken;
            import net.minecraft.entity.passive.EntityCow;
            import net.minecraft.entity.passive.EntityHorse;
            import net.minecraft.entity.passive.EntityOcelot;
            import net.minecraft.entity.passive.EntityPig;
            import net.minecraft.entity.passive.EntityRabbit;
            import net.minecraft.entity.passive.EntityVillager;
            import net.minecraft.entity.player.EntityPlayer;
            import net.minecraft.pathfinding.PathNavigateGround;
            import net.minecraft.world.World;

            public class Entityclass extends EntityMob
            {
               public Entityclass(World world)
               {
                   super(world);
                   this.setSize(2, 3);
                   this.applyEntityAI();
               }

            public void applyEntityAttributes()
               {
                   super.applyEntityAttributes();
                   this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(62D);
                   this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(9D);
                   this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(2D);
                   this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.36D);
                   this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(150D);
               }

            protected void applyEntityAI()
               {
                   this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
               }
            }

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

              [font=Ubuntu, sans-serifprotected void applyEntityAI()]
              [font=Ubuntu, sans-serif{]
              [font=Ubuntu, sans-serifthis.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));]
              [font=Ubuntu, sans-serif}]
              

              ne set à rien l’entity à un extends EntityMob

              Eddit:tu est en 1.8?

              Voila ma signature

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

                What?
                Rien compris… 😕

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

                  Ce codage te sert à quoi?

                  
                  1.  [font=Ubuntu, sans-serif**protected**] **void** applyEntityAI()
                  2.  [font=Ubuntu, sans-serif{]
                  3.  [font=Ubuntu, sans-serif**this**].targetTasks.addTask(1, **new** EntityAINearestAttackableTarget(**this**, EntityPlayer.**class**, **true**));
                  4.  [font=Ubuntu, sans-serif}]
                  
                  

                  Voila ma signature

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

                    Ah ce qu’il m’attaque car il ne m’attaque pas. Mais ça change rien. Parce que Plaigon m’a dit de faire un truc qui a fait quelque chose à mon codage et du coup y’a plus rien qui marche je sais pas pourquoi.
                    Il n’attaque pas et ça me saoule. Dîtes moi comment faire s’il vous plait! En un seul message! Tout le monde ici a déjà fait des mobs agressif non? Pourquoi vous ne me dîtes pas directement l’erreur et la correction? Parce que là on s’étend sur 4 pages déjà…

                    1 réponse Dernière réponse Répondre Citer -1
                    • leo01418L Hors-ligne
                      leo01418
                      dernière édition par

                      @‘conquerorguepard’:

                      Ah ce qu’il m’attaque car il ne m’attaque pas. Mais ça change rien. Parce que Plaigon m’a dit de faire un truc qui a fait quelque chose à mon codage et du coup y’a plus rien qui marche je sais pas pourquoi.
                      Il n’attaque pas et ça me saoule. Dîtes moi comment faire s’il vous plait! En un seul message! Tout le monde ici a déjà fait des mobs agressif non? Pourquoi vous ne me dîtes pas directement l’erreur et la correction? Parce que là on s’étend sur 4 pages déjà…

                      Déjà ma première question est tu en 1.8? 
                      et de 2 tu à essayé d’enlevé

                      protected void applyEntityAI()
                      {
                      this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, EntityPlayer.class, 3, true));
                      }
                      

                      et de 3 ce n’est pas grave si le sujet s’étend en 4 ou 18 pages le but de ce sujet est de te faire comprendre ton erreur et que tu ne la recommence plus

                      Voila ma signature

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

                        Oui je suis en 1.8 :).
                        Et j’ai essayé de l’enlever ça change rien. Il ne m’attaque toujours pas.
                        Sinon désolé si j’ai pu paraître désagréable.

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

                          Pas grave sa arrive quand on s’énerve sur un mod de 2 excuse je n’ai pas encore touché à la 1.8  😄
                          Bonne Chance
                          Sinon tien si sa peux t’aider  😉 :
                          Youtube Video

                          Voila ma signature

                          1 réponse Dernière réponse Répondre Citer 0
                          • FolganskyF Hors-ligne
                            Folgansky Correcteurs
                            dernière édition par

                            Plutôt celle-là je pense
                            Youtube Video

                            Même si je ne l’ai pas regardé x]

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

                              En réinitialisant tout j’ai réussi à refaire fonctionner le mob. J’en suis maintenant au même point qu’en début d’après midi, avec toujours ce problème de saut. Quelqu’un a t-il une autre idée svp?

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

                                J’ai pas bien compris ton problème de saut, tu veux qu’il se déplace en sautant où juste qu’il saute pour passer des blocks ?

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

                                  Pour passer des blocks uniquement. Car la si je me mets en hauteur il peut pas m’attaquer, donc ça sert à rien x).
                                  Et le second problème c’est qu’ils finissent par disparaitre.
                                  Y’a pas une commande pour qu’ils ne disparaissent pas ou pour leur donner un nom comme une étiquette?

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

                                    Pour le jump, je regarde ça demain (si quelqu’un n’a pas déjà répondu).
                                    Pour le despawn, mets tout simplement ça dans ton entité :

                                    @Override
                                    public boolean canDespawn()
                                    {
                                    return false;
                                    }
                                    

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

                                      [font=Ubuntu, sans-serifParce que Plaigon m’a dit de faire un truc qui a fait quelque chose à mon codage et du coup y’a plus rien qui marche je sais pas pourquoi. ]

                                      Attends ! Moi je te propose juste des solutions et tu vas me dire que c’est de ma faute si plus rien ne marche dans ton semblant de “code” ?! Moi j’ai surtout envie de te dire D’APPRENDRE A CODER, car pour le moment tout ce que je vois dans ton code reste des lignes que tu as copié-coller (pas gênant, si ce n’était que cela…), SANS EN COMPRENDRE LE SENS…Un mob qui attaque ? C’est pas compliqué, tu l’extends EntityMob, point ! Ensuite (si déjà tu arrives à faire cela) il sera capable TOUT SEUL (c’est-à-dire sans la moindre IA à rajouter) de sauter afin de franchir des blocks…Après si malgré tout cela ça ne marche toujours pas, c’est qu’il faut debug afin de voir où est le problème…
                                      Renvoies ton code, je vais faire des tests chez moi. Tu es en quelle version déjà ? La balise devrait pouvoir l’indiquer sans qu’on ait à chercher à travers les 5 pages du topic (au cas où ça serait indiqué)…
                                      En parlant de ce titre, il faudrait VRAIMENT éditer, car “Création de mon mob”, désolé mais ça n’indique en aucun cas le(s) problème(s) que tu as recontré(s)…A la base t’était parti sur les fréquences de spawn et maintenant on se retrouve avec ton mob qui ne souhaite pas attaquer, ni sauter…Tu vois si quelqu’un a le même soucis que toi, ça m’étonnerait fortement qu’il mette la main sur ce post…

                                      1 réponse Dernière réponse Répondre Citer 2
                                      • conquerorguepardC Hors-ligne
                                        conquerorguepard
                                        dernière édition par

                                        Bonjour,
                                        encore désolé pour hier j’avais vraiment eu une sale journée, et à force d’accumuler de nouveaux problèmes j’ai pété un câble.
                                        Ce n’est pas contre vous, encore désolé 😕 (en plus ça arrive genre méga rarement ^^')

                                        Code:```java
                                        package Entity;

                                        import fr.minecraftforgefrance.modzoic.common.Modzoic;
                                        import net.minecraft.entity.SharedMonsterAttributes;
                                        import net.minecraft.entity.ai.EntityAIAttackOnCollide;
                                        import net.minecraft.entity.ai.EntityAIHurtByTarget;
                                        import net.minecraft.entity.ai.EntityAILookIdle;
                                        import net.minecraft.entity.ai.EntityAIMoveThroughVillage;
                                        import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction;
                                        import net.minecraft.entity.ai.EntityAINearestAttackableTarget;
                                        import net.minecraft.entity.ai.EntityAISwimming;
                                        import net.minecraft.entity.ai.EntityAIWander;
                                        import net.minecraft.entity.ai.EntityAIWatchClosest;
                                        import net.minecraft.entity.monster.EntityIronGolem;
                                        import net.minecraft.entity.monster.EntityMob;
                                        import net.minecraft.entity.monster.EntityPigZombie;
                                        import net.minecraft.entity.passive.EntityChicken;
                                        import net.minecraft.entity.passive.EntityCow;
                                        import net.minecraft.entity.passive.EntityHorse;
                                        import net.minecraft.entity.passive.EntityOcelot;
                                        import net.minecraft.entity.passive.EntityPig;
                                        import net.minecraft.entity.passive.EntityRabbit;
                                        import net.minecraft.entity.passive.EntityVillager;
                                        import net.minecraft.entity.player.EntityPlayer;
                                        import net.minecraft.pathfinding.PathNavigateGround;
                                        import net.minecraft.world.World;

                                        public class Entityclass extends EntityMob
                                        {
                                            public Entityclass(World world)
                                            {
                                                super(world);
                                                ((PathNavigateGround)this.getNavigator()).setBreakDoors(true);
                                                this.tasks.addTask(0, new EntityAISwimming(this));
                                                this.tasks.addTask(2, new EntityAIAttackOnCollide(this, EntityPlayer.class, 1.0D, false));
                                                this.tasks.addTask(5, new EntityAIMoveTowardsRestriction(this, 1.0D));
                                                this.tasks.addTask(7, new EntityAIWander(this, 1.0D));
                                                this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
                                                this.tasks.addTask(8, new EntityAILookIdle(this));
                                                this.setSize(2, 3);
                                                this.applyEntityAI();
                                            }

                                        public void applyEntityAttributes()
                                            {
                                                super.applyEntityAttributes();
                                                this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(62D);
                                                this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(9D);
                                                this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(2D);
                                                this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.36D);
                                                this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(120D);
                                            }

                                        protected void applyEntityAI()
                                            {
                                                this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
                                            }

                                        public void dropFewItems(boolean b, int looting)
                                            {
                                                this.dropItem(Modzoic.meatEpanterias, 6);
                                            }

                                        protected String getLivingSound()
                                            {
                                            return “:Nanuqscarnotausaurus_living_1.ogg”;
                                            }
                                        }

                                        
                                        ```java
                                        package Handlers;
                                        
                                        import java.util.Random;
                                        
                                        import fr.minecraftforgefrance.modzoic.common.Modzoic;
                                        import net.minecraft.entity.EntityList;
                                        import net.minecraft.entity.EnumCreatureType;
                                        import net.minecraft.world.biome.BiomeGenBase;
                                        import net.minecraftforge.fml.common.registry.EntityRegistry;
                                        
                                        public class EntityHandler
                                        {
                                            public static void RegisterMonster(Class entityClass, String name)
                                            {
                                                int entityID = EntityRegistry.findGlobalUniqueEntityId();
                                                long x = name.hashCode();
                                                Random random = new Random(x);
                                                int mainColor = random.nextInt() * 16777215;
                                                int subColor = random.nextInt() * 16777215;
                                        
                                                EntityRegistry.registerGlobalEntityID(entityClass, name, entityID);
                                                EntityRegistry.addSpawn(entityClass, 70, 1, 3, EnumCreatureType.CREATURE, BiomeGenBase.forest, BiomeGenBase.beach, BiomeGenBase.birchForest, BiomeGenBase.birchForestHills ,BiomeGenBase.coldBeach ,BiomeGenBase.coldTaiga ,BiomeGenBase.coldTaigaHills ,BiomeGenBase.desert ,BiomeGenBase.desertHills ,BiomeGenBase.extremeHills ,BiomeGenBase.forestHills ,BiomeGenBase.frozenRiver ,BiomeGenBase.iceMountains ,BiomeGenBase.icePlains ,BiomeGenBase.jungle ,BiomeGenBase.jungleEdge ,BiomeGenBase.jungleHills ,BiomeGenBase.megaTaiga ,BiomeGenBase.megaTaigaHills ,BiomeGenBase.mesa ,BiomeGenBase.mesaPlateau ,BiomeGenBase.mesaPlateau_F ,BiomeGenBase.plains ,BiomeGenBase.roofedForest ,BiomeGenBase.savanna ,BiomeGenBase.savannaPlateau ,BiomeGenBase.taigaHills ,BiomeGenBase.taiga ,BiomeGenBase.stoneBeach);
                                                EntityRegistry.registerModEntity(entityClass, name, entityID, Modzoic.instance, 64, 1, true);
                                                EntityList.entityEggs.put(Integer.valueOf(entityID), new EntityList.EntityEggInfo(entityID, mainColor, subColor));
                                            }
                                        }
                                        

                                        (le reste n’a pas changé, voir page 2-3)

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

                                          Up! Je ne sais toujours pas comment faire pour que mon mob saute. 🙂
                                          Si vous avez des idées, ce serait génial!

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

                                            Normalement rien ne l’empèche de sauter 😕 Après moi j’avais eu des problèmes avec ça un moment (il sautait, mais difficilement), je ne les ais plus, si je me rappelle bien, je n’avais rien changé (je me demande si c’était pas parce qu’il essayait d’aller à plusieurs endroits en même temps (donc pb d’AI), mais je vois pas ce qui pourrait te causer ce problème.

                                            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
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 4 / 6
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB