MFF

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

    Faire changer un item avec un clique droit sur un block

    Planifier Épinglé Verrouillé Déplacé Résolu 1.9.x et 1.10.x
    1.9.4
    39 Messages 4 Publieurs 6.3k 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.
    • TituyaT Hors-ligne
      Tituya
      dernière édition par

      comme ça ?

      
      package com.tuto.mod.blocks;
      
      import com.tuto.mod.init.ItemsMod;
      
      import net.minecraft.block.Block;
      import net.minecraft.block.material.Material;
      import net.minecraft.block.state.IBlockState;
      import net.minecraft.entity.item.EntityItem;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.item.ItemStack;
      import net.minecraft.util.EnumFacing;
      import net.minecraft.util.math.BlockPos;
      import net.minecraft.util.text.TextComponentString;
      import net.minecraft.util.text.TextComponentTranslation;
      import net.minecraft.util.text.TextFormatting;
      import net.minecraft.world.World;
      
      public class MachineMod extends Block
      {
      
          public MachineMod(Material materialIn)
          {
              super(materialIn);
              setResistance(3F);
              setHardness(3F);
              setHarvestLevel("pickaxe", 1);
          }
      
          public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ)
          {
               if(player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() == ItemsMod.supT)
               {
                   player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(ItemsMod.dust));
               }
      
               else
               {
                   player.addChatMessage(new TextComponentString("L'item n'est pas le bon"));
               }
          }
      
      }
      
      

      Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

        Je teste et je te réponds
        Essaye de faire ça :

        
        player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(ItemsMod.dust));
        
        

        Mes Sites(Mes Sites)
        |
        |    Site général : Game & play
        |   Site de projets (en dev !) :Infinite's Ressources
        J'ai et je suis content d'avoir 16,75 points d'ICRating

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

          non ça ne fonctionne pas, ce n’est pas ça alors… je vois pas vraiment quoi mettre en tant qu’index


          C’est exactement ce que j’ai mit avant ;D Et sinon non toujours pas 😢

          Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

            Moi de mon coté en 1.7.10 l’item est remplacé pendant un millième de seconde
            et toi ?

            Mes Sites(Mes Sites)
            |
            |    Site général : Game & play
            |   Site de projets (en dev !) :Infinite's Ressources
            J'ai et je suis content d'avoir 16,75 points d'ICRating

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

              Je ne peu pas lancer le jeu ! c’est ça le probleme ;D
              la fonction OnBlockActivated demande un return en false, ce qui ne fonctionne alors pas :d

              Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

                Crash report ?

                EDIT : essaie de retourner en true

                Mes Sites(Mes Sites)
                |
                |    Site général : Game & play
                |   Site de projets (en dev !) :Infinite's Ressources
                J'ai et je suis content d'avoir 16,75 points d'ICRating

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

                  Ok deja le jeu ce lance, c’est bien ça ! j’avais juste mal fait ma déclaration de block, deux block register au meme id …
                  Mais en jeu, cela ne fait absolument rien … meme pas le message
                  Je rappelle

                  package com.tuto.mod.blocks;
                  
                  import com.tuto.mod.init.ItemsMod;
                  
                  import net.minecraft.block.Block;
                  import net.minecraft.block.material.Material;
                  import net.minecraft.block.state.IBlockState;
                  import net.minecraft.entity.item.EntityItem;
                  import net.minecraft.entity.player.EntityPlayer;
                  import net.minecraft.item.ItemStack;
                  import net.minecraft.util.EnumFacing;
                  import net.minecraft.util.math.BlockPos;
                  import net.minecraft.util.text.TextComponentString;
                  import net.minecraft.util.text.TextComponentTranslation;
                  import net.minecraft.util.text.TextFormatting;
                  import net.minecraft.world.World;
                  
                  public class MachineMod extends Block
                  {
                  
                      public MachineMod(Material materialIn)
                      {
                          super(materialIn);
                          setResistance(3F);
                          setHardness(3F);
                          setHarvestLevel("pickaxe", 1);
                      }
                  
                      public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ)
                      {
                           if(player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() == ItemsMod.supT)
                           {
                               player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(ItemsMod.dust));
                           }
                  
                           else
                           {
                               player.addChatMessage(new TextComponentString("L'item n'est pas le bon"));
                           }
                      }
                  
                  }
                  

                  Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

                    rajoute un return true  avant la dernière accolade

                    Mes Sites(Mes Sites)
                    |
                    |    Site général : Game & play
                    |   Site de projets (en dev !) :Infinite's Ressources
                    J'ai et je suis content d'avoir 16,75 points d'ICRating

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

                      Je l’ai deja fait avant et ca ne fonctionne pas, c’est pour ça que je l’ai delete

                      Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

                        Essaie de le mettre et envoie moi ton crash report

                        Mes Sites(Mes Sites)
                        |
                        |    Site général : Game & play
                        |   Site de projets (en dev !) :Infinite's Ressources
                        J'ai et je suis content d'avoir 16,75 points d'ICRating

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

                          Je n’ai pas de crash, Ni d’erreur dans les logs …

                          Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

                          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

                            Ajoutes un @Override au dessus de la fonction, si tu as une erreur tu n’as pas les bon arguments.

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

                              Avec ou sans le return ?

                              Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

                              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

                                Avec, une fonction de type boolean doit forcement avoir un return.

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

                                  en return quoi ?
                                  return true ?

                                  et j’ai l’erreur avec le @Override, je ne vois pas pourquoi et comment changé ceci, je pense que cela vien de ça

                                  player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(ItemsMod.dust));
                                  

                                  mais je ne sais pas pourquoi ;C

                                  le code actuel

                                  package com.tuto.mod.blocks;
                                  
                                  import com.tuto.mod.init.ItemsMod;
                                  
                                  import net.minecraft.block.Block;
                                  import net.minecraft.block.material.Material;
                                  import net.minecraft.block.state.IBlockState;
                                  import net.minecraft.entity.item.EntityItem;
                                  import net.minecraft.entity.player.EntityPlayer;
                                  import net.minecraft.item.ItemStack;
                                  import net.minecraft.util.EnumFacing;
                                  import net.minecraft.util.math.BlockPos;
                                  import net.minecraft.util.text.TextComponentString;
                                  import net.minecraft.util.text.TextComponentTranslation;
                                  import net.minecraft.util.text.TextFormatting;
                                  import net.minecraft.world.World;
                                  
                                  public class MachineMod extends Block
                                  {
                                  
                                      public MachineMod(Material materialIn)
                                      {
                                          super(materialIn);
                                          setResistance(3F);
                                          setHardness(3F);
                                          setHarvestLevel("pickaxe", 1);
                                      }
                                  
                                      @Override
                                      public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ)
                                      {
                                           if(player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() == ItemsMod.supT)
                                           {
                                               player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(ItemsMod.dust));
                                           }
                                  
                                           else
                                           {
                                               player.addChatMessage(new TextComponentString("L'item n'est pas le bon"));
                                           }
                                           return true;
                                      }
                                  
                                  }
                                  

                                  Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

                                    Si tu as une erreur, c’est que tu n’as pas implémenté la bonne fonction, essaie de prendre la bonne cette fois-ci.
                                    Si tu n’es pas sûr d’y arriver, tu peux aller dans Source -> Override/Implement methods…

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

                                      je viens de regarder, il y a aussi la fonction onBlockClicked, est-elle mieux approprié ?
                                      J’essaye quelque chose, je vous dit si cela fonctionne
                                      [EDIT]
                                      Cela fonctionne merci !
                                      et par contre, quand je n’ai pas d’item ou le mauvais, cela spam le chat, il faudrait rajouter quelque chose apres du style attendre 1 seconde Mais comment faire ?

                                      Il y a deux choses qui m'énerve dans la vie : les babouches et les personnes jouant en 1.7.10 !

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

                                        onBlockActivated -> Clic droit
                                        onBlockClicked -> Clic gauche

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

                                        MINECRAFT FORGE FRANCE © 2024

                                        Powered by NodeBB