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

                                  Toutes façons ses AI ne sont pas activées, car normalemement la méthode isAIEnbaled devrait retourner true dans la classe de ton Entity. Puisque de base elle est sur false…Par-conséquent en tout logique aucune de tes AI inscrites ne devraient être prises en compte.

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

                                    Je pense que soit cette méthode n’est pas utilisée, où une des classes EntityMob/Creature l’override car le zombie (ou tout autre mob) n’ont pas ça dans leur classe, j’ai moi-même fait un mob sans ça (après ça peut dépendre de la version mais en 1.8 et en 1.8.9 c’est comme ça).

                                    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

                                      Ah ok je pensais que cette méthode présente en 1.7 figurait aussi en 1.8 et +
                                      Autant pour moi et merci de me l’avoir signalé 😃

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

                                        Du coup toujours pas d’idée? C’est peut-être spécifique à la 1.8.8, faudrait le signaler en IA ou quelque chose comme ça qu’il peut sauter. Car après je sais que certains mod 1.8.8 rencontre les mêmes bug, mais comment les résoudre eux doivent le savoir et pas moi. (exemple de l’Indominus Rex dans JurassiCraft qui semble ne pas pouvoir sauter de blocks, en tout cas sur mon minecraft avec la version que j’ai téléchargé.)

                                        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

                                          Une bonne idée déjà ça serait de passer en 1.8.9.
                                          Il n’y a presque aucune différence de code entre ces des versions, mais la 1.8.9 contient des correctifs de bug que la 1.8.8 n’a pas.

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

                                            Certes, mais j’ai tout fait en 1.8.8… Du coup je fais comment pour changer de version?

                                            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