• Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Solved [1.7.10]Entity Montable,contrôlable et volable

    1.7.x
    1.7.10
    5
    14
    1992
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • leo01418
      leo01418 last edited by

      Bonjour voila 1 semaine que j’essaie de codé une entity qui est montable qui peut se contrôle et qui est volable(on peut la contrôle en l’air)
      J’ai regardé dans le codage de l’horse mais je ne suis pas arrivé voila ce que j’ai fait :
      Quand j’essaie de le bougé se me tp a l’endroit initiale

      Merci de votre aide

      package ed.enderdeath.mod.Entity;
      
      import net.minecraft.entity.Entity;
      import net.minecraft.entity.EntityAgeable;
      import net.minecraft.entity.EntityCreature;
      import net.minecraft.entity.EntityLivingBase;
      import net.minecraft.entity.SharedMonsterAttributes;
      import net.minecraft.entity.monster.EntityMob;
      import net.minecraft.entity.passive.EntityAnimal;
      import net.minecraft.entity.passive.EntityCow;
      import net.minecraft.entity.passive.EntityTameable;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.util.MathHelper;
      import net.minecraft.world.World;
      
      public class DragonRed extends EntityCreature
      {
      
      public DragonRed(World p_i1681_1_) {
      super(p_i1681_1_);
      }
      
             protected void  SharedCreatureAttributes()
             {
                 super.applyEntityAttributes();
                 this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(10.0D);
                 this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.20000000298023224D);
             }
      
      public boolean interact(EntityPlayer entityplayer)
             {
               if(riddenByEntity == null || riddenByEntity == entityplayer)
               {
                 entityplayer.mountEntity(this);
                 return true;
      
               }
               else
               {
                  return false;
                }
             }
      
      public boolean stationary;
      
      protected boolean isMovementCeased()
            {
               return stationary;
            }
      
      public void moveEntity(double d, double d1, double d2)
         {
          if(riddenByEntity != null)
          {
      
          stationary = true;
                 motionX += riddenByEntity.motionX*5; // * 0.20000000000000001D;
                 motionZ += riddenByEntity.motionZ*5; // * 0.20000000000000001D;
      
                 if(isCollidedHorizontally)
                 {
                     isJumping = true;
                 }
                 super.moveEntity(motionX, motionY, motionZ);
          }else
          {
          super.moveEntity(d, d1, d2);
          stationary = true;
          }
         }
      
      public double getMountedYOffset() {
      
      return 0.2D;
      }
      
      public void onUpdate()
      {
           super.onUpdate();
           if (riddenByEntity != null) //check if there is a rider
           {
             //currentTarget = this;
             this.randomYawVelocity = 0; //try not to let the horse control where to look.
             this.rotationYaw = riddenByEntity.rotationYaw;
      
           }
             }
      }
      
      

      Voila ma signature

      1 Reply Last reply Reply Quote 0
      • AymericRed
        AymericRed last edited by

        Met une balise java s’il te plaît
        Merci.

        T’es sur que t’a bien copié les fonctions entier, je peux pas vérifier là mais tt à l’heure je regarderais
        Et laisse extends EntityHorse

        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 Reply Last reply Reply Quote 0
        • leo01418
          leo01418 last edited by

          Excuse-moi j’ai pas le temps

          Voila ma signature

          1 Reply Last reply Reply Quote 0
          • robin4002
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

            Je l’ai fait entre temps.

            Par contre si tu n’as pas le temps de présenter correctement ton problème, alors moi je n’ai pas le temps de t’aider.
            Désolé mais ça c’est de la mauvaise foi.

            De plus ton code est dégueulasse et il y a des incohérences. Exemple :
            protected void SharedCreatureAttributes()
            -> ne respecte pas la convention Java.
            -> n’est jamais appelé.

            1 Reply Last reply Reply Quote 0
            • leo01418
              leo01418 last edited by

              Merci et Excuse-moi je vais en tenir compte 😉

              Voila ma signature

              1 Reply Last reply Reply Quote 0
              • Benjamin Loison
                Benjamin Loison last edited by

                “Dsl” je crois que c’est interdit de parler en langage SMS, écris bien et présentes bien ton problème permet aux autres de te répondre et vite 😉

                >! Développeur de Altis-Life (Arma III) sur Minecraft !
                >! Site web     : https://lemnoslife.com
                TeamSpeak : ts.lemnoslife.com

                1 Reply Last reply Reply Quote 0
                • Folgansky
                  Folgansky Correcteurs last edited by

                  Je pense que tu devrais essayer déjà de faire une monture type cheval, avec un comportement basique d’apprivoisement etc. Une monture qui vole, c’est une tout autre histoire il me semble.
                  Fouille un maximum dans les classes des créatures apprivoisables et notamment le cheval bien sûr.

                  Farfouille aussi beaucoup sur ce forum avant, pas mal de choses concernant les montures ont pu être abordé, à toi de faire le tri et ensuite de venir demander de l’aide pour peaufiner.

                  Bon apprentissage à toi

                  1 Reply Last reply Reply Quote 0
                  • leo01418
                    leo01418 last edited by

                    Merci je vais essaie de prendre des chose pour le monté,le contrôle et pour volé,je pourrais faire de augmenté le saut de l’entity, de l’augmenté et qui flotte dans les air  :D___Est ce que je peux m’inspiré de l’entity bateau?___j’abandonne…

                    Voila ma signature

                    1 Reply Last reply Reply Quote 0
                    • leo01418
                      leo01418 last edited by

                      re alors j’ai modifié mon codage pour que sa soit juste une entity terrestre contrôlable mais j’ai plusieurs problèmes 1 mon entity est bloqué sur l’animation sauté 
                      2 mon entity ne peux pas jump
                      3 j’aimerais modifié le render
                      4 il ne peut pas avancé sauf quand je charge et saute

                      alors mon code ressemble à sa

                      package ed.enderdeath.mod.entity;
                      
                      import net.minecraft.entity.EntityAgeable;
                      import net.minecraft.entity.SharedMonsterAttributes;
                      import net.minecraft.entity.passive.EntityHorse;
                      import net.minecraft.entity.player.EntityPlayer;
                      import net.minecraft.util.StatCollector;
                      import net.minecraft.world.World;
                      
                      public  class EntityDragonDindeSauvage extends EntityHorse
                      {
                      public EntityDragonDindeSauvage(World model)
                      {
                      super(model);
                      }
                      
                      public void applyEntityAttributes()
                          {
                              super.applyEntityAttributes();
                              this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(3D);    
                              this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.5D);
                          }  
                      
                      public boolean canBeSteered()
                          {
                              return true;
                          }
                      
                          public boolean isHorseSaddled()
                          {
                              return true;
                          }
                      
                      public boolean isHorseJumping()
                          {
                              return true;
                          }
                      
                      public boolean isTame()
                          {
                              return true;
                          }
                      
                          public boolean isChested()
                          {
                              return false;
                          } 
                      
                      public boolean interact(EntityPlayer par1EntityPlayer)
                        {
                            if (super.interact(par1EntityPlayer))
                            {
                                par1EntityPlayer.mountEntity(this);
                                return true;
                            }
                            for (int i = 0; i < 2; ++i)
                            {
                                this.worldObj.spawnParticle("largesmoke", this.posX + (this.rand.nextDouble() - 0.5D) * (double)this.width, this.posY + this.rand.nextDouble() * (double)this.height, this.posZ + (this.rand.nextDouble() - 0.5D) * (double)this.width, 0.0D, 0.0D, 0.0D);
                            }
                            return false;
                        }
                      
                      public boolean jumpRearingCounter()
                      {
                      return true;
                      }
                      public boolean jumpPower()
                      {
                      return true;
                      }
                      public boolean horsejumping()
                      {
                      return true;
                      }
                      public boolean isEatingHaystack()
                      {
                      return true;
                      }
                      public boolean isRearing()
                      {
                      return true;
                      }
                      @Override
                      public EntityAgeable createChild(EntityAgeable p_90011_1_)
                      {
                      return null;
                      }
                      
                      }
                      
                      

                      Edit je tient à dire que ce codage est assez vieux et un pique un peu les yeux

                      Voila ma signature

                      1 Reply Last reply Reply Quote 0
                      • AymericRed
                        AymericRed last edited by

                        public boolean isHorseJumping()
                        {
                        return true;
                        }
                        

                        Et tout les autres fonctions où tu as laissé true font que tu as ces problèmes, regarde ce que retourne cette fonction dans EntityHorse.

                        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 Reply Last reply Reply Quote 1
                        • leo01418
                          leo01418 last edited by

                          pour le saut c’ets réglé mais j’ai bout à cherché pour le blocage et qui se débloque quand on saute(je sais pas si cette phrase est française ) ni selle du blocage de l’animation

                          Voila ma signature

                          1 Reply Last reply Reply Quote 0
                          • leo01418
                            leo01418 last edited by

                            Autre petite question comment on peux modifié le saut de l’entity 
                            j’ai éssayé sa

                            private static final IAttribute horseJumpStrength = (new RangedAttribute("horse.jumpStrength", 1.7D, 0.0D, 4.0D)).setDescription("Jump Strength").setShouldWatch(true);
                            public void applyEntityAttributes()
                                {
                            
                                    super.applyEntityAttributes();
                                    this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(9D);    
                                    this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(1.5D);
                                    this.getAttributeMap().registerAttribute(horseJumpStrength);
                            
                                }  
                            
                            

                            Mais l’entity ne spawn méme plus

                            Edit:je pense qui me manque quelque chose 
                            et autre question on peut modifié le render?

                            Voila ma signature

                            1 Reply Last reply Reply Quote 0
                            • leo01418
                              leo01418 last edited by

                              Pour le render c’est bon mais pour le amélioré le saut + arrête l’animation du cheval qui saute  et que il faut sauté pour débloqué le cheval pour qui avance quand on le chevauche

                              Voila ma signature

                              1 Reply Last reply Reply Quote 0
                              • leo01418
                                leo01418 last edited by

                                résolu :3

                                Voila ma signature

                                1 Reply Last reply Reply Quote 0
                                • 1 / 1
                                • First post
                                  Last post
                                Design by Woryk
                                Contact / Mentions Légales

                                MINECRAFT FORGE FRANCE © 2018

                                Powered by NodeBB