MFF

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

    Mêttre des effets sur un Kit

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    28 Messages 5 Publieurs 7.6k 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Il n’y a pas de fonction pré faite pour ça, il faut que tu la fasse toi-même.

      exemple :

      ​public boolean playerAsItem(EntityPlayer player, Item item, int metadata)
      {
          for (int i = 0; i < player.inventory.mainInventory.length; ++i)
          {
              if (player.inventory.mainInventory* != null && player.inventory.mainInventory*.getItem() == item && player.inventory.mainInventory[j].getItemDamage() == metadata)
              {
                  return true;
              }
          }
      return false;
      }
      
      1 réponse Dernière réponse Répondre Citer 0
      • H33nokH Hors-ligne
        H33nok
        dernière édition par

        Merci ,Une fois que j’ai créer la fonction dans ma class comment je fais pour ici ?

        ItemStack apple = this.playerAsItem(?????);
        
        1 réponse Dernière réponse Répondre Citer 0
        • DeletedD Hors-ligne
          Deleted
          dernière édition par

          @‘H33nok’:

          Merci ,Une fois que j’ai créer la fonction dans ma class comment je fais pour ici ?

          ItemStack apple = this.playerAsItem(?????);
          

          Perso je dirai cimmz ceci mais je ne suis pas sûr pour le metadata : si c est pas 0 mets 1

          ItemStack apple = this.playerAsItem(Minecraft.getMinecraft.thePlayer,Items.apple, 0);

          Tiens moi au courant stp 😉

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

            ça me fait une erreur enfaite… ça me fait :

            Type mismatch: cannot convert from boolean to ItemStack
            
            2 quick fixes available :
            
            Change type of 'apple' to 'boolean'
            
            Change return type of 'playerAsItem(..)' to 'ItemStack
            

            ItemStack apple = this.playerAsItem(Minecraft.getMinecraft().thePlayer,Items.apple, 0); Je met ça pourtant

            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

              La fonction que je t’ai donné permet directement de savoir si ou ou non le joueur à l’item, et on n’utilise JAMAIS Minecraft.getMinecraft().thePlayer sur une classe serveur, ça détruit la compatibilité serveur.

              ​boolean asApple = playerAsItem(player, Items.apples, 0);
              

              ou alors tu peux directement faire :

              ​if(playerAsItem(player, Items.apples, 0))
              
              1 réponse Dernière réponse Répondre Citer 0
              • H33nokH Hors-ligne
                H33nok
                dernière édition par

                       ItemStack boots = player.getEquipmentInSlot(1);
                ItemStack leggings = player.getEquipmentInSlot(2);
                ItemStack chestPlate = player.getEquipmentInSlot(3);
                ItemStack helmet = player.getEquipmentInSlot(4);
                boolean asApple = playerAsItem(player, Items.apple, 0);
                
                if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto)
                {
                player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));
                }
                

                Comment j’ajoute l’item Apple ?.. 😕

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

                  @‘H33nok’:

                         ItemStack boots = player.getEquipmentInSlot(1);
                  ItemStack leggings = player.getEquipmentInSlot(2);
                  ItemStack chestPlate = player.getEquipmentInSlot(3);
                  ItemStack helmet = player.getEquipmentInSlot(4);
                         boolean asApple = playerAsItem(player, Items.apple, 0);
                         
                  
                  if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto)
                  {
                  player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));
                  }
                  

                  Comment j’ajoute l’item Apple ?.. 😕

                  Tout simplement en ajoutant le boolean dans tes conditions
                   && asApple….

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

                    Je l’ai déjà fait ça , sa marche pas car c’est un Boolean

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

                      Bah oui merde ^^ J’avais oublié de rajouter ça

                      Par contre comment je pourrai faire une fois mi le kit sa envoie un message dans le chat genre ‘Vous avez un kit de speed’ ?

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

                        bah tu as déjà ta condition qui t’ajoute un effet de potion donc tu as juste à rajouter ce code là en dessous :

                        ​ player.addChatComponentMessage(new ChatComponentTranslation("tile.testTonMessage.kitVitesseDetectee", new Object[0]));
                        

                        et ensuite dans tes dossiers lang tu ajoutes la traduction en mettant

                        tile.testTonMessage.kitVitesseDetectee = traduction que tu veux

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

                          Le message il me le met à l’infini , y’aurai t-il une méthode pour en afficher qu’un ?

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

                            Je te propose ce code ou tu fais une boucle for qui affiche le message autant de fois que = i

                            (Desole du manque de balise, sur mon tel elles ne marchent pas…)

                            [font=Monaco, Consolas, Courier, monospace    ItemStack boots = player.getEquipmentInSlot(1);
                            ]
                            [size=x-small    ItemStack leggings = player.getEquipmentInSlot(2);]

                            [size=x-small    ItemStack chestPlate = player.getEquipmentInSlot(3);]

                            [size=x-small    ItemStack helmet = player.getEquipmentInSlot(4);]

                            [size=x-small       boolean asApple = playerAsItem(player, Items.apple, 0);]

                            [size=x-small       ]

                            [font=Monaco, Consolas, Courier, monospace    if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto] [size=xx-small && asApple)]

                            [font=Monaco, Consolas, Courier, monospace    {]
                            [font=Monaco, Consolas, Courier, monospace        player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));]
                            [font=Monaco, Consolas, Courier, monospace for (int i = 0; i < 1;  i++)]
                            [font=Monaco, Consolas, Courier, monospace{]

                            [size=x-largeplayer][size=x-large.][size=x-largeaddChatComponentMessage][size=x-large(][size=x-largenew] [size=x-largeChatComponentTranslation][size=x-large(][size=x-large“tile.testTonMessage.kitVitesseDetectee”][size=x-large,] [size=x-largenew] [size=x-largeObject][size=x-large[[/font]][size=x-large0][size=x-large]));]
                            [font=Monaco, Consolas, Courier, monospace}]
                            [font=Monaco, Consolas, Courier, monospace}]

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

                              Fonctionne pas 😕 sa me l’affiche illimité

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

                                @‘H33nok’:

                                Fonctionne pas 😕 sa me l’affiche illimité

                                remplace la boucle for par

                                ​if (i < 1) { i++; %(#000000)[[size=xx-small]player]%(#666600)[[size=xx-small].]%(#000000)[[size=xx-small]addChatComponentMessage]%(#666600)[[size=xx-small](]%(#7f0055)[[size=xx-small]**new**]%(#000000)[[size=xx-small]ChatComponentTranslation]%(#666600)[[size=xx-small](]%(#2a00ff)[[size=xx-small]"tile.testTonMessage.kitVitesseDetectee"]%(#666600)[[size=xx-small],]%(#555555)[[size=xx-small] ]%(#7f0055)[[size=xx-small]**new**]%(#555555)[[size=xx-small] ]%(#000000)[[size=xx-small]Object]%(#666600)[[size=xx-small][[/font]]%(#646464)[[size=xx-small]0]%(#666600)[[size=xx-small]]));] }
                                

                                et crées une variable de type int égal à 0

                                Sinon je ne sais pas  :huh: :huh:

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

                                  Rahh ça marche toujours pas 😕

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

                                    Quelqu’un serait comment faire ? 😕 car le message s’affiche en illimité

                                    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

                                      Envoie toute ta fonction onArmorTick.

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

                                            ItemStack boots = player.getEquipmentInSlot(1);
                                               ItemStack leggings = player.getEquipmentInSlot(2);
                                               ItemStack chestPlate = player.getEquipmentInSlot(3);
                                               ItemStack helmet = player.getEquipmentInSlot(4);
                                               boolean asApple = playerAsItem(player, Items.apple, 0);
                                        
                                               if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto)
                                               {
                                                   player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));
                                                   player.addChatComponentMessage(new ChatComponentTranslation("tile.testTonMessage.kitVitesseDetectee", new Object[0]));
                                               }
                                        

                                        Voilà

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

                                          @‘H33nok’:

                                              ItemStack boots = player.getEquipmentInSlot(1);
                                                 ItemStack leggings = player.getEquipmentInSlot(2);
                                                 ItemStack chestPlate = player.getEquipmentInSlot(3);
                                                 ItemStack helmet = player.getEquipmentInSlot(4);
                                                 boolean asApple = playerAsItem(player, Items.apple, 0);
                                                     
                                          
                                                 if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto)
                                                 {
                                                     player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));
                                                     player.addChatComponentMessage(new ChatComponentTranslation("tile.testTonMessage.kitVitesseDetectee", new Object[0]));
                                                 }
                                          

                                          Voilà

                                          n’oublie pas de boolean  et la boucle for

                                          ​[size=x-small       if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto && asApple)]
                                          
                                          [size=x-small       {]
                                          
                                          [size=x-small           player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));]
                                          [size=x-smallfor (int i = 0; i<1; i++) {]
                                          [size=x-smallif (!World.worldObj.isRemote){]
                                          [size=x-small           player.addChatComponentMessage(new ChatComponentTranslation("tile.testTonMessage.kitVitesseDetectee", new Object[0]));]
                                          [size=x-small}}]
                                          [size=x-small       }]
                                          
                                          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

                                            Fait comme ça :

                                            ItemStack boots = player.getEquipmentInSlot(1);
                                            ItemStack leggings = player.getEquipmentInSlot(2);
                                            ItemStack chestPlate = player.getEquipmentInSlot(3);
                                            ItemStack helmet = player.getEquipmentInSlot(4);
                                            boolean asApple = playerAsItem(player, Items.apple, 0);
                                            
                                            if(boots != null && boots.getItem() == ModTutoriel.bootsTuto && leggings != null && leggings.getItem() == ModTutoriel.leggingsTuto && chestPlate != null && chestPlate.getItem() == ModTutoriel.chestPlateTuto && helmet != null && helmet.getItem() == ModTutoriel.helmetTuto)
                                            {
                                            player.addPotionEffect(new PotionEffect(Potion.moveSpeed.getId(), 10, 10));
                                            if(!player.getEntityData().getBoolean("kitVitesse")
                                            {
                                            player.addChatComponentMessage(new ChatComponentTranslation("tile.testTonMessage.kitVitesseDetectee"));
                                            player.getEntityData().setBoolean("kitVitesse", true);
                                            }
                                            }
                                            
                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB