MFF

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

    Ajouter un rendu avancé à votre bloc via TESR

    Planifier Épinglé Verrouillé Déplacé Les blocs
    1.7.x
    109 Messages 23 Publieurs 38.6k Vues 3 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.
    • YorwanY Hors-ligne
      Yorwan
      dernière édition par

      salut j’ai un petit probleme : le carré tout moche apparait alors que le return de getRenderType est bien le bon ;

      la classe du block ```java
      package com.mathiasetampes.entreprise.common;

      import com.mathiasetampes.entreprise.proxy.ClientProxy;

      import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.block.Block;
      import net.minecraft.block.BlockContainer;
      import net.minecraft.block.material.Material;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.entity.EntityLivingBase;
      import net.minecraft.entity.item.EntityItem;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.inventory.IInventory;
      import net.minecraft.item.ItemStack;
      import net.minecraft.nbt.NBTTagCompound;
      import net.minecraft.tileentity.TileEntity;
      import net.minecraft.util.IIcon;
      import net.minecraft.util.MathHelper;
      import net.minecraft.world.World;

      public class Distributeur extends BlockContainer
      {

      private IIcon front;
      protected Distributeur()
      {
      super(Material.rock); //Mettez le material qui convient
      this.setResistance(8.0F);
      this.setHarvestLevel(“pickaxe”, 2); //Outil pour casser le bloc, pour le chiffre : 0=bois, 1=pierre, 2=fer, 3=diamant
      }

      @Override
      public TileEntity createNewTileEntity(World world, int metadata) //Instancie le TileEntity
      {
      return new TileEntityDistributeur();
      }

      @Override
      public boolean hasTileEntity(int metadata) //Permet de savoir si le bloc a un TileEntity
      {
      return true;
      }
      public void breakBlock(World world, int x, int y, int z, Block block, int metadata)
      {
      TileEntity tileentity = world.getTileEntity(x, y, z);

      if (tileentity instanceof IInventory)
      {
      IInventory inv = (IInventory)tileentity;
      for (int i1 = 0; i1 < inv.getSizeInventory(); ++i1)
      {
      ItemStack itemstack = inv.getStackInSlot(i1);

      if (itemstack != null)
      {
      float f = world.rand.nextFloat() * 0.8F + 0.1F;
      float f1 = world.rand.nextFloat() * 0.8F + 0.1F;
      EntityItem entityitem;

      for (float f2 = world.rand.nextFloat() * 0.8F + 0.1F; itemstack.stackSize > 0; world.spawnEntityInWorld(entityitem))
      {
      int j1 = world.rand.nextInt(21) + 10;

      if (j1 > itemstack.stackSize)
      {
      j1 = itemstack.stackSize;
      }

      itemstack.stackSize -= j1;
      entityitem = new EntityItem(world, (double)((float)x + f), (double)((float)y + f1), (double)((float)z + f2), new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));
      float f3 = 0.05F;
      entityitem.motionX = (double)((float)world.rand.nextGaussian() * f3);
      entityitem.motionY = (double)((float)world.rand.nextGaussian() * f3 + 0.2F);
      entityitem.motionZ = (double)((float)world.rand.nextGaussian() * f3);

      if (itemstack.hasTagCompound())
      {
      entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());
      }
      }
      }
      }

      world.func_147453_f(x, y, z, block);
      }

      super.breakBlock(world, x, y, z, block, metadata);
      }
      public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitx, float hity, float hitz)
      {
      if (world.isRemote)
      {
      return true;
      }
      else
      {
      FMLNetworkHandler.openGui(player, Entreprise.instance, 0, world, x, y, z);
      return true;
      }
      }
      public void registerBlockIcons(IIconRegister iiconRegister)
      {
      this.blockIcon = iiconRegister.registerIcon(“minecraft:stone”);
      }

      public boolean isOpaqueCube()
      {
      return false;
      }

      public boolean renderAsNormalBlock()
      {
      return false;
      }

      public int getRenderType()
      {
      return ClientProxy.tesrRenderId;
      }
      }

      
      du client proxy
      ```java
      package com.mathiasetampes.entreprise.proxy;
      
      import com.mathiasetampes.entreprise.client.TileEntityDistributeurSpecialRenderer;
      import com.mathiasetampes.entreprise.common.TileEntityDistributeur;
      
      import cpw.mods.fml.client.registry.ClientRegistry;
      import cpw.mods.fml.client.registry.RenderingRegistry;
      
      public class ClientProxy extends CommonProxy
      {
      public static int tesrRenderId;
      @Override
      public void registerRender()
      {
      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDistributeur.class, new TileEntityDistributeurSpecialRenderer());
      System.out.println("méthode côté client");
      tesrRenderId = RenderingRegistry.getNextAvailableRenderId();
      RenderingRegistry.registerBlockHandler(new TESRInventoryRenderer());
      
      }
      }
      
      

      et du TESR

      package com.mathiasetampes.entreprise.proxy;
      
      import org.lwjgl.opengl.GL11;
      
      import com.mathiasetampes.entreprise.client.TileEntityDistributeurSpecialRenderer;
      import com.mathiasetampes.entreprise.common.Entreprise;
      
      import net.minecraft.block.Block;
      import net.minecraft.client.Minecraft;
      import net.minecraft.client.renderer.RenderBlocks;
      import net.minecraft.world.IBlockAccess;
      import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
      
      public class TESRInventoryRenderer implements ISimpleBlockRenderingHandler {
      
      @Override
      public void renderInventoryBlock(Block block, int metadata, int modelId,
      RenderBlocks renderer)
      {
      if(block == Entreprise.distributeur)
      {
      GL11.glPushMatrix();
      GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
      GL11.glTranslatef(0.0F, -1.0F, 0.0F);
      Minecraft.getMinecraft().getTextureManager().bindTexture(TileEntityDistributeurSpecialRenderer.texture);
      TileEntityDistributeurSpecialRenderer.model.renderAll();
      GL11.glPopMatrix();
      }
      }
      
      @Override
      public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z,
      Block block, int modelId, RenderBlocks renderer)
      {
      return false;
      }
      
      @Override
      public boolean shouldRender3DInInventory(int modelId)
      {
      return true;
      }
      
      @Override
      public int getRenderId()
      {
      return 0;
      }
      
      }
      
      
      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

        Le carré tout moche ?
        Le "        System.out.println(“méthode côté client”);" apparaît-il dans les logs ?

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

          oui , le carré tout moche : c’est a dire qu’au lieux d’avoir un block j’ai un carré de stone (c’est la texture que j’utilise en dessous du model )

          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

            Ton modèle ressemble à quoi ?

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

              a un distributeur de billet

              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 le code du modèle, un screen du modèle, et un screen du rendu en jeu.

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

                  je veut bien mais c’est le rendu dans l’inventaire qui pose problème

                  modele

                  package com.mathiasetampes.entreprise.client.model;
                  
                  import net.minecraft.client.model.ModelBase;
                  import net.minecraft.client.model.ModelRenderer;
                  import net.minecraft.entity.Entity;
                  
                  public class ATMModel extends ModelBase
                  {
                   //fields
                     ModelRenderer Base;
                     ModelRenderer FrameBottom;
                     ModelRenderer Top;
                     ModelRenderer Right;
                     ModelRenderer Left;
                     ModelRenderer FrameTop;
                     ModelRenderer FrameLeft;
                     ModelRenderer FrameRight;
                     ModelRenderer Keypad;
                     ModelRenderer Panel;
                     ModelRenderer Shape6;
                     ModelRenderer CashBackPanel;
                     ModelRenderer CashSlot;
                     ModelRenderer Screen;
                     ModelRenderer Panel2;
                     ModelRenderer Panel3;
                     ModelRenderer Shape1;
                  
                   public ATMModel()
                   {
                     textureWidth = 128;
                     textureHeight = 64;
                  
                       Base = new ModelRenderer(this, 64, 18);
                       Base.addBox(0F, 0F, 0F, 16, 2, 16);
                       Base.setRotationPoint(-8F, 22F, -8F);
                       Base.setTextureSize(128, 64);
                       Base.mirror = true;
                       setRotation(Base, 0F, 0F, 0F);
                       FrameBottom = new ModelRenderer(this, 0, 61);
                       FrameBottom.addBox(0F, 0F, 0F, 14, 2, 1);
                       FrameBottom.setRotationPoint(-7F, 21F, -8.5F);
                       FrameBottom.setTextureSize(128, 64);
                       FrameBottom.mirror = true;
                       setRotation(FrameBottom, 0F, 0F, 0F);
                       Top = new ModelRenderer(this, 64, 0);
                       Top.addBox(0F, 0F, 0F, 16, 2, 16);
                       Top.setRotationPoint(-8F, 8F, -8F);
                       Top.setTextureSize(128, 64);
                       Top.mirror = true;
                       setRotation(Top, 0F, 0F, 0F);
                       Right = new ModelRenderer(this, 92, 36);
                       Right.addBox(0F, 0F, 0F, 2, 12, 16);
                       Right.setRotationPoint(6F, 10F, -8F);
                       Right.setTextureSize(128, 64);
                       Right.mirror = true;
                       setRotation(Right, 0F, 0F, 0F);
                       Left = new ModelRenderer(this, 56, 36);
                       Left.addBox(0F, 0F, 0F, 2, 12, 16);
                       Left.setRotationPoint(-8F, 10F, -8F);
                       Left.setTextureSize(128, 64);
                       Left.mirror = true;
                       setRotation(Left, 0F, 0F, 0F);
                       FrameTop = new ModelRenderer(this, 0, 58);
                       FrameTop.addBox(0F, 0F, 0F, 14, 2, 1);
                       FrameTop.setRotationPoint(-7F, 9F, -8.5F);
                       FrameTop.setTextureSize(128, 64);
                       FrameTop.mirror = true;
                       setRotation(FrameTop, 0F, 0F, 0F);
                       FrameLeft = new ModelRenderer(this, 0, 40);
                       FrameLeft.addBox(0F, 0F, 0F, 2, 10, 8);
                       FrameLeft.setRotationPoint(-7F, 11F, -8.5F);
                       FrameLeft.setTextureSize(128, 64);
                       FrameLeft.mirror = true;
                       setRotation(FrameLeft, 0F, 0F, 0F);
                       FrameRight = new ModelRenderer(this, 36, 46);
                       FrameRight.addBox(0F, 0F, 0F, 2, 10, 8);
                       FrameRight.setRotationPoint(5F, 11F, -8.5F);
                       FrameRight.setTextureSize(128, 64);
                       FrameRight.mirror = true;
                       setRotation(FrameRight, 0F, 0F, 0F);
                       Keypad = new ModelRenderer(this, 0, 35);
                       Keypad.addBox(-7F, 0F, 0F, 13, 4, 1);
                       Keypad.setRotationPoint(0.5F, 20F, -4.5F);
                       Keypad.setTextureSize(128, 64);
                       Keypad.mirror = true;
                       setRotation(Keypad, -1.308997F, 0F, 0F);
                       Panel = new ModelRenderer(this, 0, 3);
                       Panel.addBox(0F, 0F, 0F, 6, 10, 1);
                       Panel.setRotationPoint(0F, 11.5F, -3.2F);
                       Panel.setTextureSize(128, 64);
                       Panel.mirror = true;
                       setRotation(Panel, -0.2617994F, 0F, 0F);
                       Shape6 = new ModelRenderer(this, 0, 26);
                       Shape6.addBox(-7F, 0F, 0F, 13, 8, 1);
                       Shape6.setRotationPoint(0.8F, 11F, -8.4F);
                       Shape6.setTextureSize(128, 64);
                       Shape6.mirror = true;
                       setRotation(Shape6, 1.22173F, 0F, 0F);
                       CashBackPanel = new ModelRenderer(this, 20, 53);
                       CashBackPanel.addBox(0F, 0F, 0F, 5, 2, 1);
                       CashBackPanel.setRotationPoint(-5F, 18F, -4.5F);
                       CashBackPanel.setTextureSize(128, 64);
                       CashBackPanel.mirror = true;
                       setRotation(CashBackPanel, 0F, 0F, 0F);
                       CashSlot = new ModelRenderer(this, 20, 56);
                       CashSlot.addBox(0F, 0F, 0F, 4, 1, 1);
                       CashSlot.setRotationPoint(-4.5F, 18.5F, -4.8F);
                       CashSlot.setTextureSize(128, 64);
                       CashSlot.mirror = true;
                       setRotation(CashSlot, 0F, 0F, 0F);
                       Screen = new ModelRenderer(this, 0, 19);
                       Screen.addBox(0F, 0F, 0F, 5, 6, 1);
                       Screen.setRotationPoint(-5F, 12.3F, -3F);
                       Screen.setTextureSize(128, 64);
                       Screen.mirror = true;
                       setRotation(Screen, -0.2617994F, 0F, 0F);
                       Panel2 = new ModelRenderer(this, 0, 0);
                       Panel2.addBox(0F, 0F, 0F, 6, 2, 1);
                       Panel2.setRotationPoint(-6F, 11.5F, -3.2F);
                       Panel2.setTextureSize(128, 64);
                       Panel2.mirror = true;
                       setRotation(Panel2, -0.2617994F, 0F, 0F);
                       Panel3 = new ModelRenderer(this, 20, 40);
                       Panel3.addBox(0F, 0F, 0F, 1, 10, 1);
                       Panel3.setRotationPoint(-5.7F, 11.5F, -3.2F);
                       Panel3.setTextureSize(128, 64);
                       Panel3.mirror = true;
                       setRotation(Panel3, -0.2617994F, 0F, 0F);
                       Shape1 = new ModelRenderer(this, 14, 0);
                       Shape1.addBox(0F, 0F, 0F, 12, 12, 1);
                       Shape1.setRotationPoint(-6F, 10F, 7F);
                       Shape1.setTextureSize(128, 64);
                       Shape1.mirror = true;
                       setRotation(Shape1, 0F, 0F, 0F);
                   }
                  
                   public void renderAll()
                   {
                     Base.render(0.0625F );
                     FrameBottom.render(0.0625F );
                     Top.render(0.0625F );
                     Right.render(0.0625F );
                     Left.render(0.0625F );
                     FrameTop.render(0.0625F );
                     FrameLeft.render(0.0625F );
                     FrameRight.render(0.0625F );
                     Keypad.render(0.0625F );
                     Panel.render(0.0625F );
                     Shape6.render(0.0625F );
                     CashBackPanel.render(0.0625F );
                     CashSlot.render(0.0625F );
                     Screen.render(0.0625F );
                     Panel2.render(0.0625F );
                     Panel3.render(0.0625F );
                     Shape1.render(0.0625F );
                   }
                  
                   private void setRotation(ModelRenderer model, float x, float y, float z)
                   {
                     model.rotateAngleX = x;
                     model.rotateAngleY = y;
                     model.rotateAngleZ = z;
                   }
                  
                  }
                  
                  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

                    ah ! Il fallait le préciser plutôt.
                    Je viens de voir le problème.
                        @Override

                    public int getRenderId()
                        {
                            return 0;
                        }
                    Devrait être
                    return ClientProxy.tesrRenderId; (classe TESRInventoryRenderer)

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

                      encore moi ^^ j’ai fais en sorte de rendre le distributeur orientable mais bizarrement chaque fois que je quitte le jeu il reprend une certaine position pourtant que j’affiche le nbt de direction il a la bonne valeur

                      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

                        Tu es sûr qu’il a la bonne valeur côté client ? À mon avis non. Ajoute ça dans l’entité de bloc

                        ​ public Packet getDescriptionPacket()
                        {
                        NBTTagCompound nbttagcompound = new NBTTagCompound();
                        this.writeToNBT(nbttagcompound);
                        return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 0, nbttagcompound);
                        }
                        
                        public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt)
                        {
                        this.readFromNBT(pkt.func_148857_g());
                        this.worldObj.markBlockRangeForRenderUpdate(this.xCoord, this.yCoord, this.zCoord, this.xCoord, this.yCoord, this.zCoord);
                        }
                        
                        1 réponse Dernière réponse Répondre Citer 0
                        • YorwanY Hors-ligne
                          Yorwan
                          dernière édition par

                          merci encore j’ai l’impression de demander beaucoup d’aide en ce moment , peut etre parce que je vais pas en cour et que je passe mes journée a modée

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

                            Bonjour, j’ai suivie le tutoriel écrit , mais malheureusement quand je lance le jeu mon bloc n’a pas de texture alors que le fichier et le chemin de la texture est bon, mais j’ai dût surement oublier ou mal fait quelque chose mais je voie pas quoi ^^ :

                            Voici une Image en Jeu

                            http://www.noelshack.com/2015-39-1443014545-2015-09-23-15-21-23.png

                            [size=x-largeMes Codes :]

                            Class ModelTable :

                            // Date: 16/09/2015 16:55:07
                            // Template version 1.1
                            // Java generated by Techne
                            // Keep in mind that you still need to fill in some blanks
                            // - ZeuX
                            
                            package fr.burning.lfc.models;
                            
                            import net.minecraft.client.model.ModelBase;
                            import net.minecraft.client.model.ModelRenderer;
                            import net.minecraft.entity.Entity;
                            
                            public class ModelTable extends ModelBase
                            {
                              //fields
                                ModelRenderer pied_1;
                                ModelRenderer pied_2;
                                ModelRenderer Pied_3;
                                ModelRenderer Pied_4;
                                ModelRenderer dessus;
                            
                              public ModelTable()
                              {
                                textureWidth = 64;
                                textureHeight = 32;
                            
                                  pied_1 = new ModelRenderer(this, 0, 0);
                                  pied_1.mirror = true;
                                  pied_1.addBox(0F, 0F, 0F, 1, 16, 1);
                                  pied_1.setRotationPoint(-7F, 8F, -8F);
                                  pied_1.setTextureSize(64, 32);
                            
                                  setRotation(pied_1, 0.0174533F, 0F, 0F);
                                  pied_2 = new ModelRenderer(this, 0, 0);
                                  pied_2.mirror = true;
                                  pied_2.addBox(0F, 0F, 0F, 1, 16, 1);
                                  pied_2.setRotationPoint(6F, 8F, -8F);
                                  pied_2.setTextureSize(64, 32);
                            
                                  setRotation(pied_2, 0F, -0.0174533F, 0F);
                                  Pied_3 = new ModelRenderer(this, 0, 0);
                                  Pied_3.mirror = true;
                                  Pied_3.addBox(0F, 0F, 0F, 1, 18, 1);
                                  Pied_3.setRotationPoint(6F, 8F, 6F);
                                  Pied_3.setTextureSize(64, 32);
                            
                                  setRotation(Pied_3, 0F, 0F, 0F);
                                  Pied_4 = new ModelRenderer(this, 0, 0);
                                  Pied_4.mirror = true;
                                  Pied_4.addBox(0F, 0F, 0F, 1, 18, 1);
                                  Pied_4.setRotationPoint(-7F, 8F, 6F);
                                  Pied_4.setTextureSize(64, 32);
                            
                                  setRotation(Pied_4, 0F, 0F, 0F);
                                  dessus = new ModelRenderer(this, 0, 0);
                                  dessus.mirror = true;
                                  dessus.addBox(0F, 0F, 0F, 14, 1, 15);
                                  dessus.setRotationPoint(-7F, 7.6F, -8F);
                                  dessus.setTextureSize(64, 32);
                            
                                  setRotation(dessus, 0F, 0F, 0F);
                              }
                            
                              public void renderAll()
                              {
                            
                                pied_1.render(0.0625F);
                                pied_2.render(0.0625F);
                                Pied_3.render(0.0625F);
                                Pied_4.render(0.0625F);
                                dessus.render(0.0625F);
                              }
                            
                              private void setRotation(ModelRenderer model, float x, float y, float z)
                              {
                                model.rotateAngleX = x;
                                model.rotateAngleY = y;
                                model.rotateAngleZ = z;
                              }
                            
                            }
                            
                            

                            Class TileEntityTable :

                            %(#333333)[```java
                            package fr.burning.lfc.tile;
                            ]

                            import net.minecraft.tileentity.TileEntity;

                            public class TileEntityTable extends TileEntity 
                            {

                            %(#333333)[}

                            ]
                            
                            ***Class TileEntityLFCSpecialRenderer :***
                            
                            ```java
                            package fr.burning.lfc.tile;
                            
                            import org.lwjgl.opengl.GL11;
                            
                            import fr.burning.lfc.LaFrenchCraftMOD;
                            import fr.burning.lfc.models.ModelTable;
                            import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
                            import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
                            import net.minecraft.tileentity.TileEntity;
                            import net.minecraft.util.ResourceLocation;
                            
                            public class TileEntityLFCSpecialRenderer extends TileEntitySpecialRenderer
                            {
                            
                            public static ModelTable model = new ModelTable();
                                 public static ResourceLocation texture = new ResourceLocation(LaFrenchCraftMOD.MODID, "textures/models/blocks/Table.png");
                            
                            @Override
                                public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float partialRenderTick) // la fonction qui était la de base
                                {
                                    this.renderTileLFCAt((TileEntityTable)tile, x, y, z, partialRenderTick); // j'appelle ma fonction renderTileEntityTutorielAt en castant TileEntityTutoriel à l'argument tile
                                }
                            
                                private void renderTileLFCAt(TileEntityTable tile, double x, double y, double z, float partialRenderTick) // ma propre fonction
                                {
                                  GL11.glPushMatrix(); // ouvre une matrix
                                       GL11.glTranslated(x + 0.5D, y + 1.5D, z + 0.5D); // déplace le bloc sur les coordonnés et le centre
                                       GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); // met droit le bloc (par défaut il est à l'envers)
                                       this.bindTexture(texture); // affiche la texture
                                       model.renderAll(); // rend le modèle
                                       GL11.glPopMatrix(); // ferme la matrix
                                }
                            
                                public TileEntityLFCSpecialRenderer() // TileEntityTutorielSpecialRenderer dans mon cas, c'est la classe que nous avons fait dans la partie précédente
                                {
                                    this.func_147497_a(TileEntityRendererDispatcher.instance);
                                }
                            }
                            
                            

                            Class ProxyClient : 

                            package fr.burning.lfc.lib;
                            
                            import cpw.mods.fml.client.registry.ClientRegistry;
                            import cpw.mods.fml.client.registry.RenderingRegistry;
                            import fr.burning.lfc.TESRinvRenderLFC;
                            import fr.burning.lfc.tile.TileEntityLFCSpecialRenderer;
                            import fr.burning.lfc.tile.TileEntityTable;
                            
                            public class ProxyClient extends ProxyCommon 
                            {
                            
                            public static int tesrRenderId;
                            
                            @Override
                            public void registerRenderInformation()
                            {
                              ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTable.class, new TileEntityLFCSpecialRenderer());
                            
                              tesrRenderId = RenderingRegistry.getNextAvailableRenderId();
                                   RenderingRegistry.registerBlockHandler(new TESRinvRenderLFC());
                            }
                            
                            }
                            
                            

                            %(#333333)[Voila J’espère que vous pourrez M’aider .  🙂 ]

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

                              Est-ce que ton TESR est bien enregistré ? Rajoute des logs dans ta fonction registerRenderInformation

                              Site web contenant mes scripts : http://SCAREXgaming.github.io

                              Pas de demandes de support par MP ni par skype SVP.
                              Je n'accepte sur skype que l…

                              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

                                Il manque la classe principale et celle du bloc.

                                1 réponse Dernière réponse Répondre Citer 0
                                • FolganskyF Hors-ligne
                                  Folgansky Correcteurs
                                  dernière édition par

                                  Le modèle et la texture de ton bloc est une copie conforme d’un bloc d’un mod déjà publié, je trouve dommage que tu ne t’amuses pas un peu en personnalisant ton propre mod.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • Superloup10S Hors-ligne
                                    Superloup10 Modérateurs
                                    dernière édition par

                                    @‘Toutoune1008’:

                                    Le modèle et la texture de ton bloc est une copie conforme d’un bloc d’un mod déjà publié, je trouve dommage que tu ne t’amuses pas un peu en personnalisant ton propre mod.

                                    Tu parles de quel bloc?

                                    Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • FolganskyF Hors-ligne
                                      Folgansky Correcteurs
                                      dernière édition par

                                      Je parle du bloc que Asmath veut intégrer à son mod qui est une copie conforme du distributeur de FlenixCore.
                                      Après je ne sais pas si ce mod est libre de droits, je tenais juste à souligner ce qui m’a sauté au visage.

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

                                        @‘robin4002’:

                                        Il manque la classe principale et celle du bloc.

                                        Voila Désolé de la Réponsse Tardive mais je pouvait pas avant ^^

                                        La classe principale

                                        package fr.burning.lfc;
                                        
                                        import cpw.mods.fml.common.Mod;
                                        import cpw.mods.fml.common.Mod.Instance;
                                        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 cpw.mods.fml.common.registry.LanguageRegistry;
                                        import fr.burning.lfc.blocks.BlockLum;
                                        import fr.burning.lfc.blocks.Caisse;
                                        import fr.burning.lfc.blocks.DalleBlock;
                                        import fr.burning.lfc.blocks.JumpBlock;
                                        import fr.burning.lfc.blocks.KingBlock;
                                        import fr.burning.lfc.blocks.MineraiPheo;
                                        import fr.burning.lfc.blocks.MineraiRubis;
                                        import fr.burning.lfc.blocks.MineraiSaph;
                                        import fr.burning.lfc.blocks.MineraiXP;
                                        import fr.burning.lfc.blocks.Nuage;
                                        import fr.burning.lfc.blocks.PheoBlock;
                                        import fr.burning.lfc.blocks.RubisBlock;
                                        import fr.burning.lfc.blocks.SaphBlock;
                                        import fr.burning.lfc.blocks.SpeedBlock;
                                        import fr.burning.lfc.blocks.Table;
                                        import fr.burning.lfc.blocks.Tonneau;
                                        import fr.burning.lfc.blocks.XpBlock;
                                        import fr.burning.lfc.creativetabs.LaFrenchCraftArmorTabs;
                                        import fr.burning.lfc.creativetabs.LaFrenchCraftBlockTabs;
                                        import fr.burning.lfc.creativetabs.LaFrenchCraftFoodTabs;
                                        import fr.burning.lfc.creativetabs.LaFrenchCraftItemTabs;
                                        import fr.burning.lfc.creativetabs.LaFrenchCraftToolTabs;
                                        import fr.burning.lfc.food.BaconCru;
                                        import fr.burning.lfc.food.BaconCuit;
                                        import fr.burning.lfc.food.Bol2lait;
                                        import fr.burning.lfc.food.Cheezburger;
                                        import fr.burning.lfc.food.Chocolat;
                                        import fr.burning.lfc.food.Crepe;
                                        import fr.burning.lfc.food.CrepeNutella;
                                        import fr.burning.lfc.food.FromageFondut;
                                        import fr.burning.lfc.food.nutella;
                                        import fr.burning.lfc.food.pate;
                                        import fr.burning.lfc.items.AronChupa;
                                        import fr.burning.lfc.items.BatonEme;
                                        import fr.burning.lfc.items.BatonPheo;
                                        import fr.burning.lfc.items.BatonRubis;
                                        import fr.burning.lfc.items.BatonSaph;
                                        import fr.burning.lfc.items.Billet05;
                                        import fr.burning.lfc.items.Billet10;
                                        import fr.burning.lfc.items.Billet100;
                                        import fr.burning.lfc.items.Billet50;
                                        import fr.burning.lfc.items.Billet500;
                                        import fr.burning.lfc.items.Bullet;
                                        import fr.burning.lfc.items.FollowMe;
                                        import fr.burning.lfc.items.GemmePheo;
                                        import fr.burning.lfc.items.GemmeRubis;
                                        import fr.burning.lfc.items.GemmeXp;
                                        import fr.burning.lfc.items.GetLow;
                                        import fr.burning.lfc.items.IngotSaph;
                                        import fr.burning.lfc.items.JeanKevin;
                                        import fr.burning.lfc.items.Kinetic;
                                        import fr.burning.lfc.items.Muppet;
                                        import fr.burning.lfc.items.RJVR;
                                        import fr.burning.lfc.items.SeeYouAgain;
                                        import fr.burning.lfc.lib.ProxyCommon;
                                        import fr.burning.lfc.tile.TileEntityTable;
                                        import fr.burning.lfc.tools.ToolAxe;
                                        import fr.burning.lfc.tools.ToolHoe;
                                        import fr.burning.lfc.tools.ToolPickaxe;
                                        import fr.burning.lfc.tools.ToolShovel;
                                        import fr.burning.lfc.tools.ToolSword;
                                        import fr.burning.lfc.world.Generator;
                                        import net.minecraft.block.Block;
                                        import net.minecraft.block.BlockRedstoneLight;
                                        import net.minecraft.block.material.Material;
                                        import net.minecraft.creativetab.CreativeTabs;
                                        import net.minecraft.init.Blocks;
                                        import net.minecraft.init.Items;
                                        import net.minecraft.item.Item;
                                        import net.minecraft.item.Item.ToolMaterial;
                                        import net.minecraft.item.ItemArmor.ArmorMaterial;
                                        import net.minecraft.item.ItemStack;
                                        import net.minecraft.potion.Potion;
                                        import net.minecraftforge.common.MinecraftForge;
                                        import net.minecraftforge.common.util.EnumHelper;
                                        import net.minecraftforge.fluids.Fluid;
                                        import net.minecraftforge.fluids.FluidRegistry;
                                        import net.minecraftforge.oredict.OreDictionary;
                                        
                                        @Mod(modid = "lfc", version = "4.0", name = "Mod LaFrenchCraft")
                                        public class LaFrenchCraftMOD
                                        {
                                        @Instance("lfc")
                                        public static LaFrenchCraftMOD instance;
                                        public static final String MODID = "lfc";
                                        @SidedProxy(clientSide = "fr.burning.lfc.lib.ProxyClient", serverSide = "fr.burning.lfc.lib.ProxyCommon")
                                        public static ProxyCommon proxy;
                                        public static final CreativeTabs LaFrenchCraftBlockTabs = new LaFrenchCraftBlockTabs("LaFrenchCraftBlockTabs");
                                        public static final CreativeTabs LaFrenchCraftItemTabs = new LaFrenchCraftItemTabs("LaFrenchCraftItemTabs");
                                        public static final CreativeTabs LaFrenchCraftToolTabs = new LaFrenchCraftToolTabs("LaFrenchCraftToolTabs");
                                        public static final CreativeTabs LaFrenchCraftArmorTabs = new LaFrenchCraftArmorTabs("LaFrenchCraftArmorTabs");
                                        public static final CreativeTabs LaFrenchCraftFoodTabs = new LaFrenchCraftFoodTabs("LaFrenchCraftFoodTabs");
                                        public static ToolMaterial PheoToolMaterial = new EnumHelper().addToolMaterial("PheoToolMaterial", 3, 2000, 9.5F, 7.0F, 8);
                                        public static ToolMaterial EmeToolMaterial = new EnumHelper().addToolMaterial("EmeToolMaterial", 3, 2500, 8.0F, 6.5F, 10);
                                        public static ToolMaterial RubisToolMaterial = new EnumHelper().addToolMaterial("RubisToolMaterial", 3, 3000, 10.0F, 8.0F, 5);
                                        public static ToolMaterial SaphToolMaterial = new EnumHelper().addToolMaterial("SaphToolMaterial", 3, 2700, 9.5F, 7.5F, 6);
                                        public static ToolMaterial SilverToolMaterial = new EnumHelper().addToolMaterial("SilverToolMaterial", 3, 3000, 3.5F, 3.5F, 7);
                                        public static ToolMaterial ImperialToolMaterial = new EnumHelper().addToolMaterial("ImperialToolMaterial", 3, 2800, 5.5F, 5.5F, 9);
                                        public static ToolMaterial EtherToolMaterial = new EnumHelper().addToolMaterial("EtherToolMaterial", 3, 3300, 6.5F, 6.5F, 6);
                                        public static ToolMaterial LameRuniqueToolMaterial = new EnumHelper().addToolMaterial("LameRuniqueToolMaterial", 3, 3500, 6.0F, 6.0F, 5);
                                        public static ToolMaterial SwordBlazeToolMaterial = new EnumHelper().addToolMaterial("SwordBlazeToolMaterial", 3, 3900, 8.5F, 8.5F, 4);
                                        public static ArmorMaterial PheoArmorMaterial = new EnumHelper().addArmorMaterial("PheoArmorMaterial", 40, new int[] {10, 15, 13, 10}, 6);
                                        public static ArmorMaterial EmeArmorMaterial = new EnumHelper().addArmorMaterial("EmeArmorMaterial", 80, new int[] {15, 17, 18, 15}, 3);
                                        /***************
                                        * Les Blocks *
                                        ***************/
                                        public static Block XpBlock;
                                        public static Block MineraiXP;
                                        public static Block PheoBlock;
                                        public static Block MineraiPheo;
                                        public static Block SpeedBlock;
                                        public static Block JumpBlock;
                                        public static Block MineraiRubis;
                                        public static Block RubisBlock;
                                        public static Block MineraiSaph;
                                        public static Block SaphBlock;
                                        public static Block Tonneau;
                                        public static Block Caisse;
                                        public static Block KingBlock;
                                        public static Block DalleBlock;
                                        public static Block Nuage;
                                        public static Block BlockLum;
                                        public static Block Table;
                                        /*************
                                        * Les Items *
                                        *************/
                                        public static Item GemmeXp;
                                        public static Item GemmePheo;
                                        public static Item BatonPheo;
                                        public static Item PickPheo;
                                        public static Item SwordPheo;
                                        public static Item HoePheo;
                                        public static Item ShovelPheo;
                                        public static Item AxePheo;
                                        public static Item HelmetPheo;
                                        public static Item ChestPlatePheo;
                                        public static Item LegingsPheo;
                                        public static Item BootsPheo;
                                        public static Item HelmetEme;
                                        public static Item ChestPlateEme;
                                        public static Item LegingsEme;
                                        public static Item BootsEme;
                                        public static Item PickEme;
                                        public static Item SwordEme;
                                        public static Item AxeEme;
                                        public static Item ShovelEme;
                                        public static Item HoeEme;
                                        public static Item BatonEme;
                                        public static Item GemmeRubis;
                                        public static Item BatonRubis;
                                        public static Item PickRubis;
                                        public static Item AxeRubis;
                                        public static Item ShovelRubis;
                                        public static Item SwordRubis;
                                        public static Item HoeRubis;
                                        public static Item IngotSaph;
                                        public static Item BatonSaph;
                                        public static Item PickSaph;
                                        public static Item AxeSaph;
                                        public static Item HoeSaph;
                                        public static Item ShovelSaph;
                                        public static Item SwordSaph;
                                        public static Item SwordSilver;
                                        public static Item SwordImperial;
                                        public static Item SwordEther;
                                        public static Item LameRunique;
                                        public static Item SwordBlaze;
                                        public static Item RJVR;
                                        public static Item GetLow;
                                        public static Item Kinetic;
                                        public static Item Muppet;
                                        public static Item AronChupa;
                                        public static Item Bullet;
                                        public static Item SeeYouAgain;
                                        public static Item FollowMe;
                                        public static Item JeanKevin;
                                        public static Item Cheezburger;
                                        public static Item Fromage;
                                        public static Item Bol2lait;
                                        public static Item BaconCru;
                                        public static Item BaconCuit;
                                        public static Item Chocolat;
                                        public static Item nutella;
                                        public static Item pate;
                                        public static Item Crepe;
                                        public static Item CrepeNutella;
                                        public static Item Billet10;
                                        public static Item Billet50;
                                        public static Item Billet05;
                                        public static Item Billet100;
                                        public static Item Billet500;
                                        
                                        @Mod.EventHandler
                                        public void preInit(FMLPreInitializationEvent event)
                                        {
                                        System.out.println("preInit");
                                        /*****************************************************************************************************************************************************
                                        * setDensity d�fini la densit� du fluide, en quelque sorte sa masse. Si la valeur est n�gatif, votre fluide sera plus l�ger que l'air et s'envolera.***
                                        * setViscosity d�fini la viscosit�, elle est li� � la vitesse de tick de votre bloc. Plus cette valeur est �lev�, plus le fluide se d�placera
                                        * lentement.****************************************************
                                        * setTemperature d�fini la temp�rature en degr� Kelvin, donc 273 de plus que la temp�rature en degr� Celsius. 0 correspond donc au z�ro absolu, et 273 � 0� C. Par d�faut cette valeur vaut
                                        * 295, soit 22� C.**
                                        * setLuminosity rend votre fluide lumineux. Par d�faut sur 0 et ne fait pas de lumi�re, la lave est sur 15\. *
                                        * setUnlocalizedName d�fini le nom non localis� du fluid. *
                                        ***************************************************************************************************************************************************************************************************************/
                                        /**************
                                        * Block d'XP *
                                        ***************/
                                        XpBlock = new XpBlock(3003, Material.iron);
                                        XpBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /**************
                                        * Gemme d'XP *
                                        **************/
                                        GemmeXp = new GemmeXp(3001);
                                        GemmeXp.setCreativeTab(LaFrenchCraftItemTabs);
                                        /*****************
                                        * Minerais d'XP *
                                        *****************/
                                        MineraiXP = new MineraiXP(3002, Material.rock);
                                        MineraiXP.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /**********************
                                        * Block de Pheonixte *
                                        **********************/
                                        PheoBlock = new PheoBlock(3004, Material.iron);
                                        PheoBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /*************************
                                        * Minerais de Pheonixte *
                                        *************************/
                                        MineraiPheo = new MineraiPheo(3005, Material.rock);
                                        MineraiPheo.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /**********************
                                        * Gemme de Pheonixte *
                                        **********************/
                                        GemmePheo = new GemmePheo(3006);
                                        GemmePheo.setCreativeTab(LaFrenchCraftItemTabs);
                                        /**********************
                                        * Baton de Pheonixte *
                                        **********************/
                                        BatonPheo = new BatonPheo(3007);
                                        BatonPheo.setCreativeTab(LaFrenchCraftItemTabs);
                                        /****************
                                        * Tool Pheo *
                                        ****************/
                                        PickPheo = new ToolPickaxe(PheoToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Pick_Pheo").setUnlocalizedName("Pioche de Pheonixte").setCreativeTab(LaFrenchCraftToolTabs);
                                        AxePheo = new ToolAxe(PheoToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Axe_Pheo").setUnlocalizedName("Hache de Pheonixte").setCreativeTab(LaFrenchCraftToolTabs);
                                        ShovelPheo = new ToolShovel(PheoToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Shovel_Pheo").setUnlocalizedName("Pelle de Pheonixte").setCreativeTab(LaFrenchCraftToolTabs);
                                        HoePheo = new ToolHoe(PheoToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Hoe_Pheo").setUnlocalizedName("Houe de Pheonixte").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordPheo = new ToolSword(PheoToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Pheo").setUnlocalizedName("�p� de Pheonixte").setCreativeTab(LaFrenchCraftToolTabs);
                                        /***************
                                        * Armor Pheo *
                                        ***************/
                                        HelmetPheo = new Armor(PheoArmorMaterial, 0).setTextureName(LaFrenchCraftMOD.MODID + ":Helmet_Pheo").setUnlocalizedName("Casque de Pheonixte").setCreativeTab(LaFrenchCraftArmorTabs);
                                        ChestPlatePheo = new Armor(PheoArmorMaterial, 1).setTextureName(LaFrenchCraftMOD.MODID + ":ChestPlate_Pheo").setUnlocalizedName("Plastron en Pheonixte").setCreativeTab(LaFrenchCraftArmorTabs);
                                        LegingsPheo = new Armor(PheoArmorMaterial, 2).setTextureName(LaFrenchCraftMOD.MODID + ":Legings_Pheo").setUnlocalizedName("Pantalon en Pheonixte").setCreativeTab(LaFrenchCraftArmorTabs);
                                        BootsPheo = new Armor(PheoArmorMaterial, 3).setTextureName(LaFrenchCraftMOD.MODID + ":Boots_Pheo").setUnlocalizedName("Botte en Pheonixte").setCreativeTab(LaFrenchCraftArmorTabs);
                                        /******************
                                        * Block Speciaux *
                                        ******************/
                                        SpeedBlock = new SpeedBlock().setCreativeTab(LaFrenchCraftBlockTabs);
                                        JumpBlock = new JumpBlock().setCreativeTab(LaFrenchCraftBlockTabs);
                                        /*******************
                                        * Armor Emeraude *
                                        *******************/
                                        HelmetEme = new Armor(EmeArmorMaterial, 0).setTextureName(LaFrenchCraftMOD.MODID + ":Helmet_Eme").setUnlocalizedName("Casque en Emeraude").setCreativeTab(LaFrenchCraftArmorTabs);
                                        ChestPlateEme = new Armor(EmeArmorMaterial, 1).setTextureName(LaFrenchCraftMOD.MODID + ":ChestPlate_Eme").setUnlocalizedName("Plastron en Emeraude").setCreativeTab(LaFrenchCraftArmorTabs);
                                        LegingsEme = new Armor(EmeArmorMaterial, 2).setTextureName(LaFrenchCraftMOD.MODID + ":Legings_Eme").setUnlocalizedName("Pantalon en Emeraude").setCreativeTab(LaFrenchCraftArmorTabs);
                                        BootsEme = new Armor(EmeArmorMaterial, 3).setTextureName(LaFrenchCraftMOD.MODID + ":Boots_Eme").setUnlocalizedName("Botte en Emeraude").setCreativeTab(LaFrenchCraftArmorTabs);
                                        /******************
                                        * Tool Emeraude *
                                        ******************/
                                        PickEme = new ToolPickaxe(EmeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Pick_Eme").setUnlocalizedName("Pioche en Emeraude").setCreativeTab(LaFrenchCraftToolTabs);
                                        AxeEme = new ToolAxe(EmeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Axe_Eme").setUnlocalizedName("Hache en Emeraude").setCreativeTab(LaFrenchCraftToolTabs);
                                        ShovelEme = new ToolShovel(EmeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Shovel_Eme").setUnlocalizedName("Pelle en Emeraude").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordEme = new ToolSword(EmeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Eme").setUnlocalizedName("Emeraude Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        HoeEme = new ToolHoe(EmeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Hoe_Eme").setUnlocalizedName("Houe en Emeraude").setCreativeTab(LaFrenchCraftToolTabs);
                                        /*********************
                                        * Baton en Emeraude *
                                        *********************/
                                        BatonEme = new BatonEme(3008);
                                        BatonEme.setCreativeTab(LaFrenchCraftItemTabs);
                                        /********************
                                        * minerai de Rubis *
                                        ********************/
                                        MineraiRubis = new MineraiRubis(3009, Material.rock);
                                        MineraiRubis.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /***************
                                        * Gemme Rubis *
                                        ***************/
                                        GemmeRubis = new GemmeRubis(3010);
                                        GemmeRubis.setCreativeTab(LaFrenchCraftItemTabs);
                                        /***************
                                        * Rubis Block *
                                        ***************/
                                        RubisBlock = new RubisBlock(3011, Material.iron);
                                        RubisBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /***************
                                        * Baton Rubis *
                                        ***************/
                                        BatonRubis = new BatonRubis(3012);
                                        BatonRubis.setCreativeTab(LaFrenchCraftItemTabs);
                                        /**************
                                        * Tool Rubis *
                                        **************/
                                        PickRubis = new ToolPickaxe(RubisToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Pick_Rubis").setUnlocalizedName("Pioche en Rubis").setCreativeTab(LaFrenchCraftToolTabs);
                                        AxeRubis = new ToolAxe(RubisToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Axe_Rubis").setUnlocalizedName("Hache en Rubis").setCreativeTab(LaFrenchCraftToolTabs);
                                        ShovelRubis = new ToolShovel(RubisToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Shovel_Rubis").setUnlocalizedName("Pelle en Rubis").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordRubis = new ToolSword(RubisToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Rubis").setUnlocalizedName("Rubis Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        HoeRubis = new ToolHoe(RubisToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Hoe_Rubis").setUnlocalizedName("Houe en Rubis").setCreativeTab(LaFrenchCraftToolTabs);
                                        /*********************
                                        * Minerai de Saphir *
                                        *********************/
                                        MineraiSaph = new MineraiSaph(3013, Material.rock);
                                        MineraiSaph.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /********************
                                        * Lingot de Spahir *
                                        ********************/
                                        IngotSaph = new IngotSaph(3014);
                                        IngotSaph.setCreativeTab(LaFrenchCraftItemTabs);
                                        /*******************
                                        * Block de Saphir *
                                        *******************/
                                        SaphBlock = new SaphBlock(3015, Material.iron);
                                        SaphBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /*******************
                                        * baton de Saphir *
                                        *******************/
                                        BatonSaph = new BatonSaph(3016);
                                        BatonSaph.setCreativeTab(LaFrenchCraftItemTabs);
                                        /***************
                                        * Tool Saphir *
                                        ***************/
                                        PickSaph = new ToolPickaxe(SaphToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Pick_Saph").setUnlocalizedName("Pioche en Saphir").setCreativeTab(LaFrenchCraftToolTabs);
                                        AxeSaph = new ToolAxe(SaphToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Axe_Saph").setUnlocalizedName("Hache en Saphir").setCreativeTab(LaFrenchCraftToolTabs);
                                        ShovelSaph = new ToolShovel(SaphToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Shovel_Saph").setUnlocalizedName("Pelle en Saphir").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordSaph = new ToolSword(SaphToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Saph").setUnlocalizedName("Saphir Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        HoeSaph = new ToolHoe(SaphToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Hoe_Saph").setUnlocalizedName("Houe en Saphir").setCreativeTab(LaFrenchCraftToolTabs);
                                        /*************
                                        * New Sword *
                                        *************/
                                        SwordSilver = new ToolSword(SilverToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Silver").setUnlocalizedName("Silver Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordImperial = new ToolSword(ImperialToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Imperial").setUnlocalizedName("Imperial Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordEther = new ToolSword(EtherToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Ether").setUnlocalizedName("Ether Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        LameRunique = new ToolSword(LameRuniqueToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Lame_Runique").setUnlocalizedName("Lame Runique").setCreativeTab(LaFrenchCraftToolTabs);
                                        SwordBlaze = new ToolSword(SwordBlazeToolMaterial).setTextureName(LaFrenchCraftMOD.MODID + ":Sword_Blaze").setUnlocalizedName("Blaze Sword").setCreativeTab(LaFrenchCraftToolTabs);
                                        /*************
                                        * Bloc Deco *
                                        *************/
                                        Tonneau = new Tonneau(3017, Material.wood);
                                        Tonneau.setCreativeTab(LaFrenchCraftBlockTabs);
                                        Caisse = new Caisse(3018, Material.wood);
                                        Caisse.setCreativeTab(LaFrenchCraftBlockTabs);
                                        KingBlock = new KingBlock(3019, Material.iron);
                                        KingBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /**************
                                        * Nouveau CD *
                                        **************/
                                        RJVR = new RJVR("RJVR").setTextureName(LaFrenchCraftMOD.MODID + ":RJVR").setUnlocalizedName("record_RJVR").setCreativeTab(LaFrenchCraftItemTabs);
                                        GetLow = new GetLow("GetLow").setTextureName(LaFrenchCraftMOD.MODID + ":GetLow").setUnlocalizedName("record_GetLow").setCreativeTab(LaFrenchCraftItemTabs);
                                        Kinetic = new Kinetic("Kinetic").setTextureName(LaFrenchCraftMOD.MODID + ":Kinetic").setUnlocalizedName("record_Kinetic").setCreativeTab(LaFrenchCraftItemTabs);
                                        Muppet = new Muppet("Muppet").setTextureName(LaFrenchCraftMOD.MODID + ":Muppet").setUnlocalizedName("record_Muppet").setCreativeTab(LaFrenchCraftItemTabs);
                                        AronChupa = new AronChupa("AronChupa").setTextureName(LaFrenchCraftMOD.MODID + ":AronChupa").setUnlocalizedName("record_AronChupa").setCreativeTab(LaFrenchCraftItemTabs);
                                        Bullet = new Bullet("Bullet").setTextureName(LaFrenchCraftMOD.MODID + ":Bullet").setUnlocalizedName("record_Bullet").setCreativeTab(LaFrenchCraftItemTabs);
                                        SeeYouAgain = new SeeYouAgain("SeeYouAgain").setTextureName(LaFrenchCraftMOD.MODID + ":SeeYouAgain").setUnlocalizedName("record_SeeYouAgain").setCreativeTab(LaFrenchCraftItemTabs);
                                        FollowMe = new FollowMe("FollowMe").setTextureName(LaFrenchCraftMOD.MODID + ":FollowMe").setUnlocalizedName("record_FollowMe").setCreativeTab(LaFrenchCraftItemTabs);
                                        JeanKevin = new JeanKevin("JeanKevin").setTextureName(LaFrenchCraftMOD.MODID + ":JeanKevin").setUnlocalizedName("record_JeanKevin").setCreativeTab(LaFrenchCraftItemTabs);
                                        /**********************
                                        * Nouvelle Nouriture *
                                        **********************/
                                        Cheezburger = new Cheezburger(6, 2.0F, false);
                                        Cheezburger.setCreativeTab(LaFrenchCraftFoodTabs);
                                        Fromage = new FromageFondut(3020);
                                        Fromage.setCreativeTab(LaFrenchCraftFoodTabs);
                                        Bol2lait = new Bol2lait(3021);
                                        Bol2lait.setCreativeTab(LaFrenchCraftFoodTabs);
                                        BaconCru = new BaconCru(2, 0.1F, true).setPotionEffect(Potion.hunger.getId(), 30, 2, 0.8F);
                                        BaconCru.setCreativeTab(LaFrenchCraftFoodTabs);
                                        BaconCuit = new BaconCuit(4, 1.0F, true);
                                        BaconCuit.setCreativeTab(LaFrenchCraftFoodTabs);
                                        Chocolat = new Chocolat(3, 1.5F, false);
                                        Chocolat.setCreativeTab(LaFrenchCraftFoodTabs);
                                        nutella = new nutella(3022);
                                        nutella.setCreativeTab(LaFrenchCraftFoodTabs);
                                        pate = new pate(3023);
                                        pate.setCreativeTab(LaFrenchCraftFoodTabs);
                                        Crepe = new Crepe(2, 1.0F, false);
                                        Crepe.setCreativeTab(LaFrenchCraftFoodTabs);
                                        CrepeNutella = new CrepeNutella(4, 2.5F, false);
                                        CrepeNutella.setCreativeTab(LaFrenchCraftFoodTabs);
                                        /**************
                                        * Dalle Block *
                                        **************/
                                        DalleBlock = new DalleBlock(3024, Material.rock);
                                        DalleBlock.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /*********************
                                        * Block traversable *
                                        *********************/
                                        Nuage = new Nuage(3025, Material.glass).setTranslucent().setLightOpacity(1);
                                        Nuage.setCreativeTab(LaFrenchCraftBlockTabs);
                                        BlockLum = new BlockLum(3026, Material.cloth);
                                        BlockLum.setCreativeTab(LaFrenchCraftBlockTabs);
                                        /***********
                                        * Billets *
                                        ***********/
                                        Billet10 = new Billet10(3026);
                                        Billet10.setCreativeTab(LaFrenchCraftItemTabs);
                                        Billet50 = new Billet50(3027);
                                        Billet50.setCreativeTab(LaFrenchCraftItemTabs);
                                        Billet05 = new Billet05(3028);
                                        Billet05.setCreativeTab(LaFrenchCraftItemTabs);
                                        Billet100 = new Billet100(3029);
                                        Billet100.setCreativeTab(LaFrenchCraftItemTabs);
                                        Billet500 = new Billet500(3030);
                                        Billet500.setCreativeTab(LaFrenchCraftItemTabs);
                                        /*********
                                        * Table *
                                        *********/
                                        Table = new Table(3031, Material.wood);
                                        Table.setCreativeTab(LaFrenchCraftBlockTabs);
                                        }
                                        
                                        @Mod.EventHandler
                                        public void init(FMLInitializationEvent event)
                                        {
                                        System.out.println("init");
                                        GameRegistry.registerBlock(XpBlock, "XpBlock");
                                        GameRegistry.registerItem(GemmeXp, "GemmeXp");
                                        GameRegistry.registerBlock(MineraiXP, "MineraiXP");
                                        OreDictionary.registerOre("GemXP", GemmeXp);
                                        GameRegistry.registerBlock(PheoBlock, "PheoBlock");
                                        GameRegistry.registerItem(GemmePheo, "GemmePheo");
                                        GameRegistry.registerBlock(MineraiPheo, "MineraiPheo");
                                        OreDictionary.registerOre("GemPheo", GemmePheo);
                                        GameRegistry.registerItem(BatonPheo, "BatonPheo");
                                        GameRegistry.registerItem(PickPheo, "PickPheo");
                                        GameRegistry.registerItem(AxePheo, "AxePheo");
                                        GameRegistry.registerItem(ShovelPheo, "ShovelPheo");
                                        GameRegistry.registerItem(HoePheo, "HoePheo");
                                        GameRegistry.registerItem(SwordPheo, "SwordPheo");
                                        GameRegistry.registerItem(HelmetPheo, "HelmetPheo");
                                        GameRegistry.registerItem(ChestPlatePheo, "ChestPlatePheo");
                                        GameRegistry.registerItem(LegingsPheo, "LegingsPheo");
                                        GameRegistry.registerItem(BootsPheo, "BootsPheo");
                                        GameRegistry.registerBlock(SpeedBlock, "SpeedBlock");
                                        GameRegistry.registerBlock(JumpBlock, "JumpBlock");
                                        GameRegistry.registerItem(HelmetEme, "HelmetEme");
                                        GameRegistry.registerItem(ChestPlateEme, "ChestPlateEme");
                                        GameRegistry.registerItem(LegingsEme, "LegingsEme");
                                        GameRegistry.registerItem(BootsEme, "BootsEme");
                                        GameRegistry.registerItem(PickEme, "PickEme");
                                        GameRegistry.registerItem(ShovelEme, "ShovelEme");
                                        GameRegistry.registerItem(AxeEme, "AxeEme");
                                        GameRegistry.registerItem(HoeEme, "HoeEme");
                                        GameRegistry.registerItem(SwordEme, "SwordEme");
                                        GameRegistry.registerItem(BatonEme, "BatonEme");
                                        GameRegistry.registerItem(GemmeRubis, "GemmeRubis");
                                        GameRegistry.registerBlock(RubisBlock, "RubisBlock");
                                        GameRegistry.registerItem(PickRubis, "PickRubis");
                                        GameRegistry.registerItem(AxeRubis, "AxeRubis");
                                        GameRegistry.registerItem(ShovelRubis, "ShovelRubis");
                                        GameRegistry.registerItem(HoeRubis, "HoeRubis");
                                        GameRegistry.registerItem(SwordRubis, "SwordRubis");
                                        GameRegistry.registerBlock(MineraiRubis, "MineraiRubis");
                                        OreDictionary.registerOre("GemRubis", GemmeRubis);
                                        GameRegistry.registerBlock(MineraiSaph, "MineraiSaph");
                                        OreDictionary.registerOre("ingotSaph", IngotSaph);
                                        GameRegistry.registerBlock(SaphBlock, "SaphBlock");
                                        GameRegistry.registerItem(BatonSaph, "BatonSaph");
                                        GameRegistry.registerItem(PickSaph, "PickSaph");
                                        GameRegistry.registerItem(AxeSaph, "AxeSaph");
                                        GameRegistry.registerItem(HoeSaph, "HoeSaph");
                                        GameRegistry.registerItem(ShovelSaph, "ShovelSaph");
                                        GameRegistry.registerItem(SwordSaph, "SwordSaph");
                                        GameRegistry.registerItem(SwordSilver, "SwordSilver");
                                        GameRegistry.registerItem(SwordImperial, "SwordImperial");
                                        GameRegistry.registerItem(SwordEther, "SwordEther");
                                        GameRegistry.registerItem(LameRunique, "LameRunique");
                                        GameRegistry.registerItem(SwordBlaze, "SwordBlaze");
                                        GameRegistry.registerBlock(Tonneau, "Tonneau");
                                        GameRegistry.registerBlock(Caisse, "Caisse");
                                        GameRegistry.registerBlock(KingBlock, "KingBlock");
                                        GameRegistry.registerItem(RJVR, "RJVR");
                                        GameRegistry.registerItem(GetLow, "GetLow");
                                        GameRegistry.registerItem(Kinetic, "Kinetic");
                                        GameRegistry.registerItem(Muppet, "Muppet");
                                        GameRegistry.registerItem(AronChupa, "AronChupa");
                                        GameRegistry.registerItem(Bullet, "Bullet");
                                        GameRegistry.registerItem(SeeYouAgain, "SeeYouAgain");
                                        GameRegistry.registerItem(FollowMe, "FollowMe");
                                        GameRegistry.registerItem(JeanKevin, "JeanKevin");
                                        GameRegistry.registerItem(Cheezburger, "Cheezburger");
                                        GameRegistry.registerItem(Fromage, "Fromage");
                                        GameRegistry.registerItem(Bol2lait, "Bol2lait");
                                        GameRegistry.registerItem(BaconCru, "BaconCru");
                                        GameRegistry.registerItem(BaconCuit, "BaconCuit");
                                        GameRegistry.registerItem(Chocolat, "Chocolat");
                                        GameRegistry.registerItem(nutella, "nutella");
                                        GameRegistry.registerItem(pate, "pate");
                                        GameRegistry.registerItem(Crepe, "Crepe");
                                        GameRegistry.registerItem(CrepeNutella, "CrepeNutella");
                                        GameRegistry.registerBlock(DalleBlock, "DalleBlock");
                                        GameRegistry.registerBlock(Nuage, "Nuage");
                                        GameRegistry.registerBlock(BlockLum, "BlockLum");
                                        GameRegistry.registerItem(Billet10, "Billet10");
                                        GameRegistry.registerItem(Billet50, "Billet50");
                                        GameRegistry.registerItem(Billet05, "Billet05");
                                        GameRegistry.registerItem(Billet100, "Billet100");
                                        GameRegistry.registerItem(Billet500, "Billet500");
                                        GameRegistry.registerBlock(Table, "Table");
                                        GameRegistry.registerTileEntity(TileEntityTable.class, "lfc:EntityTable");
                                        GameRegistry.registerWorldGenerator(new Generator(), 0);
                                        /************************
                                        * Craft du Block d'Xp *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(XpBlock, 1), new Object[] {"XXX", "XXX", "XXX", 'X', GemmeXp});
                                        /************************
                                        * Fonte du Minerai Xp *
                                        ************************/
                                        GameRegistry.addSmelting(MineraiXP, new ItemStack(GemmeXp, 1), 0.0F);
                                        /***************************
                                        * Craft de la Potion d'xp *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(Items.experience_bottle, 1), new Object[] {" ", " Y ", " X ", 'X', Items.glass_bottle, 'Y', XpBlock});
                                        /*******************************
                                        * Craft du block de Pheonixte *
                                        *******************************/
                                        GameRegistry.addRecipe(new ItemStack(PheoBlock, 1), new Object[] {"XXX", "XXX", "XXX", 'X', GemmePheo});
                                        /******************
                                        * craft Gemme Xp *
                                        ******************/
                                        GameRegistry.addShapelessRecipe(new ItemStack(GemmeXp, 9), XpBlock);
                                        /********************
                                        * Craft Gemme Pheo *
                                        ********************/
                                        GameRegistry.addShapelessRecipe(new ItemStack(GemmePheo, 9), PheoBlock);
                                        /*******************************
                                        * Craft du Baton de Pheonixte *
                                        *******************************/
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {" ", " X ", " X ", 'X', GemmePheo});
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {" ", "X ", "X ", 'X', GemmePheo});
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {" ", " X", " X", 'X', GemmePheo});
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {" X ", " X ", " ", 'X', GemmePheo});
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {"X ", "X ", " ", 'X', GemmePheo});
                                        GameRegistry.addRecipe(new ItemStack(BatonPheo, 1), new Object[] {" X", " X", " ", 'X', GemmePheo});
                                        /***********************************
                                        * Craft de la Pioche de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(PickPheo, 1), new Object[] {"YYY", " X ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        /***********************************
                                        * Craft de la Hache de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(AxePheo, 1), new Object[] {" YY", " XY", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(AxePheo, 1), new Object[] {"YY ", "YX ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(AxePheo, 1), new Object[] {"YY ", "XY ", "X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(AxePheo, 1), new Object[] {" YY", " YX", " X", 'Y', GemmePheo, 'X', BatonPheo});
                                        /***********************************
                                        * Craft de la Pelle de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(ShovelPheo, 1), new Object[] {" Y ", " X ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(ShovelPheo, 1), new Object[] {"Y ", "X ", "X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(ShovelPheo, 1), new Object[] {" Y", " X", " X", 'Y', GemmePheo, 'X', BatonPheo});
                                        /***********************************
                                        * Craft de la Houe de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(HoePheo, 1), new Object[] {" YY", " X ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(HoePheo, 1), new Object[] {"YY ", " X ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(HoePheo, 1), new Object[] {"YY ", "X ", "X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(HoePheo, 1), new Object[] {" YY", " X", " X", 'Y', GemmePheo, 'X', BatonPheo});
                                        /***********************************
                                        * Craft de l'�p� de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(SwordPheo, 1), new Object[] {" Y ", " Y ", " X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(SwordPheo, 1), new Object[] {" Y", " Y", " X", 'Y', GemmePheo, 'X', BatonPheo});
                                        GameRegistry.addRecipe(new ItemStack(SwordPheo, 1), new Object[] {"Y ", "Y ", "X ", 'Y', GemmePheo, 'X', BatonPheo});
                                        /***********************************
                                        * Craft du casque de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(HelmetPheo, 1), new Object[] {"XXX", "X X", " ", 'X', GemmePheo});
                                        /***********************************
                                        * Craft du Plastron de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(ChestPlatePheo, 1), new Object[] {"X X", "XXX", "XXX", 'X', GemmePheo});
                                        /***********************************
                                        * Craft du Pantaqlon de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(LegingsPheo, 1), new Object[] {"XXX", "X X", "X X", 'X', GemmePheo});
                                        /***********************************
                                        * Craft des Botte de pheonixte *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(BootsPheo, 1), new Object[] {" ", "X X", "X X", 'X', GemmePheo});
                                        /****************************
                                        * Craft Casque en Emeraude *
                                        ****************************/
                                        GameRegistry.addRecipe(new ItemStack(HelmetEme, 1), new Object[] {"XXX", "X X", " ", 'X', Items.emerald});
                                        /*******************************
                                        * Craft Plastron en Emeraude *
                                        *******************************/
                                        GameRegistry.addRecipe(new ItemStack(ChestPlateEme, 1), new Object[] {"X X", "XXX", "XXX", 'X', Items.emerald});
                                        /******************************
                                        * Craft Pantalon en Emeraude *
                                        ******************************/
                                        GameRegistry.addRecipe(new ItemStack(LegingsEme, 1), new Object[] {"XXX", "X X", "X X", 'X', Items.emerald});
                                        /***************************
                                        * Craft Botte en Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(BootsEme, 1), new Object[] {" ", "X X", "X X", 'X', Items.emerald});
                                        /***************************
                                        * Craft Baton en Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {" ", " X ", " X ", 'X', Items.emerald});
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {" ", "X ", "X ", 'X', Items.emerald});
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {" ", " X", " X", 'X', Items.emerald});
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {"X ", "X ", " ", 'X', Items.emerald});
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {" X", " X", " ", 'X', Items.emerald});
                                        GameRegistry.addRecipe(new ItemStack(BatonEme, 1), new Object[] {" X ", " X ", " ", 'X', Items.emerald});
                                        /************************
                                        * Craft Emeraude Sword *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(SwordEme, 1), new Object[] {"X ", "X ", "Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(SwordEme, 1), new Object[] {" X ", " X ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(SwordEme, 1), new Object[] {" X", " X", " Y", 'X', Items.emerald, 'Y', BatonEme});
                                        /****************************
                                        * Craft Pioche en Emeraude *
                                        ****************************/
                                        GameRegistry.addRecipe(new ItemStack(PickEme, 1), new Object[] {"XXX", " Y ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        /***************************
                                        * Craft Hache en Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(AxeEme, 1), new Object[] {"XX ", "XY ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(AxeEme, 1), new Object[] {" XX", " YX", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(AxeEme, 1), new Object[] {"XX ", "YX ", "Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(AxeEme, 1), new Object[] {" XX", " XY", " Y", 'X', Items.emerald, 'Y', BatonEme});
                                        /**************************
                                        * Craft Houe en Emeraude *
                                        **************************/
                                        GameRegistry.addRecipe(new ItemStack(HoeEme, 1), new Object[] {"XX ", "Y ", "Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(HoeEme, 1), new Object[] {"XX ", " Y ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(HoeEme, 1), new Object[] {" XX", " Y ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(HoeEme, 1), new Object[] {" XX", " Y", " Y", 'X', Items.emerald, 'Y', BatonEme});
                                        /***************************
                                        * Craft Pelle En Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(ShovelEme, 1), new Object[] {"X ", "Y ", "Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(ShovelEme, 1), new Object[] {" X ", " Y ", " Y ", 'X', Items.emerald, 'Y', BatonEme});
                                        GameRegistry.addRecipe(new ItemStack(ShovelEme, 1), new Object[] {" X", " Y", " Y", 'X', Items.emerald, 'Y', BatonEme});
                                        /************************
                                        * Craft Block de Rubis *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(RubisBlock, 1), new Object[] {"XXX", "XXX", "XXX", 'X', GemmeRubis});
                                        /********************
                                        * Craft GemmeRubis *
                                        ********************/
                                        GameRegistry.addShapelessRecipe(new ItemStack(GemmeRubis, 9), RubisBlock);
                                        /************************
                                        * Craft Baton de Rubis *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {" ", " X ", " X ", 'X', GemmeRubis});
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {" X ", " X ", " ", 'X', GemmeRubis});
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {" ", "X ", "X ", 'X', GemmeRubis});
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {" ", " X", " X", 'X', GemmeRubis});
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {"X ", "X ", " ", 'X', GemmeRubis});
                                        GameRegistry.addRecipe(new ItemStack(BatonRubis, 1), new Object[] {" X", " X", " ", 'X', GemmeRubis});
                                        /************************
                                        * Craft Rubis Sword *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(SwordRubis, 1), new Object[] {"X ", "X ", "Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(SwordRubis, 1), new Object[] {" X ", " X ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(SwordRubis, 1), new Object[] {" X", " X", " Y", 'X', GemmeRubis, 'Y', BatonRubis});
                                        /****************************
                                        * Craft Pioche en Emeraude *
                                        ****************************/
                                        GameRegistry.addRecipe(new ItemStack(PickRubis, 1), new Object[] {"XXX", " Y ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        /***************************
                                        * Craft Hache en Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(AxeRubis, 1), new Object[] {"XX ", "XY ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(AxeRubis, 1), new Object[] {" XX", " YX", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(AxeRubis, 1), new Object[] {"XX ", "YX ", "Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(AxeRubis, 1), new Object[] {" XX", " XY", " Y", 'X', GemmeRubis, 'Y', BatonRubis});
                                        /**************************
                                        * Craft Houe en Emeraude *
                                        **************************/
                                        GameRegistry.addRecipe(new ItemStack(HoeRubis, 1), new Object[] {"XX ", "Y ", "Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(HoeRubis, 1), new Object[] {"XX ", " Y ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(HoeRubis, 1), new Object[] {" XX", " Y ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(HoeRubis, 1), new Object[] {" XX", " Y", " Y", 'X', GemmeRubis, 'Y', BatonRubis});
                                        /***************************
                                        * Craft Pelle En Emeraude *
                                        ***************************/
                                        GameRegistry.addRecipe(new ItemStack(ShovelRubis, 1), new Object[] {"X ", "Y ", "Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(ShovelRubis, 1), new Object[] {" X ", " Y ", " Y ", 'X', GemmeRubis, 'Y', BatonRubis});
                                        GameRegistry.addRecipe(new ItemStack(ShovelRubis, 1), new Object[] {" X", " Y", " Y", 'X', GemmeRubis, 'Y', BatonRubis});
                                        /*********************
                                        * Craft Gemme Rubis *
                                        *********************/
                                        GameRegistry.addShapelessRecipe(new ItemStack(GemmeRubis, 9), RubisBlock);
                                        /***************************************
                                        * Fonte Minerai saphir = Saphir ingot *
                                        ***************************************/
                                        GameRegistry.addSmelting(MineraiSaph, new ItemStack(IngotSaph, 1), 0.3F);
                                        /*************************
                                        * Craft Block de Saphir *
                                        *************************/
                                        GameRegistry.addRecipe(new ItemStack(SaphBlock, 1), new Object[] {"XXX", "XXX", "XXX", 'X', IngotSaph});
                                        /**********************
                                        * Craft Baton Saphir *
                                        **********************/
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {"X ", "X ", " ", 'X', IngotSaph});
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {" X ", " X ", " ", 'X', IngotSaph});
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {" X", " X", " ", 'X', IngotSaph});
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {" ", " X", " X", 'X', IngotSaph});
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {" ", " X ", " X ", 'X', IngotSaph});
                                        GameRegistry.addRecipe(new ItemStack(BatonSaph, 1), new Object[] {" ", "X ", "X ", 'X', IngotSaph});
                                        /***********************************
                                        * Craft de la Pioche de Saphir *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(PickSaph, 1), new Object[] {"YYY", " X ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        /***********************************
                                        * Craft de la Hache de Saphir *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(AxeSaph, 1), new Object[] {" YY", " XY", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(AxeSaph, 1), new Object[] {"YY ", "YX ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(AxeSaph, 1), new Object[] {"YY ", "XY ", "X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(AxeSaph, 1), new Object[] {" YY", " YX", " X", 'Y', IngotSaph, 'X', BatonSaph});
                                        /***********************************
                                        * Craft de la Pelle de Saphir *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(ShovelSaph, 1), new Object[] {" Y ", " X ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(ShovelSaph, 1), new Object[] {"Y ", "X ", "X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(ShovelSaph, 1), new Object[] {" Y", " X", " X", 'Y', IngotSaph, 'X', BatonSaph});
                                        /***********************************
                                        * Craft de la Houe de Saphir *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(HoeSaph, 1), new Object[] {" YY", " X ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(HoeSaph, 1), new Object[] {"YY ", " X ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(HoeSaph, 1), new Object[] {"YY ", "X ", "X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(HoeSaph, 1), new Object[] {" YY", " X", " X", 'Y', IngotSaph, 'X', BatonSaph});
                                        /***********************************
                                        * Craft de l'�p� de Saphir *
                                        ***********************************/
                                        GameRegistry.addRecipe(new ItemStack(SwordSaph, 1), new Object[] {" Y ", " Y ", " X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(SwordSaph, 1), new Object[] {" Y", " Y", " X", 'Y', IngotSaph, 'X', BatonSaph});
                                        GameRegistry.addRecipe(new ItemStack(SwordSaph, 1), new Object[] {"Y ", "Y ", "X ", 'Y', IngotSaph, 'X', BatonSaph});
                                        /*********************************************************************************************/
                                        /*********************
                                        * Craft SilverSword *
                                        *********************/
                                        GameRegistry.addRecipe(new ItemStack(SwordSilver, 1), new Object[] {" Y ", "IYI", " X ", 'X', Items.stick, 'Y', Blocks.iron_block, 'I', Items.iron_ingot});
                                        /************************
                                        * Craft Imperial Sword *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(SwordImperial, 1), new Object[] {" I ", " Y ", " X ", 'X', Items.stick, 'Y', Blocks.redstone_block, 'I', Blocks.iron_block});
                                        GameRegistry.addRecipe(new ItemStack(SwordImperial, 1), new Object[] {" I", " Y", " X", 'X', Items.stick, 'Y', Blocks.redstone_block, 'I', Blocks.iron_block});
                                        GameRegistry.addRecipe(new ItemStack(SwordImperial, 1), new Object[] {"I ", "Y ", "X ", 'X', Items.stick, 'Y', Blocks.redstone_block, 'I', Blocks.iron_block});
                                        /*********************
                                        * Craft Ether Sword *
                                        *********************/
                                        GameRegistry.addRecipe(new ItemStack(SwordEther, 1), new Object[] {" H ", "IYI", " X ", 'X', Items.stick, 'Y', Blocks.gold_block, 'I', Items.gold_ingot, 'H', Blocks.iron_block});
                                        /*********************
                                        * Craft LameRunique Sword *
                                        *********************/
                                        GameRegistry.addRecipe(new ItemStack(LameRunique, 1), new Object[] {" I ", "IYI", " X ", 'X', Items.stick, 'Y', Blocks.obsidian, 'I', Items.diamond});
                                        /*********************
                                        * Craft Blaze Sword *
                                        *********************/
                                        GameRegistry.addRecipe(new ItemStack(SwordBlaze, 1), new Object[] {" Y ", "AIA", " X ", 'X', Items.blaze_rod, 'Y', Blocks.gold_block, 'I', Items.nether_star, 'A', Items.magma_cream});
                                        /********************
                                        * Craft Block Deco *
                                        ********************/
                                        GameRegistry.addRecipe(new ItemStack(Tonneau, 1), new Object[] {"XXX", "YYY", "XXX", 'X', Items.iron_ingot, 'Y', Blocks.planks});
                                        GameRegistry.addRecipe(new ItemStack(Caisse, 1), new Object[] {"XXX", "XXX", "XXX", 'X', Blocks.planks});
                                        /***************
                                        * CheezBurger *
                                        ***************/
                                        GameRegistry.addRecipe(new ItemStack(Cheezburger, 2), new Object[] {"XXX", "YIY", "XXX", 'X', Items.bread, 'I', Items.cooked_beef, 'Y', Fromage});
                                        /**************
                                        * Bol de Lait*
                                        **************/
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {"X ", "Y ", " ", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {" X ", " Y ", " ", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {" X", " Y", " ", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {" ", "X ", "Y ", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {" ", " X ", " Y ", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        GameRegistry.addRecipe(new ItemStack(Bol2lait, 1), new Object[] {" ", " X", " Y", 'X', Items.milk_bucket, 'Y', Items.bowl});
                                        /***********
                                        * Fromage *
                                        ***********/
                                        GameRegistry.addSmelting(Bol2lait, new ItemStack(Fromage, 1), 0.3F);
                                        /*************
                                        * Bacon Cru *
                                        *************/
                                        GameRegistry.addRecipe(new ItemStack(BaconCru, 1), new Object[] {"X ", "X ", "X ", 'X', Items.cooked_porkchop});
                                        GameRegistry.addRecipe(new ItemStack(BaconCru, 1), new Object[] {" X ", " X ", " X ", 'X', Items.cooked_porkchop});
                                        GameRegistry.addRecipe(new ItemStack(BaconCru, 1), new Object[] {" X", " X", " X", 'X', Items.cooked_porkchop});
                                        /**************
                                        * Bacon Cuit *
                                        **************/
                                        GameRegistry.addSmelting(BaconCru, new ItemStack(BaconCuit, 1), 0.4F);
                                        /************
                                        * Chocolat *
                                        ************/
                                        GameRegistry.addRecipe(new ItemStack(Chocolat, 1), new Object[] {"XXX", "XXX", "XXX", 'X', Items.dye});
                                        /***********
                                        * Nutella *
                                        ***********/
                                        GameRegistry.addRecipe(new ItemStack(nutella, 1), new Object[] {"XXX", "XYX", "XXX", 'X', Blocks.glass, 'Y', Chocolat});
                                        /********
                                        * pate *
                                        ********/
                                        GameRegistry.addRecipe(new ItemStack(pate, 1), new Object[] {" ", "IYI", "XXX", 'X', Items.wheat, 'Y', Items.egg, 'I', Items.sugar});
                                        GameRegistry.addRecipe(new ItemStack(pate, 1), new Object[] {"IYI", "XXX", " ", 'X', Items.wheat, 'Y', Items.egg, 'I', Items.sugar});
                                        /*********
                                        * Crepe *
                                        *********/
                                        GameRegistry.addRecipe(new ItemStack(Crepe, 1), new Object[] {"XXX", " ", " ", 'X', pate});
                                        GameRegistry.addRecipe(new ItemStack(Crepe, 1), new Object[] {" ", "XXX", " ", 'X', pate});
                                        GameRegistry.addRecipe(new ItemStack(Crepe, 1), new Object[] {" ", " ", "XXX", 'X', pate});
                                        /*******************
                                        * Crepe au Nutella*
                                        *******************/
                                        GameRegistry.addRecipe(new ItemStack(CrepeNutella, 1), new Object[] {" ", " X ", " Y ", 'X', nutella, 'Y', Crepe,});
                                        GameRegistry.addRecipe(new ItemStack(CrepeNutella, 1), new Object[] {"X ", "Y ", " ", 'X', nutella, 'Y', Crepe,});
                                        GameRegistry.addRecipe(new ItemStack(CrepeNutella, 1), new Object[] {" X", " Y", " ", 'X', nutella, 'Y', Crepe,});
                                        GameRegistry.addRecipe(new ItemStack(CrepeNutella, 1), new Object[] {" ", "X ", "Y ", 'X', nutella, 'Y', Crepe,});
                                        GameRegistry.addRecipe(new ItemStack(CrepeNutella, 1), new Object[] {" ", " X", " Y", 'X', nutella, 'Y', Crepe,});
                                        /*******************************
                                        * Craft Block de Double Dalle *
                                        ******************************/
                                        GameRegistry.addRecipe(new ItemStack(DalleBlock, 1), new Object[] {" ", " X ", " X ", 'X', Blocks.stone_slab});
                                        /************************
                                        * Craft Block de Nuage *
                                        ************************/
                                        GameRegistry.addRecipe(new ItemStack(Nuage, 4), new Object[] {"XXX", "XYX", "XYX", 'X', Blocks.wool, 'Y', Items.water_bucket});
                                        /************************
                                        * Craft Block Lumineux *
                                        ***********************/
                                        GameRegistry.addRecipe(new ItemStack(BlockLum, 4), new Object[] {" X ", "XYX", " X ", 'X', Nuage, 'Y', Blocks.glowstone});
                                        }
                                        
                                        @Mod.EventHandler
                                        public void postInit(FMLPostInitializationEvent event)
                                        {
                                        System.out.println("postInit");
                                        }
                                        }
                                        

                                        La Classe Du Bloc

                                        package fr.burning.lfc.blocks;
                                        
                                        import fr.burning.lfc.lib.ProxyClient;
                                        import fr.burning.lfc.tile.TileEntityTable;
                                        import net.minecraft.block.Block;
                                        import net.minecraft.block.material.Material;
                                        import net.minecraft.tileentity.TileEntity;
                                        import net.minecraft.world.IBlockAccess;
                                        import net.minecraft.world.World;
                                        
                                        public class Table extends Block 
                                        {
                                        
                                        public Table(int i, Material material) 
                                        {
                                        super(material);
                                        this.setBlockName("Table");
                                        
                                        }
                                        
                                        @Override
                                           public TileEntity createTileEntity(World world, int metadata)
                                           {
                                               return new TileEntityTable();
                                           }
                                        
                                           @Override
                                           public boolean hasTileEntity(int metadata)
                                           {
                                               return true;
                                           }
                                        
                                           public boolean isOpaqueCube()
                                           {
                                               return false;
                                           }
                                        
                                           public boolean renderAsNormalBlock()
                                           {
                                               return false;
                                           }
                                        
                                           public int getRenderType()
                                           {
                                               return ProxyClient.tesrRenderId;
                                           }
                                        
                                           public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z)
                                           {
                                               this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
                                           }
                                        }
                                        
                                        1 réponse Dernière réponse Répondre Citer 0
                                        • FolganskyF Hors-ligne
                                          Folgansky Correcteurs
                                          dernière édition par

                                          Je ne sais pas si tu es en 1.8 et que je parle en vain mais dans ta classe normalement tu peux déclarer tes items à la suite comme les blocs.

                                          Exemple:

                                          public static Item truc, bidule, machine, chose, autre, trololo, voila, fini;
                                          

                                          Si tu veux les trier tu as juste à sauter une ligne après une virgule et continuer à déclarer.

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

                                            @‘Toutoune1008’:

                                            Je ne sais pas si tu es en 1.8 et que je parle en vain mais dans ta classe normalement tu peux déclarer tes items à la suite comme les blocs.

                                            Exemple:

                                            public static Item truc, bidule, machine, chose, autre, trololo, voila, fini;
                                            

                                            Si tu veux les trier tu as juste à sauter une ligne après une virgule et continuer à déclarer.

                                            Je suis en 1.7.2,  je sais que l’on peut les déclarer avec des virgule mais je mis retrouve mieux comme sa XD ^^ , merci quand même 😉

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB