Pour les outils, il suffit d'utiliser la méthode
setMaxDamage(int max). pour changer son nombre d'utiilsation max.
Les blocks cassables et leurs puissance de destruction est dans le fichier ItemTool :
Code:
public float getStrVsBlock(ItemStack itemstack, Block block)
{
for(int i = 0; i < blocksEffectiveAgainst.length; i++)
{
if(blocksEffectiveAgainst[i] == block)
{
return efficiencyOnProperMaterial;
}
}
return 1.0F;
}
Remplit le tableau blocksEffectiveAgainst[] comme ceci :
Code:
static
{
blocksEffectiveAgainst = (new Block[] {
Block.truc, Block.machin, mod_tonMod.bidule
});
}
Dégâts contre les entités :
Code:
public int getDamageVsEntity(Entity entity)
{
return damageVsEntity;
}
On peut aussi varier les dégâts en fonction de la creature.
Dégâts une fois un block cassé :
Code:
public boolean onBlockDestroyed(ItemStack itemstack, int i, int j, int k, int l, EntityLiving entityliving)
{
itemstack.damageItem(1, entityliving);
return true;
}
On voit que l'on effectue des dégâts à l'item
Il suffit de ré-implémenter ses méthodes dans le code ton item et les modifier selon ton bon plaisir
Modifie la variable
efficiencyOnProperMaterial pour changer les dégâts contre les blocks.
Bien sûr tout ça n'est valable que si tu fait hériter ton objet de ItemTool.
Il existe a aussi une autre méthode pour faire de nouveaux outils : on créé un fichier de Material, mais utile seulement si tu veut rajouter des nouveaux matériels autre que diamant, fer, pierre, bois ou or.