[1.7.10] Function à la pose d'une TE.



  • Bonjour, c'est encore moi.

    Je suis à la recherche d'une fonction exécutée lors de la pose d'une TE (je ne peux pas utiliser la fonction onBlockPlaced de ma classe Block car ma fonction nécessite que la TE soit déjà chargée, or onBlockPlaced est démarrée avant le chargement de la TE).

    Pouvez-vous m'aider ? Merci d'avance.


  • Administrateurs

    public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) {}



  • Merci, mais ça n'a pas l'air de fonctionner.

    J'ai écrit ça dans la TE (je pense pas que ce soit important, mais c'est pas tout à fait une TE, c'est ce que j'ai appelé TileEntityMultiblock, qui est elle-même extends TileEntity) :

    public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) {
    System.out.println("onBlockPlacedBy");
    this.elements = this.newMaster();
    }
    

    Pourtant, lors de la pose, rien du tout dans la console, et bien sûr this.newMaster(); n'est pas exécuté.


  • Administrateurs

    Non, il faut le mettre dans la classe du bloc.
    Ensuite tu fais un :

    TileEntity tile = world.getTileEntity(x, y, z);
    if(tile instanceof TileEntityMultiblock)
    ((TileEntityMultiblock) tile).elements = ((TileEntityMultiblock) tile).newMaster();
    


  • Ok, c'est bon, ça marche. Merci ^^