Résolu [1.7.x]Item avec fonction
-
Bonjour, alors j’essaye de créer un item qui quand on fait un clic droit avec l’item équipé cela redonne de la vie et après divers recherche et essais infructueux…Je vous appelle à l’aide…Une idée par comment je pourrais ajouter cette fonction ?
Merci d’avançe !
-
Bah onItemRightClick(). Et un truc du genre player.setLife()
-
Okay, je vais essayer de me démerder avec ça.
-
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { stack.stackSize–; player.setHealth(player.getHealth() + 4.0F); return stack; }
Le 4.0F est la vie qui sera ajouté.
-
Okay…Alors l’item est crée et il apparaît en jeu sauf…Qu’il ne se passe quand quand je fais un clic droit avec dans la main…
-
@‘Oeilomega’:
il ne se passe quand quand je fais un clic droit avec dans la main…
Je supposes que tu voulais il dire il ne se passe rien quand …
Tu as bien ajouté cette fonction dans la classe de ton item ? -
Oui c’est ça…Je devais faire autre choses quand j’écrivais…Et oui j’ai bien ajouté cette fonction
-
Étrange ça devrait fonctionner pourtant, mon code est sensé ajouter 2 cœurs de vie et détruire l’item.
-
je l’ai ajouté dans la classe de l’item mais rien n’y fait…Après je vais voir si je peux copier la classe sur pastebin
-
Oui, envoie aussi ta classe principale.
-
alors la classe principale: http://pastebin.com/e4XV3jPC
et la classe de l’item: http://pastebin.com/pRciLWbP -
Normal que ça ne fonctionne pas, ta classe n’est pas prit en compte …
Bandage = new Item().setUnlocalizedName(“Bandage”).setTextureName(“Food:Bandage”).setCreativeTab(CreativeTabs.tabBrewing);
Devrait être
Bandage = new Bandage().setUnlocalizedName(“Bandage”).setTextureName(“Food:Bandage”).setCreativeTab(CreativeTabs.tabBrewing); -
Désormais elle est prise en compte mais j’ai désormais un problème avec le setUnlocalizedname, il me dit que c’est pas défini pour la classe bandage…
-
Ah oui en effet, ta classe Bandage devrait extends Item :
public class Bandage extends Item { -
Voila, ça marche !!! Maintenant il faut que j’ajoute un effet de potion…
-
player.addPotionEffect(new PotionEffect(Potion.xxxxxxx.id, temps en tick, amplificateur));
-
Je te remercie de ton aide robin, mais j’avais déja trouvé comment faire pour les potions^^
Je te remercie encore une fois, sujet résolu !