MFF

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

    L'event drop

    Planifier Épinglé Verrouillé Déplacé Les events
    1.6.x
    14 Messages 5 Publieurs 10.0k 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.
    • MinecraftienneM Hors-ligne
      Minecraftienne
      dernière édition par

      Salut,

      Est-ce qu’il est possible que le drop soit un nombre aléatoire entre 0 et 3 par exemple?

      J’ai vu cette méthode dans le cochon :

      protected void dropFewItems(boolean par1, int par2)
      {
      int j = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + par2);
      
      for (int k = 0; k < j; ++k)
      {
      if (this.isBurning())
      {
      this.dropItem(Item.porkCooked.itemID, 1);
      }
      else
      {
      this.dropItem(Item.porkRaw.itemID, 1);
      }
      }
      
      if (this.getSaddled())
      {
      this.dropItem(Item.saddle.itemID, 1);
      }
      }
      

      Mais je ne sais pas comment l’utiliser avec forge :s

      Merci d’avance 🙂

      1 réponse Dernière réponse Répondre Citer 0
      • elias54E Hors-ligne
        elias54 Administrateurs
        dernière édition par

        C’est possible, tout simplement, les lignes où il y a “dropItem”, au bout tu as le chiffre 1, tu le remplace par : rand.nextInt(3) et puis voilà (bien sur, faut virer la boucle for 😉 )

        Mon site | GitHub

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

          J’ai essayé mais ça me dit que " void is an invalid type for the variable dropFewItems " et rand me dit comme erreur " rand cannot be resolved or is not a field ".

          Voici ma classe sans le drop aléatoire :

          package nyvelia.common;
          
          import net.minecraft.entity.item.EntityItem;
          import net.minecraft.entity.passive.EntityWolf;
          import net.minecraft.item.Item;
          import net.minecraft.item.ItemStack;
          import net.minecraftforge.event.ForgeSubscribe;
          import net.minecraftforge.event.entity.living.LivingDropsEvent;
          
          public class LivingEvent
          {
          @ForgeSubscribe
          public void onLivingDrops(LivingDropsEvent event)
          {
          if(event.entity instanceof EntityWolf)
          {
          EntityItem newdrop = new EntityItem(event.entity.worldObj, event.entity.posX, event.entity.posY, event.entity.posZ,
          new ItemStack(Nyvelia.Tissu, 1));
          event.drops.add(newdrop);
          }
          }
          }
          

          Je sais pas trop où l’ajouter en faite :s

          1 réponse Dernière réponse Répondre Citer 0
          • elias54E Hors-ligne
            elias54 Administrateurs
            dernière édition par

            “new ItemStack(Nyvelia.Tissu, 1));” remplace le 1 par rand.nextInt(3) alors 🙂

            Mon site | GitHub

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

              " rand cannot be resolved " T_T

              1 réponse Dernière réponse Répondre Citer 0
              • elias54E Hors-ligne
                elias54 Administrateurs
                dernière édition par

                Mh… envoie ta class !

                Mon site | GitHub

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

                  Je l’ai envoyé juste au-dessus ^^ j’ai juste changé " new ItemStack(Nyvelia.Tissu, 1)); " en " new ItemStack(Nyvelia.Tissu, rand.nextInt(3))); ".

                  1 réponse Dernière réponse Répondre Citer 0
                  • elias54E Hors-ligne
                    elias54 Administrateurs
                    dernière édition par

                    
                    package nyvelia.common;
                    
                    import net.minecraft.entity.item.EntityItem;
                    import net.minecraft.entity.passive.EntityWolf;
                    import net.minecraft.item.Item;
                    import net.minecraft.item.ItemStack;
                    import net.minecraftforge.event.ForgeSubscribe;
                    import net.minecraftforge.event.entity.living.LivingDropsEvent;
                    
                    public class LivingEvent
                    {
                    public final Random rand = new Random();
                    @ForgeSubscribe
                    public void onLivingDrops(LivingDropsEvent event)
                    {
                    if(event.entity instanceof EntityWolf)
                    {
                    EntityItem newdrop = new EntityItem(event.entity.worldObj, event.entity.posX, event.entity.posY, event.entity.posZ,
                    new ItemStack(Nyvelia.Tissu, rand.nextInt(3)));
                    event.drops.add(newdrop);
                    }
                    }
                    }
                    
                    

                    Voili voilou 🙂

                    Mon site | GitHub

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

                      Merci ça marche impec 🙂

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

                        Salut petit probleme mon eclipse me propose de créer l’anotation forgesubscribe je doit le faire?

                        merci de votre réponse

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

                          Remplace par @SubscribeEvent

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

                            @‘Portuar’:

                            Remplace par @SubscribeEvent

                            merci bien cela marche mais pourquoi je doit utiliser SubscribeEvent?

                            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

                              Car ForgeSubscribe a été remplacé par SubscribeEvent en 1.7

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

                              MINECRAFT FORGE FRANCE © 2024

                              Powered by NodeBB