MFF

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

    Faire un nouveau four

    Planifier Épinglé Verrouillé Déplacé Les blocs
    1.6.x
    70 Messages 15 Publieurs 26.3k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • GuguG Hors-ligne
      Gugu
      dernière édition par

      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 Hors-ligne
        Oniro
        dernière édition par

        ok merci

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

          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
          • GuguG Hors-ligne
            Gugu
            dernière édition par

            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 Hors-ligne
              Oniro
              dernière édition par

              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
              • GuguG Hors-ligne
                Gugu
                dernière édition par

                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 Hors-ligne
                  Oniro
                  dernière édition par

                  Ça ne fonctionne pas

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

                    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 Hors-ligne
                      Oniro
                      dernière édition par

                      Dommage 😕

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

                        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 Hors-ligne
                          sevenno07
                          dernière édition par

                          @‘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
                          • O Hors-ligne
                            Oniro
                            dernière édition par

                            surtout qu’il était pas passer 6h am quand je cherchais la réponse(Ouais je suis québecois). xD

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

                              Bonjour, je me permets de up ce topic pour donner une solution à un problème sans doute due à une autre version, dans le GUIFour.drawGuiContainerBackgroundLayer: (Je suis en 1.6.4)

                              this.mc.func_110434_K().func_110577_a(field_110410_t);
                              doit être remplacé par:
                              this.mc.getTextureManager().bindTexture(field_110410_t);

                              et

                              I18n.func_135053_a
                              par:
                              I18n.getString

                              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

                                En effet il y avait encore les anciennes mapping (forge < 849). Je vais éditer le poste merci.

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

                                  Ah, désolé, j’utilise jamais les bonnes versions de Forge ^^

                                  "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
                                  • GuardianOfFaithG Hors-ligne
                                    GuardianOfFaith
                                    dernière édition par

                                    très bon tuto, mais si on pourrait avoir les modifications à apporter pour avoir un slot fonctionnel de plus, ce serait parfait.
                                    merci d’avance (quand j’essaye, soit c’est une copie d’un autre slot (on voit deux fois l’item…) soit il sert juste à stocker un stack comme dans un coffre)


                                    d’autres codes à mettre à jour:
                                    11e code java dans le block four : func_96440_m --> getScoreboard
                                    modification classe principale : func_111022_d --> setTextureName
                                    16e code java du TileEntity field_111034_cE --> coalBlock
                                    2e Guifour field_110410_t --> furnaceGuiTextures
                                    Recipes field_111032_cD --> hardenedClay

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

                                      C’est un peu plus complexe, j’attend la 1.7 pour mettre a jour le tuto.

                                      Mais ça reste assez simple, dans le système de craft, la ou il check si le slot X a X item, tu ajoute pour qu’il check aussi le slot 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
                                      • P Hors-ligne
                                        Portuar
                                        dernière édition par

                                        J’aimerais qu’au lieu de “remplir” le slotFour quand je cuis quelque chose, j’invoque une entité quand je peux m’y prendre ?

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

                                          Salut Gugu esque tu peut me dire comment faire pour cree un nouveau GameRegistry, genre que le block ne sois pas un four mais par exemple que l’on puisse cree de nouvelle reçette qui son propre a ce four ( genre gameRegistry.addBurnatorSmelting ( bla blabla )

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

                                            ce serait possible de faire une update pour la 1.7.10 😉 merci

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB