• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Problème avec nouvelle plantation

    1.7.x
    1.7.x
    6
    17
    2892
    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.
    • M
      MrAzErTy31 dernière édition par robin4002

      Bonsoir tout le monde, désolé du flood intensif de topics, mais j’ai un problème que je n’arrive pas à résoudre (malgré mes recherches Google) donc j’explique :
      Je veux créer une nouvelle plante tout est bien, aucune erreur sur le debugger java mais quand je clique-droit sur la farmland avec la graine, le jeu crash :huh: Et je ne sais pas pourquoi 😕
      Classe du Block (Plantation) :

      package fr.mrazerty31.IHC4;
      
      import javax.swing.Icon;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      
      import net.minecraft.block.BlockCarrot;
      import net.minecraft.block.BlockCrops;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.creativetab.CreativeTabs;
      import net.minecraft.init.Items;
      import net.minecraft.item.Item;
      import net.minecraft.util.IIcon;
      
      public class BlockBerryPlant extends BlockCarrot
      {
          public static String[] type = new String[]{"b1", "b2", "b3", "b4", "b5", "b6", "b7"};
          private IIcon[] IconArray;
      
          public IIcon getIcon(int side, int metadata)
          {
              return metadata < type.length && metadata >= 0 ? IconArray[metadata] : IconArray[0];
          }
      
          public void registerIcons(IIconRegister iconregister)
          {
              IconArray = new IIcon[type.length];
      
              for(int i = 0; i < type.length; i++)
              {
                  IconArray[i] = iconregister.registerIcon("ihc4mod:" + type*);
              }
          }
      
          protected Item getSeedItem()
          {
              return IHC4.berrySeeds;
          }
      
          protected Item getCropItem()
          {
              return IHC4.berry;
          }
      
          public int damageDropped(int metadata)
          {
              return metadata;
          }
      }
      

      Crash report : http://pastebin.com/47T5HgTF

      Mes mods :

      >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
      CraftYourMenu : http://minecraftforgefrance.fr/showth…

      1 réponse Dernière réponse Répondre Citer 0
      • Überfap
        Überfap dernière édition par

        Envoie la classe Berry.java il y a une NPE dedans à la ligne 46 😉

        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

        1 réponse Dernière réponse Répondre Citer 0
        • M
          MrAzErTy31 dernière édition par

          Classe berry :

          
          package fr.mrazerty31.IHC4;
          
          import net.minecraft.block.Block;
          import net.minecraft.creativetab.CreativeTabs;
          import net.minecraft.entity.player.EntityPlayer;
          import net.minecraft.init.Blocks;
          import net.minecraft.item.ItemFood;
          import net.minecraft.item.ItemStack;
          import net.minecraft.potion.Potion;
          import net.minecraft.potion.PotionEffect;
          import net.minecraft.world.IBlockAccess;
          import net.minecraft.world.World;
          import net.minecraftforge.common.EnumPlantType;
          import net.minecraftforge.common.IPlantable;
          import net.minecraftforge.common.util.ForgeDirection;
          
          public class Berry extends ItemFood {
          public Berry(int p_i45339_1_, float p_i45339_2_, boolean p_i45339_3_) {
          super(p_i45339_1_, p_i45339_2_, p_i45339_3_);
          this.setCreativeTab(CreativeTabs.tabFood);
          }
          }
          
          

          Voici mon crash report : http://pastebin.com/1j3HRNpX

          Mes mods :

          >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
          CraftYourMenu : http://minecraftforgefrance.fr/showth…

          1 réponse Dernière réponse Répondre Citer 0
          • Diangle
            Diangle dernière édition par

            @‘MrAzErTy31’:

            Classe berry :

            
            package fr.mrazerty31.IHC4;
            
            import net.minecraft.block.Block;
            import net.minecraft.creativetab.CreativeTabs;
            import net.minecraft.entity.player.EntityPlayer;
            import net.minecraft.init.Blocks;
            import net.minecraft.item.ItemFood;
            import net.minecraft.item.ItemStack;
            import net.minecraft.potion.Potion;
            import net.minecraft.potion.PotionEffect;
            import net.minecraft.world.IBlockAccess;
            import net.minecraft.world.World;
            import net.minecraftforge.common.EnumPlantType;
            import net.minecraftforge.common.IPlantable;
            import net.minecraftforge.common.util.ForgeDirection;
            
            public class Berry extends ItemFood {
            public Berry(int p_i45339_1_, float p_i45339_2_, boolean p_i45339_3_) {
            super(p_i45339_1_, p_i45339_2_, p_i45339_3_);
            this.setCreativeTab(CreativeTabs.tabFood);
            }
            }
            
            

            Voici mon crash report : http://pastebin.com/1j3HRNpX

            Pas cette classe l’autre celui de la seed.

            1 réponse Dernière réponse Répondre Citer 0
            • M
              MrAzErTy31 dernière édition par

              Je n’ai pas créer une classe pour ça : (dans le preInit)

              
              berrySeeds = new ItemSeeds(blockBerry, Blocks.farmland).setUnlocalizedName("berry_seeds").setTextureName("ihc4mod:berry_seeds").setCreativeTab(CreativeTabs.tabMaterials);
              
              

              Mes mods :

              >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
              CraftYourMenu : http://minecraftforgefrance.fr/showth…

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

                Tu as fait des changements entre temps alors, car dans le premier crash il y avait un npe ici :
                at fr.mrazerty31.IHC4.Berry.onItemUse(Berry.java:46)

                Ton les cas ton bloc est null, envoie tout ta classe principale

                1 réponse Dernière réponse Répondre Citer 0
                • M
                  MrAzErTy31 dernière édition par

                  Classe principale :

                  
                  package fr.mrazerty31.IHC4;
                  
                  import net.minecraft.block.Block;
                  import net.minecraft.creativetab.CreativeTabs;
                  import net.minecraft.init.Blocks;
                  import net.minecraft.init.Items;
                  import net.minecraft.item.Item;
                  import net.minecraft.item.ItemSeeds;
                  import net.minecraft.item.ItemStack;
                  import net.minecraft.util.WeightedRandomChestContent;
                  import net.minecraftforge.common.ChestGenHooks;
                  import cpw.mods.fml.common.Mod;
                  import cpw.mods.fml.common.Mod.EventHandler;
                  import cpw.mods.fml.common.SidedProxy;
                  import cpw.mods.fml.common.event.FMLInitializationEvent;
                  import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                  import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                  import cpw.mods.fml.common.registry.GameRegistry;
                  import fr.mrazerty31.IHC4.proxy.CommonProxy;
                  
                  @Mod(modid = IHC4.MODID, name = "IHC4 Mod", version = IHC4.VERSION)
                  public class IHC4
                  {
                  public static final String MODID = "ihc4mod";
                  public static final String VERSION = "1.0";
                  public static IHC4 instance;
                  
                  @SidedProxy(clientSide = "fr.mrazerty31.IHC4.proxy.ClientProxy", serverSide = "fr.mrazerty31.IHC4.proxy.CommonProxy")
                  public static CommonProxy proxy;
                  
                  /* Déclaration des Items */
                  public static Item berry, ironBerry, goldenBerry, berrySeeds;
                  
                  /* Déclaration des Blocks */
                  public static Block blockBerry;
                  
                  @EventHandler
                  public void preInit(FMLPreInitializationEvent event)
                  {
                  berry = new Berry(1, 0.3F, false).setUnlocalizedName("berry").setTextureName("ihc4mod:berry");
                  ironBerry = new IronBerry(1, 0.3F, false).setUnlocalizedName("iron_berry").setTextureName("ihc4mod:berry_iron");
                  goldenBerry = new GoldBerry(1, 0.3F, false).setUnlocalizedName("golden_berry").setTextureName("ihc4mod:berry_gold");
                  berrySeeds = new ItemSeeds(blockBerry, Blocks.farmland).setUnlocalizedName("berry_seeds").setTextureName("ihc4mod:berry_seeds").setCreativeTab(CreativeTabs.tabMaterials);
                  
                  blockBerry = new BlockBerryPlant().setBlockName("block_berry");
                  }
                  
                  @EventHandler
                  public void init(FMLInitializationEvent event)
                  {
                  GameRegistry.registerItem(berry, "berry");
                  GameRegistry.registerItem(ironBerry, "iron_berry");
                  GameRegistry.registerItem(goldenBerry, "golden_berry");
                  GameRegistry.registerItem(berrySeeds, "berry_seeds");
                  
                  GameRegistry.registerBlock(blockBerry, "block_berry");
                  ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, new WeightedRandomChestContent(berry, 0, 0, 4, 10));
                  proxy.registerRender();
                  }
                  
                  @EventHandler
                  public void postInit(FMLPostInitializationEvent event)
                  {
                  GameRegistry.addRecipe(new ItemStack(ironBerry), "ib", 'i', Blocks.iron_block, 'b', berry);
                  GameRegistry.addRecipe(new ItemStack(goldenBerry), " g ", "gbg", " g ", 'g', Items.gold_ingot, 'b', berry);
                  }
                  }
                  
                  

                  Merci de vos réponses 🙂

                  Mes mods :

                  >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
                  CraftYourMenu : http://minecraftforgefrance.fr/showth…

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

                    Ok, c’est bien ce que je pensais, toutes ta classe principale est mal foutu.
                    Normalement, ça devrait être comme ça :

                    preInit :
                    // initialisation des blocs
                    // enregistrement des blocs
                    // initialisation des items
                    // enregistrement des items

                    init :
                    // le reste.

                    Donc :

                    package fr.mrazerty31.IHC4;
                    
                    import net.minecraft.block.Block;
                    import net.minecraft.creativetab.CreativeTabs;
                    import net.minecraft.init.Blocks;
                    import net.minecraft.init.Items;
                    import net.minecraft.item.Item;
                    import net.minecraft.item.ItemSeeds;
                    import net.minecraft.item.ItemStack;
                    import net.minecraft.util.WeightedRandomChestContent;
                    import net.minecraftforge.common.ChestGenHooks;
                    import cpw.mods.fml.common.Mod;
                    import cpw.mods.fml.common.Mod.EventHandler;
                    import cpw.mods.fml.common.SidedProxy;
                    import cpw.mods.fml.common.event.FMLInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                    import cpw.mods.fml.common.registry.GameRegistry;
                    import fr.mrazerty31.IHC4.proxy.CommonProxy;
                    
                    @Mod(modid = IHC4.MODID, name = "IHC4 Mod", version = IHC4.VERSION)
                    public class IHC4
                    {
                    public static final String MODID = "ihc4mod";
                    public static final String VERSION = "1.0";
                    public static IHC4 instance;
                    
                    @SidedProxy(clientSide = "fr.mrazerty31.IHC4.proxy.ClientProxy", serverSide = "fr.mrazerty31.IHC4.proxy.CommonProxy")
                    public static CommonProxy proxy;
                    
                    /* Déclaration des Items */
                    public static Item berry, ironBerry, goldenBerry, berrySeeds;
                    
                    /* Déclaration des Blocks */
                    public static Block blockBerry;
                    
                    @EventHandler
                    public void preInit(FMLPreInitializationEvent event)
                    {
                    blockBerry = new BlockBerryPlant().setBlockName("block_berry");
                    
                    GameRegistry.registerBlock(blockBerry, "block_berry");
                    
                    berry = new Berry(1, 0.3F, false).setUnlocalizedName("berry").setTextureName("ihc4mod:berry");
                    ironBerry = new IronBerry(1, 0.3F, false).setUnlocalizedName("iron_berry").setTextureName("ihc4mod:berry_iron");
                    goldenBerry = new GoldBerry(1, 0.3F, false).setUnlocalizedName("golden_berry").setTextureName("ihc4mod:berry_gold");
                    berrySeeds = new ItemSeeds(blockBerry, Blocks.farmland).setUnlocalizedName("berry_seeds").setTextureName("ihc4mod:berry_seeds").setCreativeTab(CreativeTabs.tabMaterials);
                    
                    GameRegistry.registerItem(berry, "berry");
                    GameRegistry.registerItem(ironBerry, "iron_berry");
                    GameRegistry.registerItem(goldenBerry, "golden_berry");
                    GameRegistry.registerItem(berrySeeds, "berry_seeds");
                    }
                    
                    @EventHandler
                    public void init(FMLInitializationEvent event)
                    {
                    ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, new WeightedRandomChestContent(berry, 0, 0, 4, 10));
                    proxy.registerRender();
                    }
                    
                    @EventHandler
                    public void postInit(FMLPostInitializationEvent event)
                    {
                    GameRegistry.addRecipe(new ItemStack(ironBerry), "ib", 'i', Blocks.iron_block, 'b', berry);
                    GameRegistry.addRecipe(new ItemStack(goldenBerry), " g ", "gbg", " g ", 'g', Items.gold_ingot, 'b', berry);
                    }
                    }
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • M
                      MrAzErTy31 dernière édition par robin4002

                      Merci pour la réponse 🙂 Mais ça crash toujours quand je place la graine sur la farmland
                      Voici le crash report : http://pastebin.com/Ee1uqUx8
                      D’après le crash report il me semble que ca viens de la classe du bloc
                      Classe du bloc plante :

                      
                      package fr.mrazerty31.IHC4;
                      
                      import javax.swing.Icon;
                      
                      import cpw.mods.fml.relauncher.Side;
                      import cpw.mods.fml.relauncher.SideOnly;
                      
                      import net.minecraft.block.BlockCarrot;
                      import net.minecraft.block.BlockCrops;
                      import net.minecraft.client.renderer.texture.IIconRegister;
                      import net.minecraft.creativetab.CreativeTabs;
                      import net.minecraft.init.Items;
                      import net.minecraft.item.Item;
                      import net.minecraft.util.IIcon;
                      
                      public class BlockBerryPlant extends BlockCarrot
                      {
                      private String[] type = new String[]{"block_berry_stage_0", "block_berry_stage_1", "block_berry_stage_2", "block_berry_stage_3",
                      "block_berry_stage_4", "block_berry_stage_5", "block_berry_stage_6"};
                      private IIcon[] IconArray;
                      
                      public IIcon getIcon(int side, int metadata)
                      {
                      return metadata < type.length && metadata >= 0 ? IconArray[metadata] : IconArray[0];
                      }
                      
                      public void registerBlocksIcons(IIconRegister iconregister)
                      {
                          IconArray = new IIcon[type.length];
                          for(int i = 0; i < type.length; i++) IconArray[i] = iconregister.registerIcon("ihc4mod:" + type*);
                      }
                      
                      protected Item getSeedItem()
                      {
                          return IHC4.berrySeeds;
                      }
                      
                      protected Item getCropItem()
                      {
                          return IHC4.berry;
                      }
                      
                      public int damageDropped(int metadata)
                      {
                          return metadata;
                      }
                      }
                      
                      

                      Mes mods :

                      >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
                      CraftYourMenu : http://minecraftforgefrance.fr/showth…

                      1 réponse Dernière réponse Répondre Citer 0
                      • isador
                        isador Moddeurs confirmés Modérateurs dernière édition par

                        envoi ta classe blockBerryPlant, tu as un problème au getIcon

                        1 réponse Dernière réponse Répondre Citer 0
                        • M
                          MrAzErTy31 dernière édition par

                          (J’ai mis à jour mon post)

                          Mes mods :

                          >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
                          CraftYourMenu : http://minecraftforgefrance.fr/showth…

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

                            C’est registerBlockIcons et non registerBlocksIcons

                            1 réponse Dernière réponse Répondre Citer 1
                            • M
                              MrAzErTy31 dernière édition par

                              OH god … Merci beaucoup robin ! 😄

                              Mes mods :

                              >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
                              CraftYourMenu : http://minecraftforgefrance.fr/showth…

                              1 réponse Dernière réponse Répondre Citer 0
                              • isador
                                isador Moddeurs confirmés Modérateurs dernière édition par

                                pense a mettre ton sujet en résolue 😉

                                1 réponse Dernière réponse Répondre Citer 0
                                • M
                                  MidacoYT dernière édition par

                                  je sais que ce sujet est vieux et que vous ne faite plus de support pour la 1.7.10 mais j’ai un problème c’est que mon éclipse accepte pas les “*” dans les ligne de code

                                  comme ici

                                  for(int i = 0; i < type.length; i++) IconArray* = iconregister.registerIcon("valerium:" + type*);
                                  
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • robin4002
                                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par robin4002

                                    ça devrait être [i] et non une étoile.

                                    M 1 réponse Dernière réponse Répondre Citer 0
                                    • M
                                      MidacoYT @robin4002 dernière édition par

                                      Ce message a été supprimé !
                                      1 réponse Dernière réponse Répondre Citer 0
                                      • 1 / 1
                                      • Premier message
                                        Dernier message
                                      Design by Woryk
                                      Contact / Mentions Légales

                                      MINECRAFT FORGE FRANCE © 2018

                                      Powered by NodeBB