Changer la texture d'un block et d'un item vanilla et bug



  • Bonjour, dans mon mod je souhaiterais changer la texture vanilla du lit (block et item) sans ajouter un pack de texture, je voudrais le faire directement dans mon mod. Est-ce possible ? Et si oui quelqu'un aurait-il une idée pour faire ce type de chose ? 
    Merci par avance.


  • Administrateurs

    Salut,
    Les mods sont interprétés comme des pack de ressources, donc si à l'intérieur de ton mod qui ajoute des textures avec les noms des textures de minecraft elles vont être prise en compte.
    Par contre je ne serai pas dire lesquelles passent en priorité.



  • Tu veux dire qu'il me suffit de mettre les textures modifiées du lit avec le même nom que le nom vanilla dans mes dossier de texture ?


  • Administrateurs

    pas dans tes dossier, ils doivent être dans assets/minecraft/textures/…



  • D'accord, le seul souci c'est que je n'arrive pas à trouver comment accéder à ce dossier et dans éclipse, quand je vais dans assets/minecraft/textures/blocks, je ne peux pas y laisser mes fichiers modifié.



  • Il faut créer ce dossier, il n'y est pas de base, logique…Et au démarrage ces nouvelles textures vont écraser celles-par défaut de Minecraft.


  • Administrateurs

    tu dois créer assets/minecraft/textures/blocks dans src/main/resources, et non dans le zip de forge qui ne peut pas être modifié.



  • Merci ça fonctionne, je suppose que si je veux modifier la texture d'un item vanilla je fais pareil en remplaçant blocks par items. 
    J'ai encore une question concernant cette fois ci la texture d'un de mes blocks, je n'ai pas voulu recréer un nouveau sujet car il me semble que ça tient toujours dans celui-ci : voilà, j'ai recréer presque à l'identique les noix de chocolat de minecraft en modifiant certaines choses, le problème c'est que la texture du bloc ne fonctionne pas. La hitbox et tout le reste fonctionne mais pas la texture ce qui est embêtant, quelqu'un aurait-il une idée ?
    Voici mes classes (le block en question est blockCoconut et l'item permettant de le planter est itemCoconutSeed) :

    class du block (BlockCoconut):

    
    package com.survivant.mod.blocks;
    
    import java.util.Random;
    
    import com.survivant.mod.items.ItemMod;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockDirectional;
    import net.minecraft.block.BlockPlanks;
    import net.minecraft.block.IGrowable;
    import net.minecraft.block.material.Material;
    import net.minecraft.block.properties.IProperty;
    import net.minecraft.block.properties.PropertyInteger;
    import net.minecraft.block.state.BlockState;
    import net.minecraft.block.state.IBlockState;
    import net.minecraft.client.resources.model.ModelBakery;
    import net.minecraft.entity.EntityLivingBase;
    import net.minecraft.init.Blocks;
    import net.minecraft.init.Items;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraft.util.AxisAlignedBB;
    import net.minecraft.util.BlockPos;
    import net.minecraft.util.EnumFacing;
    import net.minecraft.util.EnumWorldBlockLayer;
    import net.minecraft.util.ResourceLocation;
    import net.minecraft.world.IBlockAccess;
    import net.minecraft.world.World;
    import net.minecraftforge.fml.relauncher.Side;
    import net.minecraftforge.fml.relauncher.SideOnly;
    
    public class BlockCoconut extends BlockDirectional implements IGrowable
    {
        public static final PropertyInteger AGE = PropertyInteger.create("age", 0, 2);
    
        protected BlockCoconut()
        {
            super(Material.plants);
            this.setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH).withProperty(AGE, Integer.valueOf(0)));
            this.setTickRandomly(true);
        }
    
        public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
        {
            if (!this.canBlockStay(worldIn, pos, state))
            {
                this.dropBlock(worldIn, pos, state);
            }
            else if (worldIn.rand.nextInt(5) == 0)
            {
                int i = ((Integer)state.getValue(AGE)).intValue();
    
                if (i < 2)
                {
                    worldIn.setBlockState(pos, state.withProperty(AGE, Integer.valueOf(i + 1)), 2);
                }
            }
        }
    
        public boolean canBlockStay(World worldIn, BlockPos pos, IBlockState state)
        {
            pos = pos.offset((EnumFacing)state.getValue(FACING));
            IBlockState iblockstate = worldIn.getBlockState(pos);
            return iblockstate.getBlock() == Blocks.log && iblockstate.getValue(BlockPlanks.VARIANT) == BlockPlanks.EnumType.JUNGLE;
        }
    
        public boolean isFullCube()
        {
            return false;
        }
    
        public boolean isOpaqueCube()
        {
            return false;
        }
    
        public AxisAlignedBB getCollisionBoundingBox(World worldIn, BlockPos pos, IBlockState state)
        {
            this.setBlockBoundsBasedOnState(worldIn, pos);
            return super.getCollisionBoundingBox(worldIn, pos, state);
        }
    
        @SuppressWarnings("incomplete-switch")
        public void setBlockBoundsBasedOnState(IBlockAccess worldIn, BlockPos pos)
        {
            IBlockState iblockstate = worldIn.getBlockState(pos);
            EnumFacing enumfacing = (EnumFacing)iblockstate.getValue(FACING);
            int i = ((Integer)iblockstate.getValue(AGE)).intValue();
            int j = 4 + i * 2;
            int k = 5 + i * 2;
            float f = (float)j / 2.0F;
    
            switch (enumfacing)
            {
                case SOUTH:
                    this.setBlockBounds((8.0F - f) / 16.0F, (12.0F - (float)k) / 16.0F, (15.0F - (float)j) / 16.0F, (8.0F + f) / 16.0F, 0.75F, 0.9375F);
                    break;
                case NORTH:
                    this.setBlockBounds((8.0F - f) / 16.0F, (12.0F - (float)k) / 16.0F, 0.0625F, (8.0F + f) / 16.0F, 0.75F, (1.0F + (float)j) / 16.0F);
                    break;
                case WEST:
                    this.setBlockBounds(0.0625F, (12.0F - (float)k) / 16.0F, (8.0F - f) / 16.0F, (1.0F + (float)j) / 16.0F, 0.75F, (8.0F + f) / 16.0F);
                    break;
                case EAST:
                    this.setBlockBounds((15.0F - (float)j) / 16.0F, (12.0F - (float)k) / 16.0F, (8.0F - f) / 16.0F, 0.9375F, 0.75F, (8.0F + f) / 16.0F);
            }
        }
    
        public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack)
        {
            EnumFacing enumfacing = EnumFacing.fromAngle((double)placer.rotationYaw);
            worldIn.setBlockState(pos, state.withProperty(FACING, enumfacing), 2);
        }
    
        public IBlockState onBlockPlaced(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer)
        {
            if (!facing.getAxis().isHorizontal())
            {
                facing = EnumFacing.NORTH;
            }
    
            return this.getDefaultState().withProperty(FACING, facing.getOpposite()).withProperty(AGE, Integer.valueOf(0));
        }
    
        public void onNeighborBlockChange(World worldIn, BlockPos pos, IBlockState state, Block neighborBlock)
        {
            if (!this.canBlockStay(worldIn, pos, state))
            {
                this.dropBlock(worldIn, pos, state);
            }
        }
    
        @SideOnly(Side.CLIENT)
        public AxisAlignedBB getSelectedBoundingBox(World worldIn, BlockPos pos)
        {
            this.setBlockBoundsBasedOnState(worldIn, pos);
            return super.getSelectedBoundingBox(worldIn, pos);
        }
    
        private void dropBlock(World worldIn, BlockPos pos, IBlockState state)
        {
            worldIn.setBlockState(pos, Blocks.air.getDefaultState(), 3);
            this.dropBlockAsItem(worldIn, pos, state, 0);
        }
    
        public void dropBlockAsItemWithChance(World worldIn, BlockPos pos, IBlockState state, float chance, int fortune)
        {
            super.dropBlockAsItemWithChance(worldIn, pos, state, chance, fortune);
        }
    
        @Override
        public java.util.List <itemstack>getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune)
        {
            java.util.List <itemstack>dropped = super.getDrops(world, pos, state, fortune);
            int i = ((Integer)state.getValue(AGE)).intValue();
            int j = 1;
    
            if (i >= 2)
            {
                j = 3;
            }
    
            for (int k = 0; k < j; ++k)
            {
                dropped.add(new ItemStack(ItemMod.itemCoconut, 1));
            }
            return dropped;
        }
    
        @SideOnly(Side.CLIENT)
        public Item getItem(World worldIn, BlockPos pos)
        {
            return ItemMod.itemCoconut;
        }
    
        @Override
        public boolean canGrow(World worldIn, BlockPos pos, IBlockState state, boolean isClient)
        {
            return ((Integer)state.getValue(AGE)).intValue() < 2;
        }
    
        @Override
        public boolean canUseBonemeal(World worldIn, Random rand, BlockPos pos, IBlockState state)
        {
            return false;
        }
    
        @Override
        public void grow(World worldIn, Random rand, BlockPos pos, IBlockState state)
        {
            worldIn.setBlockState(pos, state.withProperty(AGE, Integer.valueOf(((Integer)state.getValue(AGE)).intValue() + 1)), 2);
        }
    
        @SideOnly(Side.CLIENT)
        public EnumWorldBlockLayer getBlockLayer()
        {
            return EnumWorldBlockLayer.CUTOUT;
        }
    
        public IBlockState getStateFromMeta(int meta)
        {
            return this.getDefaultState().withProperty(FACING, EnumFacing.getHorizontal(meta)).withProperty(AGE, Integer.valueOf((meta & 15) >> 2));
        }
    
        public int getMetaFromState(IBlockState state)
        {
            int i = 0;
            i = i | ((EnumFacing)state.getValue(FACING)).getHorizontalIndex();
            i = i | ((Integer)state.getValue(AGE)).intValue() << 2;
            return i;
        }
    
        protected BlockState createBlockState()
        {
            return new BlockState(this, new IProperty[] {AGE, FACING});
        }
    }
    
    

    class BlockMod:

    
    package com.survivant.mod.blocks;
    
    import com.survivant.mod.ModSurvivant;
    import com.survivant.mod.Reference;
    import com.survivant.mod.items.ItemMod;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockOldLeaf;
    import net.minecraft.block.BlockPlanks;
    import net.minecraft.block.material.Material;
    import net.minecraft.client.Minecraft;
    import net.minecraft.client.resources.model.ModelResourceLocation;
    import net.minecraft.creativetab.CreativeTabs;
    import net.minecraft.init.Blocks;
    import net.minecraft.init.Items;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraftforge.fml.common.registry.GameRegistry;
    
    public class BlockMod
    {
        public static Block blockTotem, blockRock, blockSurvivalTorch, blockSurvivalTorchOff, blockCampfireOff, blockDryGrass, blockCampfireOn, blockPieceOfRock, blockCoconut;
    
        public static void init()
        {
            blockTotem = new BlockTotem(Material.wood).setUnlocalizedName("blockTotem").setCreativeTab(ModSurvivant.tabSurvivant).setStepSound(blockTotem.soundTypeWood).setHardness(0.05F);
            blockRock = new BlockRock(Material.coral).setUnlocalizedName("blockRock").setCreativeTab(ModSurvivant.tabSurvivant).setStepSound(blockRock.soundTypeStone).setHardness(0.5F);
            blockSurvivalTorch = new BlockSurvivalTorch(Material.circuits).setUnlocalizedName("blockSurvivalTorch").setCreativeTab(ModSurvivant.tabSurvivant).setHardness(0.01F);
            blockSurvivalTorchOff = new BlockSurvivalTorchOff(Material.circuits).setUnlocalizedName("blockSurvivalTorchOff").setCreativeTab(ModSurvivant.tabSurvivant).setHardness(0.01F);
            blockCampfireOff = new BlockCampfireOff(Material.wood).setUnlocalizedName("blockCampfireOff").setCreativeTab(ModSurvivant.tabSurvivant).setHardness(2.0F);
            blockDryGrass = new BlockDryGrass().setUnlocalizedName("blockDryGrass").setCreativeTab(ModSurvivant.tabSurvivant).setStepSound(blockDryGrass.soundTypeGrass);
            blockCampfireOn = new BlockCampfireOn(Material.wood).setUnlocalizedName("blockCampfireOn").setHardness(2.0F);
            blockPieceOfRock = new BlockPieceOfRock(Material.coral).setUnlocalizedName("blockPieceOfRock").setCreativeTab(ModSurvivant.tabSurvivant).setHardness(0.001F);
    
            blockCoconut = new BlockCoconut().setUnlocalizedName("blockCoconut");
        }
    
        public static void register()
        {
            GameRegistry.registerBlock(blockTotem, blockTotem.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockRock, blockRock.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockSurvivalTorch, blockSurvivalTorch.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockSurvivalTorchOff, blockSurvivalTorchOff.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockCampfireOff, blockCampfireOff.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockDryGrass, blockDryGrass.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockCampfireOn, blockCampfireOn.getUnlocalizedName().substring(5));
            GameRegistry.registerBlock(blockPieceOfRock, blockPieceOfRock.getUnlocalizedName().substring(5)); 
    
            GameRegistry.registerBlock(blockCoconut, blockCoconut.getUnlocalizedName().substring(5));
    
            /**Craft*/
            GameRegistry.addRecipe(new ItemStack(ItemMod.itemMachete, 1), new Object[] {"  #"," # ","S  ", 'S', Items.stick, '#', Items.iron_ingot});
            GameRegistry.addRecipe(new ItemStack(Blocks.cobblestone, 1), new Object[] {"+++","+++","+++", '+', BlockMod.blockPieceOfRock});
            GameRegistry.addRecipe(new ItemStack(BlockMod.blockCampfireOff, 1), new Object[] {"S#S","#H#","S#S", 'S', Items.stick, '#', Blocks.planks, 'H', ItemMod.itemDryGrassGrows});
            GameRegistry.addRecipe(new ItemStack(ItemMod.itemDoubleWood, 1), new Object[] {"S  "," # ","  S", '#', Blocks.planks, 'S', Items.stick});
            GameRegistry.addRecipe(new ItemStack(ItemMod.itemDoubleFlint, 1), new Object[] {" #","# ", '#', Items.flint});
            GameRegistry.addRecipe(new ItemStack(Blocks.planks, 1), new Object[] {"##","##", '#', Items.stick});
    
            GameRegistry.addRecipe(new ItemStack(Items.bed), new Object[] {"###", '#', new ItemStack(Blocks.leaves, 3, BlockPlanks.EnumType.OAK.getMetadata())});
        }
    
        public static void registerRenders()
        {
            registerRender(blockTotem);
            registerRender(blockRock);
            registerRender(blockSurvivalTorch);
            registerRender(blockSurvivalTorchOff);
            registerRender(blockCampfireOff);
            registerRender(blockDryGrass);
            registerRender(blockCampfireOn);
            registerRender(blockPieceOfRock);
    
            registerRender(blockCoconut);
        }
    
        public static void registerRender(Block block)
        {
            Item item = Item.getItemFromBlock(block);
            Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(Reference.MOD_ID + ":" + item.getUnlocalizedName().substring(5),"inventory"));
        }
    }
    
    

    class ItemMod:

    
    package com.survivant.mod.items;
    
    import com.survivant.mod.ModSurvivant;
    import com.survivant.mod.Reference;
    
    import net.minecraft.client.Minecraft;
    import net.minecraft.client.resources.model.ModelResourceLocation;
    import net.minecraft.creativetab.CreativeTabs;
    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.minecraftforge.common.util.EnumHelper;
    import net.minecraftforge.fml.common.registry.GameRegistry;
    
    public class ItemMod
    {
        public static ToolMaterial macheteTool = EnumHelper.addToolMaterial("macheteTool", 3, 5000, 6.0F, 1.0F, 5);
        public static ToolMaterial doubleWood = EnumHelper.addToolMaterial("doubleWood", 0, 15, 2.0F, 0.0F, 5);
        public static ToolMaterial doubleFlint = EnumHelper.addToolMaterial("doubleFlint", 0, 20, 2.0F, 0.0F, 5);
        public static ArmorMaterial survivalArmor = EnumHelper.addArmorMaterial("survivalArmor", "survivalArmor", 100, new int[]{0, 0, 0, 0}, 1);
    
        public static Item itemMachete, itemBanana, itemManioc, itemCoconut, itemExtinguishedSurvivalTorch, itemDryGrassGrows, itemSugarCane, itemDoubleWood, itemDoubleFlint, 
                           itemArmorFlippers, itemArmorGlasses, itemRawSalmon, itemCookedSalmon, itemRawRay, itemCookedRay, itemCoconutSeed;
    
        public static void init()
        {
            /**Item*/
            itemExtinguishedSurvivalTorch = new ItemExtinguishedSurvivalTorch(macheteTool).setUnlocalizedName("itemExtinguishedSurvivalTorch").setCreativeTab(ModSurvivant.tabSurvivant);
            itemDryGrassGrows = new Item().setUnlocalizedName("itemDryGrassGrows").setCreativeTab(ModSurvivant.tabSurvivant);
    
            Items.bed.setCreativeTab(ModSurvivant.tabSurvivant);
    
            /**Tool*/
            itemMachete = new ItemMachete(macheteTool).setUnlocalizedName("itemMachete").setCreativeTab(ModSurvivant.tabSurvivant).setMaxStackSize(1).setMaxDamage(5000);
            itemDoubleWood = new ItemDoubleWood(doubleWood).setUnlocalizedName("itemDoubleWood").setCreativeTab(ModSurvivant.tabSurvivant);
            itemDoubleFlint = new ItemDoubleFlint(doubleFlint).setUnlocalizedName("itemDoubleFlint").setCreativeTab(ModSurvivant.tabSurvivant);
    
            /**Food*/
            itemBanana = new ItemBanana(8, 0.7F, false).setUnlocalizedName("itemBanana").setCreativeTab(ModSurvivant.tabSurvivant);
            itemManioc = new ItemManioc(5, 0.4F, false).setUnlocalizedName("itemManioc").setCreativeTab(ModSurvivant.tabSurvivant);
            itemCoconut = new ItemCoconut(4, 0.4F, false).setUnlocalizedName("itemCoconut").setCreativeTab(ModSurvivant.tabSurvivant);
            itemSugarCane = new ItemSugarCane(8, 0.8F, false).setUnlocalizedName("itemSugarCane").setCreativeTab(ModSurvivant.tabSurvivant);
            itemRawSalmon = new ItemRawSalmon(2, 0.1F, false).setUnlocalizedName("itemRawSalmon").setCreativeTab(ModSurvivant.tabSurvivant);
            itemCookedSalmon = new ItemCookedSalmon(6, 0.8F, false).setUnlocalizedName("itemCookedSalmon").setCreativeTab(ModSurvivant.tabSurvivant);
            itemRawRay = new ItemRawRay(3, 0.2F, false).setUnlocalizedName("itemRawRay").setCreativeTab(ModSurvivant.tabSurvivant);
            itemCookedRay = new ItemCookedRay(8, 0.85F, false).setUnlocalizedName("itemCookedRay").setCreativeTab(ModSurvivant.tabSurvivant);
    
            itemCoconutSeed = new ItemCoconutSeed().setUnlocalizedName("itemCoconutSeed").setCreativeTab(ModSurvivant.tabSurvivant);
    
            /**Armor*/
            itemArmorFlippers = new ItemArmorFlippers(survivalArmor, 3).setUnlocalizedName("itemArmorFlippers").setCreativeTab(ModSurvivant.tabSurvivant).setMaxStackSize(1);
            itemArmorGlasses = new ItemArmorGlasses(survivalArmor, 0).setUnlocalizedName("itemArmorGlasses").setCreativeTab(ModSurvivant.tabSurvivant).setMaxStackSize(1);
        }
    
        public static void register()
        {
            GameRegistry.registerItem(itemMachete, "itemMachete");
            GameRegistry.registerItem(itemBanana, "itemBanana");
            GameRegistry.registerItem(itemManioc, "itemManioc");
            GameRegistry.registerItem(itemCoconut, "itemCoconut");
            GameRegistry.registerItem(itemExtinguishedSurvivalTorch, "itemExtinguishedSurvivalTorch");
            GameRegistry.registerItem(itemDryGrassGrows, "itemDryGrassGrows");
            GameRegistry.registerItem(itemSugarCane, "itemSugarCane");
            GameRegistry.registerItem(itemDoubleWood, "itemDoubleWood");
            GameRegistry.registerItem(itemDoubleFlint, "itemDoubleFlint");
            GameRegistry.registerItem(itemArmorFlippers, "itemArmorFlippers");
            GameRegistry.registerItem(itemArmorGlasses, "itemArmorGlasses");
            GameRegistry.registerItem(itemRawSalmon, "itemRawSalmon");
            GameRegistry.registerItem(itemCookedSalmon, "itemCookedSalmon");
            GameRegistry.registerItem(itemRawRay, "itemRawRay");
            GameRegistry.registerItem(itemCookedRay, "itemCookedRay");
    
            GameRegistry.registerItem(itemCoconutSeed, "itemCoconutSeed");
        }
    
        public static void registerRenders()
        {
            registerRender(itemMachete);
            registerRender(itemBanana);
            registerRender(itemManioc);
            registerRender(itemCoconut);
            registerRender(itemExtinguishedSurvivalTorch);
            registerRender(itemDryGrassGrows);
            registerRender(itemSugarCane);
            registerRender(itemDoubleWood);
            registerRender(itemDoubleFlint);
            registerRender(itemArmorFlippers);
            registerRender(itemArmorGlasses);
            registerRender(itemRawSalmon);
            registerRender(itemCookedSalmon);
            registerRender(itemRawRay);
            registerRender(itemCookedRay);
    
            registerRender(itemCoconutSeed);
        }
    
        public static void registerRender(Item items)
        {
            Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(items, 0, new ModelResourceLocation(Reference.MOD_ID + ":" + items.getUnlocalizedName().substring(5), "inventory"));
        }
    }
    
    

    class ItemCoconutSeed:

    
    package com.survivant.mod.items;
    
    import com.survivant.mod.blocks.BlockMod;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockPlanks;
    import net.minecraft.block.state.IBlockState;
    import net.minecraft.entity.player.EntityPlayer;
    import net.minecraft.init.Blocks;
    import net.minecraft.item.EnumDyeColor;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraft.util.BlockPos;
    import net.minecraft.util.EnumFacing;
    import net.minecraft.world.World;
    
    public class ItemCoconutSeed extends Item
    {
        public boolean onItemUse (ItemStack stack, EntityPlayer playerIn, World worldIn, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ)
        {
            if (!playerIn.canPlayerEdit(pos.offset(side), side, stack))
            {
                return false;
            }
            else
            {
                IBlockState iblockstate = worldIn.getBlockState(pos);
                Block block = iblockstate.getBlock();
    
                if (block == Blocks.log && iblockstate.getValue(BlockPlanks.VARIANT) == BlockPlanks.EnumType.JUNGLE)
                {
                    if (side == EnumFacing.DOWN)
                    {
                        return false;
                    }
    
                    if (side == EnumFacing.UP)
                    {
                        return false;
                    }
    
                    pos = pos.offset(side);
    
                    if (worldIn.isAirBlock(pos))
                    {
                        IBlockState iblockstate1 = BlockMod.blockCoconut.onBlockPlaced(worldIn, pos, side, hitX, hitY, hitZ, 0, playerIn);
                        worldIn.setBlockState(pos, iblockstate1, 2);
    
                        if (!playerIn.capabilities.isCreativeMode)
                        {
                            –stack.stackSize;
                        }
                    }
    
                    return true;
                }
            }
    
            return false;
        }
    }
    
    

    Merci par avance</itemstack></itemstack>


  • Administrateurs

    à mon avis c'est du côté des json qu'il faut regarder et non du code java.



  • Voici les .json, moi j'ai beau chercher j'ai rien trouvé de louche :

    - BlockStates:

    -Models Block :


  • Administrateurs

    Tu peux envoyer les logs ?



  • Heu… les logs c'est à dire la class des BlockLog ou ce qui est écrit dans la console ?


  • Administrateurs

    ce qui est écrit dans la console 😉



  • Voilà :

    2016-11-06 15:48:26,566 WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream
    2016-11-06 15:48:26,579 WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream
    [15:48:26] [main/INFO] [GradleStart]: Extra: []
    [15:48:26] [main/INFO] [GradleStart]: Running with arguments: [–userProperties, {}, --assetsDir, C:/Users/user/.gradle/caches/minecraft/assets, --assetIndex, 1.8, --accessToken{REDACTED}, --version, 1.8.9, --tweakClass, net.minecraftforge.fml.common.launcher.FMLTweaker, --tweakClass, net.minecraftforge.gradle.tweakers.CoremodTweaker]
    [15:48:26] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
    [15:48:26] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
    [15:48:26] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.CoremodTweaker
    [15:48:26] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker
    [15:48:27] [main/INFO] [FML]: Forge Mod Loader version 11.15.1.1747 for Minecraft 1.8.9 loading
    [15:48:27] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_91, running on Windows 8.1:amd64:6.3, installed at C:\Program Files\Java\jre1.8.0_91
    [15:48:27] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
    [15:48:27] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.CoremodTweaker
    [15:48:27] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.fml.relauncher.FMLCorePlugin
    [15:48:27] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.classloading.FMLForgePlugin
    [15:48:27] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [15:48:27] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
    [15:48:27] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
    [15:48:27] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [15:48:27] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [15:48:27] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
    [15:48:27] [main/ERROR] [FML]: The binary patch set is missing. Either you are in a development environment, or things are not going to work!
    [15:48:30] [main/ERROR] [FML]: FML appears to be missing any signature data. This is not a good thing
    [15:48:30] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
    [15:48:30] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
    [15:48:31] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
    [15:48:32] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.TerminalTweaker
    [15:48:32] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.TerminalTweaker
    [15:48:32] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main}
    2016-11-06 15:48:33,052 WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream
    2016-11-06 15:48:33,132 WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream
    2016-11-06 15:48:33,139 WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream
    [15:48:33] [Client thread/INFO]: Setting user: Player717
    [15:48:42] [Client thread/INFO]: LWJGL Version: 2.9.4
    [15:48:43] [Client thread/WARN] [FML]: =============================================================
    [15:48:43] [Client thread/WARN] [FML]: MOD HAS DIRECT REFERENCE System.exit() THIS IS NOT ALLOWED REROUTING TO FML!
    [15:48:43] [Client thread/WARN] [FML]: Offendor: com/sun/jna/Native.main([Ljava/lang/String;)V
    [15:48:43] [Client thread/WARN] [FML]: Use FMLCommonHandler.exitJava instead
    [15:48:43] [Client thread/WARN] [FML]: =============================================================
    [15:48:44] [Client thread/INFO] [STDOUT]: [net.minecraftforge.fml.client.SplashProgress:start:246]: –-- Minecraft Crash Report ----
    // Quite honestly, I wouldn't worry myself about that.
    
    Time: 06/11/16 15:48
    Description: Loading screen debug info
    
    This is just a prompt for computer specs to be printed. THIS IS NOT A ERROR
    
    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------
    
    -- System Details --
    Details:
    Minecraft Version: 1.8.9
    Operating System: Windows 8.1 (amd64) version 6.3
    Java Version: 1.8.0_91, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 817572368 bytes (779 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: 
    Loaded coremods (and transformers): 
    GL info: ' Vendor: 'Intel' Version: '4.0.0 - Build 10.18.10.3621' Renderer: 'Intel(R) HD Graphics 4000'
    [15:48:44] [Client thread/INFO] [FML]: MinecraftForge v11.15.1.1747 Initialized
    [15:48:44] [Client thread/INFO] [FML]: Replaced 204 ore recipies
    [15:48:45] [Client thread/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
    [15:48:45] [Client thread/INFO] [FML]: Searching C:\Users\user\Desktop\forge-1.8.9-11.15.1.1747-mdk\run\mods for mods
    [15:48:48] [Client thread/INFO] [FML]: Forge Mod Loader has identified 4 mods to load
    [15:48:48] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, survivant] at CLIENT
    [15:48:48] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, survivant] at SERVER
    [15:48:49] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Mod Survivant
    [15:48:49] [Client thread/INFO] [FML]: Processing ObjectHolder annotations
    [15:48:49] [Client thread/INFO] [FML]: Found 384 ObjectHolder annotations
    [15:48:50] [Client thread/INFO] [FML]: Identifying ItemStackHolder annotations
    [15:48:50] [Client thread/INFO] [FML]: Found 0 ItemStackHolder annotations
    [15:48:50] [Client thread/INFO] [FML]: Configured a dormant chunk cache size of 0
    [15:48:50] [Forge Version Check/INFO] [ForgeVersionCheck]: [Forge] Starting version check at http://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json
    [15:48:50] [Client thread/INFO] [FML]: Applying holder lookups
    [15:48:50] [Client thread/INFO] [FML]: Holder lookups applied
    [15:48:50] [Client thread/INFO] [FML]: Injecting itemstacks
    [15:48:50] [Client thread/INFO] [FML]: Itemstack injection complete
    [15:48:50] [Forge Version Check/INFO] [ForgeVersionCheck]: [Forge] Found status: OUTDATED Target: 11.15.1.1902
    [15:48:50] [Sound Library Loader/INFO]: Starting up SoundSystem…
    [15:48:51] [Thread-9/INFO]: Initializing LWJGL OpenAL
    [15:48:51] [Thread-9/INFO]: (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
    [15:48:51] [Thread-9/INFO]: OpenAL initialized.
    [15:48:51] [Sound Library Loader/INFO]: Sound engine started
    [15:49:04] [Client thread/INFO] [FML]: Max texture size: 8192
    [15:49:04] [Client thread/INFO]: Created: 16x16 textures-atlas
    [15:49:05] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=0,facing=west
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=0,facing=west
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:120) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:515) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=0,facing=west' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    [15:49:05] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=0,facing=north
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=0,facing=north
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:120) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:515) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=0,facing=north' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    [15:49:05] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=1,facing=south
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=1,facing=south
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:120) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:515) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=1,facing=south' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    [15:49:05] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=2,facing=west
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=2,facing=west
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:120) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:515) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=2,facing=west' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 20 more
    [15:49:05] [Client thread/ERROR] [FML]: Supressed additional 26 model loading errors for domain survivant
    [15:49:06] [Client thread/INFO] [FML]: Injecting itemstacks
    [15:49:06] [Client thread/INFO] [FML]: Itemstack injection complete
    [15:49:06] [Client thread/INFO] [FML]: Forge Mod Loader has successfully loaded 4 mods
    [15:49:06] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Mod Survivant
    [15:49:07] [Client thread/INFO]: SoundSystem shutting down…
    [15:49:07] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com
    [15:49:07] [Sound Library Loader/INFO]: Starting up SoundSystem…
    [15:49:07] [Thread-11/INFO]: Initializing LWJGL OpenAL
    [15:49:07] [Thread-11/INFO]: (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
    [15:49:07] [Thread-11/INFO]: OpenAL initialized.
    [15:49:07] [Sound Library Loader/INFO]: Sound engine started
    [15:49:17] [Client thread/INFO] [FML]: Max texture size: 8192
    [15:49:18] [Client thread/INFO]: Created: 512x512 textures-atlas
    [15:49:19] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=0,facing=west
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=0,facing=west
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:130) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:111) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:772) [Minecraft.class:?]
    at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:326) [FMLClientHandler.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:532) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=0,facing=west' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    [15:49:19] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=0,facing=north
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=0,facing=north
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:130) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:111) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:772) [Minecraft.class:?]
    at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:326) [FMLClientHandler.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:532) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=0,facing=north' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    [15:49:19] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=1,facing=south
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=1,facing=south
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:130) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:111) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:772) [Minecraft.class:?]
    at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:326) [FMLClientHandler.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:532) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=1,facing=south' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    [15:49:19] [Client thread/ERROR] [FML]: Exception loading model for variant survivant:blockCoconut#age=2,facing=west
    java.lang.Exception: Could not load model definition for variant survivant:blockCoconut#age=2,facing=west
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]
    at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]
    at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:130) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:111) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:772) [Minecraft.class:?]
    at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:326) [FMLClientHandler.class:?]
    at net.minecraft.client.Minecraft.startGame(Minecraft.java:532) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    at GradleStart.main(GradleStart.java:26) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of 'survivant:blockCoconut#age=2,facing=west' from: 'survivant:blockstates/blockCoconut.json' in resourcepack: 'FMLFileResourcePack:Mod Survivant'
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:155) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string
    at net.minecraft.util.JsonUtils.getString(JsonUtils.java:94) ~[JsonUtils.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.parseModel(ModelBlockDefinition.java:247) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:210) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Variant$Deserializer.deserialize(ModelBlockDefinition.java:204) ~[ModelBlockDefinition$Variant$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
    at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariants(ModelBlockDefinition.java:125) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.parseVariantsList(ModelBlockDefinition.java:104) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:93) ~[ModelBlockDefinition$Deserializer.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition$Deserializer.deserialize(ModelBlockDefinition.java:87) ~[ModelBlockDefinition$Deserializer.class:?]
    at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
    at com.google.gson.Gson.fromJson(Gson.java:741) ~[Gson.class:?]
    at net.minecraftforge.client.model.BlockStateLoader.load(BlockStateLoader.java:81) ~[BlockStateLoader.class:?]
    at net.minecraft.client.renderer.block.model.ModelBlockDefinition.parseFromReader(ModelBlockDefinition.java:32) ~[ModelBlockDefinition.class:?]
    at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:150) ~[ModelBakery.class:?]
    at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]
    … 23 more
    [15:49:19] [Client thread/ERROR] [FML]: Supressed additional 26 model loading errors for domain survivant
    [15:49:21] [Realms Notification Availability checker #1/INFO]: Could not authorize you against Realms server: Invalid session id
    [15:49:24] [Realms Notification Availability checker #1/INFO]: Could not authorize you against Realms server: Invalid session id
    [15:49:25] [Server thread/INFO]: Starting integrated minecraft server version 1.8.9
    [15:49:25] [Server thread/INFO]: Generating keypair
    [15:49:25] [Server thread/INFO] [FML]: Injecting existing block and item data into this server instance
    [15:49:25] [Server thread/INFO] [FML]: Found a missing id from the world survivant:blockCampfire
    [15:49:25] [Server thread/INFO] [FML]: Found a missing id from the world survivant:block2
    [15:49:25] [Server thread/INFO] [FML]: Found a missing id from the world survivant:blockSurvivalBed
    [15:49:25] [Server thread/INFO] [FML]: Found a missing id from the world survivant:blockSaltWater
    [15:49:25] [Server thread/INFO] [FML]: Applying holder lookups
    [15:49:25] [Server thread/INFO] [FML]: Holder lookups applied
    [15:49:25] [Server thread/INFO] [FML]: Loading dimension 0 (Mod survivant) (net.minecraft.server.integrated.IntegratedServer@5bf762c6)
    [15:49:26] [Server thread/INFO] [FML]: Loading dimension 1 (Mod survivant) (net.minecraft.server.integrated.IntegratedServer@5bf762c6)
    [15:49:26] [Server thread/INFO] [FML]: Loading dimension -1 (Mod survivant) (net.minecraft.server.integrated.IntegratedServer@5bf762c6)
    [15:49:26] [Server thread/INFO]: Preparing start region for level 0
    [15:49:27] [Server thread/INFO]: Preparing spawn area: 60%
    [15:49:27] [Realms Notification Availability checker #1/INFO]: Could not authorize you against Realms server: Invalid session id
    [15:49:27] [Server thread/INFO]: Changing view distance to 12, from 10
    [15:49:29] [Netty Local Client IO #0/INFO] [FML]: Server protocol version 2
    [15:49:29] [Netty Server IO #1/INFO] [FML]: Client protocol version 2
    [15:49:29] [Netty Server IO #1/INFO] [FML]: Client attempting to join with 4 mods : FML@8.0.99.99,Forge@11.15.1.1747,mcp@9.19,survivant@1.0.0
    [15:49:29] [Netty Local Client IO #0/INFO] [FML]: [Netty Local Client IO #0] Client side modded connection established
    [15:49:29] [Server thread/INFO] [FML]: [Server thread] Server side modded connection established
    [15:49:29] [Server thread/INFO]: Player717[local:E:7477008e] logged in with entity id 158 at (-66.93584354761575, 5.996574073502797, 408.0100332631736)
    [15:49:29] [Server thread/INFO]: Player717 a rejoint la partie
    [15:49:30] [pool-2-thread-1/WARN]: Couldn't look up profile properties for com.mojang.authlib.GameProfile@46525f7e[id=a126324d-4d5f-37d1-a7c2-428b903619ef,name=Player717,properties={},legacy=false]
    com.mojang.authlib.exceptions.AuthenticationException: The client has sent too many requests within a certain amount of time
    at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:65) ~[YggdrasilAuthenticationService.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:175) [YggdrasilMinecraftSessionService.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:59) [YggdrasilMinecraftSessionService$1.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:56) [YggdrasilMinecraftSessionService$1.class:?]
    at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache.get(LocalCache.java:3934) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821) [guava-17.0.jar:?]
    at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827) [guava-17.0.jar:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:165) [YggdrasilMinecraftSessionService.class:?]
    at net.minecraft.client.Minecraft.func_181037_M(Minecraft.java:2915) [Minecraft.class:?]
    at net.minecraft.client.resources.SkinManager$3.run(SkinManager.java:130) [SkinManager$3.class:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_91]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_91]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_91]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_91]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_91]
    [15:49:32] [Server thread/INFO]: Player717 vient d'obtenir le succès [Faire l'inventaire]
    [15:49:33] [Client thread/INFO]: [CHAT] Player717 vient d'obtenir le succès [Faire l'inventaire]
    [15:49:47] [Server thread/INFO]: Saving and pausing game…
    [15:49:47] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/Overworld
    [15:49:47] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/Nether
    [15:49:47] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/The End
    [15:49:48] [Server thread/INFO]: Stopping server
    [15:49:48] [Server thread/INFO]: Saving players
    [15:49:48] [Server thread/INFO]: Saving worlds
    [15:49:48] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/Overworld
    [15:49:48] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/Nether
    [15:49:48] [Server thread/INFO]: Saving chunks for level 'Mod survivant'/The End
    [15:49:48] [Server thread/INFO] [FML]: Unloading dimension 0
    [15:49:48] [Server thread/INFO] [FML]: Unloading dimension -1
    [15:49:48] [Server thread/INFO] [FML]: Unloading dimension 1
    [15:49:49] [Server thread/INFO] [FML]: Applying holder lookups
    [15:49:49] [Server thread/INFO] [FML]: Holder lookups applied
    [15:49:49] [Realms Notification Availability checker #1/INFO]: Could not authorize you against Realms server: Invalid session id
    [15:49:49] [Client thread/INFO]: Stopping!
    [15:49:49] [Client thread/INFO]: SoundSystem shutting down…
    [15:49:49] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com
    Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
    

  • Administrateurs

    Alors c'est assez étrange car il n'arrive pas à trouver les variantes :
    Could not load model definition for variant survivant:blockCoconut#age=0,facing=west
    Caused by: com.google.gson.JsonSyntaxException: Missing model, expected to find a string

    Pourtant il y est bien :

    {
       "variants": {
           "age=0,facing=south": { "survivant:model": "coconut_age0_s" },
           "age=0,facing=west": { "survivant:model": "coconut_age0_s", "y": 90 },
           "age=0,facing=north": { "survivant:model": "coconut_age0_s", "y": 180 },
           "age=0,facing=east": { "survivant:model": "coconut_age0_s", "y": 270 },
           "age=1,facing=south": { "survivant:model": "coconut_age1_s" },
           "age=1,facing=west": { "survivant:model": "coconut_age1_s", "y": 90 },
           "age=1,facing=north": { "survivant:model": "coconut_age1_s", "y": 180 },
           "age=1,facing=east": { "survivant:model": "coconut_age1_s", "y": 270 },
           "age=2,facing=south": { "survivant:model": "coconut_age2_s" },
           "age=2,facing=west": { "survivant:model": "coconut_age2_s", "y": 90 },
           "age=2,facing=north": { "survivant:model": "coconut_age2_s", "y": 180 },
           "age=2,facing=east": { "survivant:model": "coconut_age2_s", "y": 270 }
       }
    }

    (il y a le même problème pour tout les autres).

    Étrange …


  • Rédacteurs

    
    {
    "variants": {
    "age=0,facing=south": { "model": "survivant:coconut_age0_s" },
    "age=0,facing=west": { "model": "survivant:coconut_age0_s", "y": 90 },
    "age=0,facing=north": { "model": "survivant:coconut_age0_s", "y": 180 },
    "age=0,facing=east": { "model": "survivant:coconut_age0_s", "y": 270 },
    "age=1,facing=south": { "model": "survivant:coconut_age1_s" },
    "age=1,facing=west": { "model": "survivant:coconut_age1_s", "y": 90 },
    "age=1,facing=north": { "model": "survivant:coconut_age1_s", "y": 180 },
    "age=1,facing=east": { "model": "survivant:coconut_age1_s", "y": 270 },
    "age=2,facing=south": { "model": "survivant:coconut_age2_s" },
    "age=2,facing=west": { "model": "survivant:coconut_age2_s", "y": 90 },
    "age=2,facing=north": { "model": "survivant:coconut_age2_s", "y": 180 },
    "age=2,facing=east": { "model": "survivant:coconut_age2_s", "y": 270 }
    }
    }
    
    

  • Administrateurs

    Bien vu BrokenSwing !



  • Parfait ça fonctionne, merci.
    J'aurais encore une question concernant l'utilisation de la bonemeal. Je sais qu'on peut faire en sorte de ne pas utiliser la bonemeal avec le boolean canUseBonemeal. Le problème c'est qu'en mettant ce boolean sur false, quand on utilise la bonemeal en jeu, cela ne fait pas pousser plus vite le block ( comme souhaité) mais par contre il y a les particules de bonemeal. Comment faire pour les désactiver ? Est-ce qu'il faut faire une nouvelle méthode ou est-ce qu'il existe un évent ou un autre boolean permettant de faire cela ? J'ai cherché mais j'ai rien trouvé. Merci de l'aide.



  • Pas d'idée ???



  • Personne ne sait ?