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

Faire un nouveau four

Les blocs
1.6.x
15
70
24.6k
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.
  • Superloup10
    Superloup10 Modérateurs dernière édition par 3 sept. 2013, 14:48

    Si je ne me trompe ceci java protected static final GuiHandler guihandler = new GuiHandler(); doit être avant le PreInit, ceci ```java
    NetworkRegistry.instance().registerGuiHandler(this, guihandler);
    GameRegistry.registerTileEntity(TileEntityFour.class, “TileEntityFour”);

    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
    • O
      Oniro dernière édition par 3 sept. 2013, 15:04

      Nope ça ne fonctionne pas 😕

      1 réponse Dernière réponse Répondre Citer 0
      • Superloup10
        Superloup10 Modérateurs dernière édition par 3 sept. 2013, 15:17

        Alors je vois vraiment pas pourquoi ça ne fonctionne pas.

        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
        • robin4002
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 3 sept. 2013, 16:13

          @Mod(modid = “HS”, name = “Haven-Craft”, version = “V.01”)

          @Instance(“havremain”)
          public static havremain instance;

          Les deux String que j’ai mis en rouge doivent être identique.

          1 réponse Dernière réponse Répondre Citer 1
          • O
            Oniro dernière édition par 3 sept. 2013, 16:47

            Robin, si j’étais ne femme je pense que je te sauterait dessus!! Blague Merci! J’ai encore beaucoup de chose à apprendre ^^

            1 réponse Dernière réponse Répondre Citer 0
            • Gugu
              Gugu dernière édition par 3 sept. 2013, 18:00

              Ah, j’avais pas pensé a une erreur aussi simple 😆

              "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
              ― Jordan B. Peterson

              1 réponse Dernière réponse Répondre Citer 0
              • O
                Oniro dernière édition par 3 sept. 2013, 19:23

                y a-t-il un moyen de faire que les particule de feu soit sur le “Top”?

                1 réponse Dernière réponse Répondre Citer 0
                • Gugu
                  Gugu dernière édition par 3 sept. 2013, 20:34

                  Augmente la position Y

                  "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                  ― Jordan B. Peterson

                  1 réponse Dernière réponse Répondre Citer 0
                  • O
                    Oniro dernière édition par 3 sept. 2013, 20:36

                    Euh, dans quel partie du code?? Ça?

                    /**
                    * Tick au hasard qui fait spawn des flammes et de la fumée
                    */
                    public void randomDisplayTick(World par1World, int par2, int par3, int par4, Random par5Random)
                    {
                    if (this.isActive)
                    {
                    int l = par1World.getBlockMetadata(par2, par3, par4);
                    float f = (float)par2 + 0.5F;
                    float f1 = (float)par3 + 0.0F + par5Random.nextFloat() * 6.0F / 16.0F;
                    float f2 = (float)par4 + 0.5F;
                    float f3 = 0.52F;
                    float f4 = par5Random.nextFloat() * 0.6F - 0.3F;
                    if (l == 4)
                    {
                    par1World.spawnParticle("smoke", (double)(f - f3), (double)f1, (double)(f2 + f4), 0.0D, 0.0D, 0.0D);
                    par1World.spawnParticle("flame", (double)(f - f3), (double)f1, (double)(f2 + f4), 0.0D, 0.0D, 0.0D);
                    }
                    else if (l == 5)
                    {
                    par1World.spawnParticle("smoke", (double)(f + f3), (double)f1, (double)(f2 + f4), 0.0D, 0.0D, 0.0D);
                    par1World.spawnParticle("flame", (double)(f + f3), (double)f1, (double)(f2 + f4), 0.0D, 0.0D, 0.0D);
                    }
                    else if (l == 2)
                    {
                    par1World.spawnParticle("smoke", (double)(f + f4), (double)f1, (double)(f2 - f3), 0.0D, 0.0D, 0.0D);
                    par1World.spawnParticle("flame", (double)(f + f4), (double)f1, (double)(f2 - f3), 0.0D, 0.0D, 0.0D);
                    }
                    else if (l == 3)
                    {
                    par1World.spawnParticle("smoke", (double)(f + f4), (double)f1, (double)(f2 + f3), 0.0D, 0.0D, 0.0D);
                    par1World.spawnParticle("flame", (double)(f + f4), (double)f1, (double)(f2 + f3), 0.0D, 0.0D, 0.0D);
                    }
                    }
                    }
                    1 réponse Dernière réponse Répondre Citer 0
                    • Gugu
                      Gugu dernière édition par 4 sept. 2013, 09:48

                      f1 = Position Y

                      "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                      ― Jordan B. Peterson

                      1 réponse Dernière réponse Répondre Citer 0
                      • O
                        Oniro dernière édition par 4 sept. 2013, 21:43

                        ok merci

                        1 réponse Dernière réponse Répondre Citer 0
                        • O
                          Oniro dernière édition par 7 sept. 2013, 01:53

                          Bon, je voudrais qu’on ne puisse utiliser que le bucket de lave dans le four. Mais lorsque je retire les autre objet de fuel, je ne peut pu rien faire cuir! Le bucket ne fonctionne pas!!

                          package havre;
                          import net.minecraft.block.Block;
                          import net.minecraft.block.material.Material;
                          import net.minecraft.entity.player.EntityPlayer;
                          import net.minecraft.inventory.ISidedInventory;
                          import net.minecraft.item.Item;
                          import net.minecraft.item.ItemBlock;
                          import net.minecraft.item.ItemHoe;
                          import net.minecraft.item.ItemStack;
                          import net.minecraft.item.ItemSword;
                          import net.minecraft.item.ItemTool;
                          import net.minecraft.nbt.NBTTagCompound;
                          import net.minecraft.nbt.NBTTagList;
                          import net.minecraft.tileentity.TileEntity;
                          import cpw.mods.fml.common.registry.GameRegistry;
                          import cpw.mods.fml.relauncher.Side;
                          import cpw.mods.fml.relauncher.SideOnly;
                          public class TileEntityFour extends TileEntity implements ISidedInventory
                          {
                          private ItemStack[] furnaceItemStacks = new ItemStack[3];
                          public int getSizeInventory()
                          {
                          return this.furnaceItemStacks.length;
                          }
                          public ItemStack getStackInSlot(int par1)
                          {
                          return this.furnaceItemStacks[par1];
                          }
                          public ItemStack decrStackSize(int par1, int par2)
                          {
                          if (this.furnaceItemStacks[par1] != null)
                          {
                          ItemStack itemstack;
                          if (this.furnaceItemStacks[par1].stackSize <= par2)
                          {
                          itemstack = this.furnaceItemStacks[par1];
                          this.furnaceItemStacks[par1] = null;
                          return itemstack;
                          }
                          else
                          {
                          itemstack = this.furnaceItemStacks[par1].splitStack(par2);
                          if (this.furnaceItemStacks[par1].stackSize == 0)
                          {
                          this.furnaceItemStacks[par1] = null;
                          }
                          return itemstack;
                          }
                          }
                          else
                          {
                          return null;
                          }
                          }
                          public ItemStack getStackInSlotOnClosing(int par1)
                          {
                          if (this.furnaceItemStacks[par1] != null)
                          {
                          ItemStack itemstack = this.furnaceItemStacks[par1];
                          this.furnaceItemStacks[par1] = null;
                          return itemstack;
                          }
                          else
                          {
                          return null;
                          }
                          }
                          public void setInventorySlotContents(int par1, ItemStack par2ItemStack)
                          {
                          this.furnaceItemStacks[par1] = par2ItemStack;
                          if (par2ItemStack != null && par2ItemStack.stackSize > this.getInventoryStackLimit())
                          {
                          par2ItemStack.stackSize = this.getInventoryStackLimit();
                          }
                          }
                          private String field_94130_e; //Variable a mettre au debut de votre classe
                          public String getInvName()
                          {
                          return this.isInvNameLocalized() ? this.field_94130_e : "container.four"; //Ici, c'est en rapport avec le fichier lang :o
                          }
                          public boolean isInvNameLocalized()
                          {
                          return this.field_94130_e != null && this.field_94130_e.length() > 0;
                          }
                          public void setGuiDisplayName(String par1Str)
                          {
                          this.field_94130_e = par1Str;
                          }
                          public void readFromNBT(NBTTagCompound par1NBTTagCompound)
                          {
                          super.readFromNBT(par1NBTTagCompound);
                          NBTTagList nbttaglist = par1NBTTagCompound.getTagList("Items");
                          this.furnaceItemStacks = new ItemStack[this.getSizeInventory()];
                          for (int i = 0; i < nbttaglist.tagCount(); ++i)
                          {
                          NBTTagCompound nbttagcompound1 = (NBTTagCompound)nbttaglist.tagAt(i);
                          byte b0 = nbttagcompound1.getByte("Slot");
                          if (b0 >= 0 && b0 < this.furnaceItemStacks.length)
                          {
                          this.furnaceItemStacks[b0] = ItemStack.loadItemStackFromNBT(nbttagcompound1);
                          }
                          }
                          this.furnaceBurnTime = par1NBTTagCompound.getShort("BurnTime");
                          this.furnaceCookTime = par1NBTTagCompound.getShort("CookTime");
                          this.currentItemBurnTime = getItemBurnTime(this.furnaceItemStacks[1]);
                          if (par1NBTTagCompound.hasKey("CustomName"))
                          {
                          this.field_94130_e = par1NBTTagCompound.getString("CustomName");
                          }
                          }
                          public void writeToNBT(NBTTagCompound par1NBTTagCompound)
                          {
                          super.writeToNBT(par1NBTTagCompound);
                          par1NBTTagCompound.setShort("BurnTime", (short)this.furnaceBurnTime);
                          par1NBTTagCompound.setShort("CookTime", (short)this.furnaceCookTime);
                          NBTTagList nbttaglist = new NBTTagList();
                          for (int i = 0; i < this.furnaceItemStacks.length; ++i)
                          {
                          if (this.furnaceItemStacks* != null)
                          {
                          NBTTagCompound nbttagcompound1 = new NBTTagCompound();
                          nbttagcompound1.setByte("Slot", (byte)i);
                          this.furnaceItemStacks*.writeToNBT(nbttagcompound1);
                          nbttaglist.appendTag(nbttagcompound1);
                          }
                          }
                          par1NBTTagCompound.setTag("Items", nbttaglist);
                          if (this.isInvNameLocalized())
                          {
                          par1NBTTagCompound.setString("CustomName", this.field_94130_e);
                          }
                          }
                          private static final int[] slots_top = new int[] {0};
                          private static final int[] slots_bottom = new int[] {2, 1};
                          private static final int[] slots_sides = new int[] {1};
                          public int furnaceBurnTime;
                          public int furnaceCookTime;
                          public int currentItemBurnTime;
                          public int getInventoryStackLimit()
                          {
                          return 64;
                          }
                          @SideOnly(Side.CLIENT)
                          public int getCookProgressScaled(int par1)
                          {
                          return this.furnaceCookTime * par1 / 200;
                          }
                          @SideOnly(Side.CLIENT)
                          public int getBurnTimeRemainingScaled(int par1)
                          {
                          if (this.currentItemBurnTime == 0)
                          {
                          this.currentItemBurnTime = 200;
                          }
                          return this.furnaceBurnTime * par1 / this.currentItemBurnTime;
                          }
                          public boolean isBurning()
                          {
                          return this.furnaceBurnTime > 0;
                          }
                          public void updateEntity()
                          {
                          boolean flag = this.furnaceBurnTime > 0;
                          boolean flag1 = false;
                          if (this.furnaceBurnTime > 0)
                          {
                          –this.furnaceBurnTime;
                          }
                          if (!this.worldObj.isRemote)
                          {
                          if (this.furnaceBurnTime == 0 && this.canSmelt())
                          {
                          this.currentItemBurnTime = this.furnaceBurnTime = getItemBurnTime(this.furnaceItemStacks[1]);
                          if (this.furnaceBurnTime > 0)
                          {
                          flag1 = true;
                          if (this.furnaceItemStacks[1] != null)
                          {
                          –this.furnaceItemStacks[1].stackSize;
                          if (this.furnaceItemStacks[1].stackSize == 0)
                          {
                          this.furnaceItemStacks[1] = this.furnaceItemStacks[1].getItem().getContainerItemStack(furnaceItemStacks[1]);
                          }
                          }
                          }
                          }
                          if (this.isBurning() && this.canSmelt())
                          {
                          ++this.furnaceCookTime;
                          if (this.furnaceCookTime == 200)
                          {
                          this.furnaceCookTime = 0;
                          this.smeltItem();
                          flag1 = true;
                          }
                          }
                          else
                          {
                          this.furnaceCookTime = 0;
                          }
                          if (flag != this.furnaceBurnTime > 0)
                          {
                          flag1 = true;
                          BlockFour.updateFurnaceBlockState(this.furnaceBurnTime > 0, this.worldObj, this.xCoord, this.yCoord, this.zCoord);
                          }
                          }
                          if (flag1)
                          {
                          this.onInventoryChanged();
                          }
                          }
                          private boolean canSmelt()
                          {
                          if (this.furnaceItemStacks[0] == null)
                          {
                          return false;
                          }
                          else
                          {
                          ItemStack itemstack = RecipesFour.smelting().getSmeltingResult(this.furnaceItemStacks[0]);
                          if (itemstack == null) return false;
                          if (this.furnaceItemStacks[2] == null) return true;
                          if (!this.furnaceItemStacks[2].isItemEqual(itemstack)) return false;
                          int result = furnaceItemStacks[2].stackSize + itemstack.stackSize;
                          return (result <= getInventoryStackLimit() && result <= itemstack.getMaxStackSize());
                          }
                          }
                          public void smeltItem()
                          {
                          if (this.canSmelt())
                          {
                          ItemStack itemstack = RecipesFour.smelting().getSmeltingResult(this.furnaceItemStacks[0]);
                          if (this.furnaceItemStacks[2] == null)
                          {
                          this.furnaceItemStacks[2] = itemstack.copy();
                          }
                          else if (this.furnaceItemStacks[2].isItemEqual(itemstack))
                          {
                          furnaceItemStacks[2].stackSize += itemstack.stackSize;
                          }
                          –this.furnaceItemStacks[0].stackSize;
                          if (this.furnaceItemStacks[0].stackSize <= 0)
                          {
                          this.furnaceItemStacks[0] = null;
                          }
                          }
                          }
                          public static int getItemBurnTime(ItemStack par0ItemStack)
                          {
                          if (par0ItemStack == null)
                          {
                          return 0;
                          }
                          else
                          {
                          int i = par0ItemStack.getItem().itemID;
                          Item item = par0ItemStack.getItem();
                          if (par0ItemStack.getItem() instanceof ItemBlock && Block.blocksList* != null)
                          {
                          Block block = Block.blocksList*;
                          if (block == Block.woodSingleSlab)
                          {
                          return 150;
                          }
                          if (block.blockMaterial == Material.wood)
                          {
                          return 300;
                          }
                          if (block == Block.field_111034_cE)
                          {
                          return 16000;
                          }
                          }
                          if (item instanceof ItemTool && ((ItemTool) item).getToolMaterialName().equals("WOOD")) return 200;
                          if (item instanceof ItemSword && ((ItemSword) item).getToolMaterialName().equals("WOOD")) return 200;
                          if (item instanceof ItemHoe && ((ItemHoe) item).getMaterialName().equals("WOOD")) return 200;
                          if (i == Item.stick.itemID) return 100;
                          if (i == Item.coal.itemID) return 1600;
                          if (i == Item.bucketLava.itemID) return 20000;
                          if (i == Block.sapling.blockID) return 100;
                          if (i == Item.blazeRod.itemID) return 2400;
                          return GameRegistry.getFuelValue(par0ItemStack);
                          }
                          }
                          public static boolean isItemFuel(ItemStack par0ItemStack)
                          {
                          return getItemBurnTime(par0ItemStack) > 0;
                          }
                          public boolean isUseableByPlayer(EntityPlayer par1EntityPlayer)
                          {
                          return this.worldObj.getBlockTileEntity(this.xCoord, this.yCoord, this.zCoord) != this ? false : par1EntityPlayer.getDistanceSq((double)this.xCoord + 0.5D, (double)this.yCoord + 0.5D, (double)this.zCoord + 0.5D) <= 64.0D;
                          }
                          public void openChest() {}
                          public void closeChest() {}
                          public boolean isItemValidForSlot(int par1, ItemStack par2ItemStack)
                          {
                          return par1 == 2 ? false : (par1 == 1 ? isItemFuel(par2ItemStack) : true);
                          }
                          public int[] getAccessibleSlotsFromSide(int par1)
                          {
                          return par1 == 0 ? slots_bottom : (par1 == 1 ? slots_top : slots_sides);
                          }
                          public boolean canInsertItem(int par1, ItemStack par2ItemStack, int par3)
                          {
                          return this.isItemValidForSlot(par1, par2ItemStack);
                          }
                          public boolean canExtractItem(int par1, ItemStack par2ItemStack, int par3)
                          {
                          return par3 != 0 || par1 != 1 || par2ItemStack.itemID == Item.bucketEmpty.itemID;
                          }
                          }
                          1 réponse Dernière réponse Répondre Citer 0
                          • Gugu
                            Gugu dernière édition par 7 sept. 2013, 08:10

                            Envoie uniquement le code que tu as modifié, et formate le, car la c’est un gros tas de code très … plat ?

                            Fait CTRL+MAJ+F dans eclipse pour le formater de manière rapide et efficace.

                            De plus, tes mappings sont incomplets je pense.

                            "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                            ― Jordan B. Peterson

                            1 réponse Dernière réponse Répondre Citer 0
                            • O
                              Oniro dernière édition par 7 sept. 2013, 16:22

                              Mon TileEntityFour

                              public static int getItemBurnTime(ItemStack par0ItemStack) {
                              if (par0ItemStack == null) {
                              return 0;
                              } else {
                              int i = par0ItemStack.getItem().itemID;
                              Item item = par0ItemStack.getItem();
                              if (i == Item.bucketLava.itemID)
                              return 20000;
                              return GameRegistry.getFuelValue(par0ItemStack);
                              }
                              }
                              1 réponse Dernière réponse Répondre Citer 0
                              • Gugu
                                Gugu dernière édition par 7 sept. 2013, 19:02

                                C’est assez étrange …

                                Essaie de remettre un autre item ( Genre coal ) et de tester

                                Si il faut deux items minimum, mets un item non obtenable normalement avec une valeure nulle pour palier au bug

                                "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                                ― Jordan B. Peterson

                                1 réponse Dernière réponse Répondre Citer 0
                                • O
                                  Oniro dernière édition par 7 sept. 2013, 19:30

                                  Ça ne fonctionne pas

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • Gugu
                                    Gugu dernière édition par 7 sept. 2013, 19:31

                                    Je vois pas du tout d’où ça viens 😕

                                    "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                                    ― Jordan B. Peterson

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • O
                                      Oniro dernière édition par 7 sept. 2013, 20:14

                                      Dommage 😕

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • O
                                        Oniro dernière édition par 8 sept. 2013, 10:20

                                        Bon la je comprend pas, j’ai remis mon TileEntityFour comme avant, mais mon Four ne veut pu rien faire cuir!!!

                                        package havre;
                                        import net.minecraft.block.Block;
                                        import net.minecraft.block.material.Material;
                                        import net.minecraft.entity.player.EntityPlayer;
                                        import net.minecraft.inventory.ISidedInventory;
                                        import net.minecraft.item.Item;
                                        import net.minecraft.item.ItemBlock;
                                        import net.minecraft.item.ItemHoe;
                                        import net.minecraft.item.ItemStack;
                                        import net.minecraft.item.ItemSword;
                                        import net.minecraft.item.ItemTool;
                                        import net.minecraft.nbt.NBTTagCompound;
                                        import net.minecraft.nbt.NBTTagList;
                                        import net.minecraft.tileentity.TileEntity;
                                        import cpw.mods.fml.common.registry.GameRegistry;
                                        import cpw.mods.fml.relauncher.Side;
                                        import cpw.mods.fml.relauncher.SideOnly;
                                        public class TileEntityFour extends TileEntity implements ISidedInventory {
                                        private ItemStack[] furnaceItemStacks = new ItemStack[3];
                                        public int getSizeInventory() {
                                        return this.furnaceItemStacks.length;
                                        }
                                        public ItemStack getStackInSlot(int par1) {
                                        return this.furnaceItemStacks[par1];
                                        }
                                        public ItemStack decrStackSize(int par1, int par2) {
                                        if (this.furnaceItemStacks[par1] != null) {
                                        ItemStack itemstack;
                                        if (this.furnaceItemStacks[par1].stackSize <= par2) {
                                        itemstack = this.furnaceItemStacks[par1];
                                        this.furnaceItemStacks[par1] = null;
                                        return itemstack;
                                        } else {
                                        itemstack = this.furnaceItemStacks[par1].splitStack(par2);
                                        if (this.furnaceItemStacks[par1].stackSize == 0) {
                                        this.furnaceItemStacks[par1] = null;
                                        }
                                        return itemstack;
                                        }
                                        } else {
                                        return null;
                                        }
                                        }
                                        public ItemStack getStackInSlotOnClosing(int par1) {
                                        if (this.furnaceItemStacks[par1] != null) {
                                        ItemStack itemstack = this.furnaceItemStacks[par1];
                                        this.furnaceItemStacks[par1] = null;
                                        return itemstack;
                                        } else {
                                        return null;
                                        }
                                        }
                                        public void setInventorySlotContents(int par1, ItemStack par2ItemStack) {
                                        this.furnaceItemStacks[par1] = par2ItemStack;
                                        if (par2ItemStack != null
                                        && par2ItemStack.stackSize > this.getInventoryStackLimit()) {
                                        par2ItemStack.stackSize = this.getInventoryStackLimit();
                                        }
                                        }
                                        private String field_94130_e; // Variable a mettre au debut de votre classe
                                        public String getInvName() {
                                        return this.isInvNameLocalized() ? this.field_94130_e
                                        : "container.four"; // Ici, c'est en rapport avec le fichier
                                        // lang :o
                                        }
                                        public boolean isInvNameLocalized() {
                                        return this.field_94130_e != null && this.field_94130_e.length() > 0;
                                        }
                                        public void setGuiDisplayName(String par1Str) {
                                        this.field_94130_e = par1Str;
                                        }
                                        public void readFromNBT(NBTTagCompound par1NBTTagCompound) {
                                        super.readFromNBT(par1NBTTagCompound);
                                        NBTTagList nbttaglist = par1NBTTagCompound.getTagList("Items");
                                        this.furnaceItemStacks = new ItemStack[this.getSizeInventory()];
                                        for (int i = 0; i < nbttaglist.tagCount(); ++i) {
                                        NBTTagCompound nbttagcompound1 = (NBTTagCompound) nbttaglist
                                        .tagAt(i);
                                        byte b0 = nbttagcompound1.getByte("Slot");
                                        if (b0 >= 0 && b0 < this.furnaceItemStacks.length) {
                                        this.furnaceItemStacks[b0] = ItemStack
                                        .loadItemStackFromNBT(nbttagcompound1);
                                        }
                                        }
                                        this.furnaceBurnTime = par1NBTTagCompound.getShort("BurnTime");
                                        this.furnaceCookTime = par1NBTTagCompound.getShort("CookTime");
                                        this.currentItemBurnTime = getItemBurnTime(this.furnaceItemStacks[1]);
                                        if (par1NBTTagCompound.hasKey("CustomName")) {
                                        this.field_94130_e = par1NBTTagCompound.getString("CustomName");
                                        }
                                        }
                                        public void writeToNBT(NBTTagCompound par1NBTTagCompound) {
                                        super.writeToNBT(par1NBTTagCompound);
                                        par1NBTTagCompound.setShort("BurnTime", (short) this.furnaceBurnTime);
                                        par1NBTTagCompound.setShort("CookTime", (short) this.furnaceCookTime);
                                        NBTTagList nbttaglist = new NBTTagList();
                                        for (int i = 0; i < this.furnaceItemStacks.length; ++i) {
                                        if (this.furnaceItemStacks* != null) {
                                        NBTTagCompound nbttagcompound1 = new NBTTagCompound();
                                        nbttagcompound1.setByte("Slot", (byte) i);
                                        this.furnaceItemStacks*.writeToNBT(nbttagcompound1);
                                        nbttaglist.appendTag(nbttagcompound1);
                                        }
                                        }
                                        par1NBTTagCompound.setTag("Items", nbttaglist);
                                        if (this.isInvNameLocalized()) {
                                        par1NBTTagCompound.setString("CustomName", this.field_94130_e);
                                        }
                                        }
                                        private static final int[] slots_top = new int[] { 0 };
                                        private static final int[] slots_bottom = new int[] { 2, 1 };
                                        private static final int[] slots_sides = new int[] { 1 };
                                        public int furnaceBurnTime;
                                        public int furnaceCookTime;
                                        public int currentItemBurnTime;
                                        public int getInventoryStackLimit() {
                                        return 64;
                                        }
                                        @SideOnly(Side.CLIENT)
                                        public int getCookProgressScaled(int par1) {
                                        return this.furnaceCookTime * par1 / 200;
                                        }
                                        @SideOnly(Side.CLIENT)
                                        public int getBurnTimeRemainingScaled(int par1) {
                                        if (this.currentItemBurnTime == 0) {
                                        this.currentItemBurnTime = 200;
                                        }
                                        return this.furnaceBurnTime * par1 / this.currentItemBurnTime;
                                        }
                                        public boolean isBurning() {
                                        return this.furnaceBurnTime > 0;
                                        }
                                        public void updateEntity() {
                                        boolean flag = this.furnaceBurnTime > 0;
                                        boolean flag1 = false;
                                        if (this.furnaceBurnTime > 0) {
                                        –this.furnaceBurnTime;
                                        }
                                        if (!this.worldObj.isRemote) {
                                        if (this.furnaceBurnTime == 0 && this.canSmelt()) {
                                        this.currentItemBurnTime = this.furnaceBurnTime = getItemBurnTime(this.furnaceItemStacks[1]);
                                        if (this.furnaceBurnTime > 0) {
                                        flag1 = true;
                                        if (this.furnaceItemStacks[1] != null) {
                                        –this.furnaceItemStacks[1].stackSize;
                                        if (this.furnaceItemStacks[1].stackSize == 0) {
                                        this.furnaceItemStacks[1] = this.furnaceItemStacks[1]
                                        .getItem().getContainerItemStack(
                                        furnaceItemStacks[1]);
                                        }
                                        }
                                        }
                                        }
                                        if (this.isBurning() && this.canSmelt()) {
                                        ++this.furnaceCookTime;
                                        if (this.furnaceCookTime == 200) {
                                        this.furnaceCookTime = 0;
                                        this.smeltItem();
                                        flag1 = true;
                                        }
                                        } else {
                                        this.furnaceCookTime = 0;
                                        }
                                        if (flag != this.furnaceBurnTime > 0) {
                                        flag1 = true;
                                        BlockFour.updateFurnaceBlockState(this.furnaceBurnTime > 0,
                                        this.worldObj, this.xCoord, this.yCoord, this.zCoord);
                                        }
                                        }
                                        if (flag1) {
                                        this.onInventoryChanged();
                                        }
                                        }
                                        private boolean canSmelt() {
                                        if (this.furnaceItemStacks[0] == null) {
                                        return false;
                                        } else {
                                        ItemStack itemstack = RecipesFour.smelting().getSmeltingResult(
                                        this.furnaceItemStacks[0]);
                                        if (itemstack == null)
                                        return false;
                                        if (this.furnaceItemStacks[2] == null)
                                        return true;
                                        if (!this.furnaceItemStacks[2].isItemEqual(itemstack))
                                        return false;
                                        int result = furnaceItemStacks[2].stackSize + itemstack.stackSize;
                                        return (result <= getInventoryStackLimit() && result <= itemstack
                                        .getMaxStackSize());
                                        }
                                        }
                                        public void smeltItem() {
                                        if (this.canSmelt()) {
                                        ItemStack itemstack = RecipesFour.smelting().getSmeltingResult(
                                        this.furnaceItemStacks[0]);
                                        if (this.furnaceItemStacks[2] == null) {
                                        this.furnaceItemStacks[2] = itemstack.copy();
                                        } else if (this.furnaceItemStacks[2].isItemEqual(itemstack)) {
                                        furnaceItemStacks[2].stackSize += itemstack.stackSize;
                                        }
                                        –this.furnaceItemStacks[0].stackSize;
                                        if (this.furnaceItemStacks[0].stackSize <= 0) {
                                        this.furnaceItemStacks[0] = null;
                                        }
                                        }
                                        }
                                        public static int getItemBurnTime(ItemStack par0ItemStack) {
                                        if (par0ItemStack == null) {
                                        return 0;
                                        } else {
                                        int i = par0ItemStack.getItem().itemID;
                                        Item item = par0ItemStack.getItem();
                                        if (par0ItemStack.getItem() instanceof ItemBlock
                                        && Block.blocksList* != null) {
                                        Block block = Block.blocksList*;
                                        if (block == Block.woodSingleSlab) {
                                        return 150;
                                        }
                                        if (block.blockMaterial == Material.wood) {
                                        return 300;
                                        }
                                        if (block == Block.field_111034_cE) {
                                        return 16000;
                                        }
                                        }
                                        if (item instanceof ItemTool
                                        && ((ItemTool) item).getToolMaterialName().equals("WOOD"))
                                        return 200;
                                        if (item instanceof ItemSword
                                        && ((ItemSword) item).getToolMaterialName().equals("WOOD"))
                                        return 200;
                                        if (item instanceof ItemHoe
                                        && ((ItemHoe) item).getMaterialName().equals("WOOD"))
                                        return 200;
                                        if (i == Item.stick.itemID)
                                        return 100;
                                        if (i == Item.coal.itemID)
                                        return 1600;
                                        if (i == Item.bucketLava.itemID)
                                        return 20000;
                                        if (i == Block.sapling.blockID)
                                        return 100;
                                        if (i == Item.blazeRod.itemID)
                                        return 2400;
                                        return GameRegistry.getFuelValue(par0ItemStack);
                                        }
                                        }
                                        public static boolean isItemFuel(ItemStack par0ItemStack) {
                                        return getItemBurnTime(par0ItemStack) > 0;
                                        }
                                        public boolean isUseableByPlayer(EntityPlayer par1EntityPlayer) {
                                        return this.worldObj.getBlockTileEntity(this.xCoord, this.yCoord,
                                        this.zCoord) != this ? false : par1EntityPlayer.getDistanceSq(
                                        (double) this.xCoord + 0.5D, (double) this.yCoord + 0.5D,
                                        (double) this.zCoord + 0.5D) <= 64.0D;
                                        }
                                        public void openChest() {
                                        }
                                        public void closeChest() {
                                        }
                                        public boolean isItemValidForSlot(int par1, ItemStack par2ItemStack) {
                                        return par1 == 2 ? false : (par1 == 1 ? isItemFuel(par2ItemStack)
                                        : true);
                                        }
                                        public int[] getAccessibleSlotsFromSide(int par1) {
                                        return par1 == 0 ? slots_bottom : (par1 == 1 ? slots_top : slots_sides);
                                        }
                                        public boolean canInsertItem(int par1, ItemStack par2ItemStack, int par3) {
                                        return this.isItemValidForSlot(par1, par2ItemStack);
                                        }
                                        public boolean canExtractItem(int par1, ItemStack par2ItemStack, int par3) {
                                        return par3 != 0 || par1 != 1
                                        || par2ItemStack.itemID == Item.bucketEmpty.itemID;
                                        }
                                        }

                                        –------------------------------------------------
                                        Edit: Désolé c’est moi qui était con depuis le début: j’avais oublier que j’avais changer les craft possible de mon four --'. Vous pouvez rire de ma gueule j’ai bien foiré sur ce coup! xD

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • S
                                          sevenno07 dernière édition par 8 sept. 2013, 11:02

                                          @‘Oniro’:

                                          –------------------------------------------------
                                          Edit: Désolé c’est moi qui était con depuis le début: j’avais oublier que j’avais changer les craft possible de mon four --'. Vous pouvez rire de ma gueule j’ai bien foiré sur ce coup! xD

                                          T’en fais pas x), sa m’arrive quand je suis fatiguai x).

                                          Auteur originale de Sevenno's Addons et de [url=http://www.minecraftfor…

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 3 / 4
                                          41 sur 70
                                          • Premier message
                                            41/70
                                            Dernier message
                                          Design by Woryk
                                          Contact / Mentions Légales

                                          MINECRAFT FORGE FRANCE © 2018

                                          Powered by NodeBB