SOLVED Aide à faire brûler un block.


  • Bonjour,

    Depuis 16h de cette après-midi j’essaie de faire un block ( comme le bois, plantes etc ) qui serai inflammable* au contact du feu ( lave, briquet ) et qu’il soit disponible également en combustion dans le four ( ça c’est pas un soucis sa marche)*.*
    inflammable : Qui prend feu.

    Mon problème :
    Je souhaite que ma planche brûle au contact du feu.

    Voici le code de ma planche :

    public class BungeePlank extends Block{
    
    private boolean canBurn;
    
    public BungeePlank(Material p_i45394_1_) {
    super(p_i45394_1_.wood);
    this.setCreativeTab(CreativeTabs.tabBlock);
    this.setBurning();
    }
    
       protected BungeePlank setBurning()
       {
           this.canBurn = true;
           return this;
       }
    
       public boolean getCanBurn()
       {
           return this.canBurn;
       }
    

    Code de ma classe principale :

    bungeeplanks = new BungeePlank(Material.wood).setBlockTextureName(modid+":bungeep").setBlockName("bungeeplanks");
    
    

  • Mauvaise section: support pour les moddeurs.

    1. Ton code est étrange : super(p_i45394_1_.wood);, autant écrire Material.wood et enlever le seul paramètre.
    2. getCanBurn et setBurning ne servent à rien, je ne sais pas où tu as vu qu’il fallait les utiliser
    3. Il faut ré-écrire la méthode getFlammability en mettant “return 0;” (Fait Alt + shift + S puis “override or implement methods” pour ne pas te tromper dans les paramètres)


  • Merci d’avoir déplacé le Post

    Pour le flammability j’ai essayé 4 combinaisons aucune ne marche, donc si tu aurais le code exact cela m’aiderai et éviterai de me faire tourner autour du pot x).

    @Override
    public int getFlammability(IBlockAccess world, int x, int y, int z, ForgeDirection face) {
    return 0;
    }
    
    
    public int setFlammability(IBlockAccess world, int x, int y, int z, ForgeDirection face) {
    return 0;
    }
    
    
    public int setFlammability(BungeePlank world, int x, int y, int z) {
    return 0;
    }
    
    
    public int getFlammability(BungeePlank world, int x, int y, int z) {
    return 0;
    }
    
    

  • Tu es sûr que ce soit 0 qui faut return? j’ai regardé et d’après ce que j’ai compris 0=0% pour 100% il faut mettre 300, enfin moi c’est ce que j’ai mis.


  • Effectivement, toi tu veux que ton block brule, il faut donc mettre 300 pour toi.

    PS : je ne peux pas déplacer ton post.