MFF

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

    Ailes,Monture,item qui permet de spawn une entity,MultiTool

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    41 Messages 7 Publieurs 6.5k 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.
    • DylemD Hors-ligne
      Dylem
      dernière édition par

      @‘leo01418’:

      Nn j’avais mis sa dans ma classe de l’armure

      Le code pour toi c’est ça :

      
      private long temp;
      
      @SubscribeEvent
      public void fly(LivingUpdateEvent e) {
          if(e.entity instanceof EntityPlayer) {
              EntityPlayer player = (EntityPlayer)e.entity;
              this.temp = !(player.inventory.armorInventory[1].getItem() == enderdeath.FeatherChestplate) ? 0 : this.temp == 0 ? Clock.systemDefaultZone().millis() : Clock.systemDefaultZone().millis() - temp >= 5000 ? -1 : this.temp;
              player.capabilities.allowFlying = this.temp > 0;
              if(!player.capabilities.allowFlying)
                  player.capabilities.isFlying = false;
          }
      }
      
      

      Cependant tu dois le mettre dans une classe qui enregistre tes évènements, y’a pleins de tutos pour ça.

      Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

        j’ai mis sa ```java
        private long temp;

        @SubscribeEvent
        public void fly(LivingUpdateEvent e) {
            if(e.entity instanceof EntityPlayer) {
                EntityPlayer player = (EntityPlayer)e.entity;
                player.capabilities.allowFlying = player.inventory.hasItem(enderdeath.FeatherChestplate) && this.temp > 0;
                this.temp = !player.inventory.hasItem(enderdeath.FeatherChestplate) ? 0 : this.temp == 0 ? Clock.systemDefaultZone().millis() : Clock.systemDefaultZone().millis() - temp >= 5000 ? -1 : this.temp;
                if(!player.capabilities.allowFlying)
                    player.capabilities.isFlying = false;
            }
        }

        
        Sa marche mais j'arrive pas à revolé

        Voila ma signature

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

          essaie de jeter l’item et de le reprendre et la tu pourras revoler, c’est pas ce que tu voulais ?

          PS: Je vais pas te faire tout ton code à chaque fois, essaie de suivre un tuto java

          Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

            Au faite je peux volé quand je met le plastron et que je l’enlevé je peux volé un certain temps,le codage sert à rechargé le temps de vol?

            Ps:Excuse-Moi j’essaierais de me débrouillé tout seul

            Voila ma signature

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

              N’oublie pas le player.sendPlayerAbilities()

              Moddeur 1.8

              Développeur Java

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

                @‘Snowy_1803’:

                N’oublie pas le player.sendPlayerAbilities()

                chez moi ça marche sans.

                [size=smallAu faite je peux volé quand je met le plastron et que je l’enlevé je peux volé un certain temps,le codage sert à rechargé le temps de vol?]

                Si t’as copié mon dernier code normalement quand tu l’enlèves tu tombes, mais il faut que tu vérifies que l’ItemStack est pas null dans la première condition ternaire.

                Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                  Au faite quand je met le plastron je peux volé une fois et ensuite je peux l’avoir pendant 10 minutes je peux pas revolée donc je dois enlevée le plastron le remettre et la je n’arrive plus à revolé et je dois enlevé le plastron pour revolé et j’ai mis sa dans ma classe d’évent

                  Voila ma signature

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

                    @‘leo01418’:

                    Au faite quand je met le plastron je peux volé une fois et ensuite je peux l’avoir pendant 10 minutes je peux pas revolée donc je dois enlevée le plastron le remettre et la je n’arrive plus à revolé et je dois enlevé le plastron pour revoler

                    Oui, c’est ce que le code fait. Si tu veux qu’après 5 autres secondes tu puisse revoler y’a pas grand chose à changer, je te laisse le deviner par toi-même je suis au taff la.

                    Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                      Ok Excuse x)

                      Voila ma signature

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

                        Le problème avec le code de @Dylem, c’est que la variable temp est commune à tous les joueurs. Essaie ton code en multi, tu verras que tous les joueurs partagent la même valeur. Essaie soit d’adapter ton code sans utiliser de variable, soit de te servir de world.getTotalWorldTime() (genre if (world.getTotalWorldTime % 5 * 20 == 0)) ou encore soit d’enregistrer ta variable temp dans les tags du joueur.

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

                          Oui j’ai testé et tout les joueur partage la même  valeur
                          Mais je ne vois pas comme faire

                          Voila ma signature

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

                            Comme Sa

                            private long temp;
                            private World world;
                            
                            @SubscribeEvent
                            public void fly(LivingUpdateEvent e) {
                               if(e.entity instanceof EntityPlayer) 
                               { 
                                if(world.getTotalWorldTime() % 5 * 20 == 0);
                            {
                             EntityPlayer player = (EntityPlayer)e.entity;
                                   player.capabilities.allowFlying = player.inventory.hasItem(enderdeath.StickFly) && this.temp > 0;
                                   this.temp = !player.inventory.hasItem(enderdeath.StickFly) ? 0 : this.temp == 0 ? Clock.systemDefaultZone().millis() : Clock.systemDefaultZone().millis() - temp >= 5000 ? -1 : this.temp;
                            if(!player.capabilities.allowFlying)
                                    player.capabilities.isFlying = false;
                            
                            }
                            
                               }
                            }
                            

                            Voila ma signature

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

                              -> tag nbt.
                              Et non, pas comme ça, la world est null, tu vas te manger un npe.

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

                                Il faut que je mette quoi à???

                                %(#666600)[[font=monospace].]%(#000000)[[font=monospace]getTotalWorldTime]%(#666600)[[font=monospace]()]
                                

                                Voila ma signature

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

                                  Il faudrait surtout que t’apprennes le Java, car là franchement en + de ne respecter aucune convention, tu ne comprends rien du code. Écoute ce n’est pas à nous de te pondre le code tout bien, tout fait. C’est à toi de posséder une base et seulement après on pourra te venir en aide. La méthode getTotalWorldTime() est à utiliser comme ceci si tu souhaites savoir lorsque 5 secondes viennent d’être écoulées : if(player.worldObj.getTotalWorldTime() % 5 * 20 == 0)

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

                                    J’ai à profondi mes peu connaissance en java grâce à ceci j’ai su faire le codage des ailes merci beaucoup  😉

                                    Voila ma signature

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

                                      Bonjour je reviens sur ce sujet parce que mon problème de monture qui ne peux pas sauté et que je souhaite modifié le render n’est pas résolu je l’avais oublié  😛
                                      alors mon code na pas changé depuis longtemps

                                      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;
                                      }
                                      
                                      }
                                      
                                      

                                      Voila ma signature

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

                                      MINECRAFT FORGE FRANCE © 2024

                                      Powered by NodeBB