Un item mangeable
-
C’est un problème de syntaxe. La fonction se trouve dans ItemFood, donc il le détecte pas. Il faut faire comme ça :
TutorialEgg = (new ItemTutorialEgg(TutorialEggID, 5, 4.5F, false)).setPotionEffect(Potion.regeneration.id, 5, 1, 1.0F).setUnlocalizedName("TutorialEgg").setTextureName("modtutoriel:ChocolateEgg");
Attention, la fonction setPotionEffect doit être avant les fonctions qui sont dans Item.java (donc de préférence juste après la parenthèse.
@‘utybo’:
@‘robin4002’:
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { player.setItemInUse(stack, this.getMaxItemUseDuration(stack)); return stack; }
Je crois que c’est ça.
Y’a un autre code laaaaaargement plus simple, si je le retrouve x)
En effet, .setAlwaysEdible() je viens de voir ça avec la pomme d’or :
TutorialEgg = (new ItemTutorialEgg(TutorialEggID, 5, 4.5F, false)).setAlwaysEdible().setPotionEffect(Potion.regeneration.id, 5, 1, 1.0F).setUnlocalizedName("TutorialEgg").setTextureName("modtutoriel:ChocolateEgg");
Je corrige le tutoriel, sinon d’autres vont rester bloqué :/.
-
Merci beaucoup !
-
Moi, j’aimerais savoir comment on fait pour ajoutez plus d’une effet. Parexemple, mettre regen,haste et heal en même temps…
Cordialement, infectiion21
-
Problème réglé via skype. Il faut passer la méthode onFoodEat, vous pouvez la récuperer dans la classe ItemFood.
-
bonjour, j ai suivi le tuto mais j ai un problème quand je mange une pomme qui est stackée a plusieurs dans ma main, au lieu d’avoir une pomme en moins il y en a deux?? Pourtant j ai bien fait comme expliqué plus haut … j ai aussi rajoutée le onFoodEat pour mettre plusieurs effets de potion… merci d avance !
-
Étrange ça, tu peux envoyer ton code ?
-
voila ce que j ai dans la classe de mon item
public class DiamApple extends ItemFood{ public DiamApple(int id, int foodAmount, float saturation, boolean isWolfFood) { super(id, foodAmount, saturation, isWolfFood); } protected void onFoodEaten(ItemStack stack, World world, EntityPlayer player) { player.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 3600, 3)); player.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 3600, 3)); player.addPotionEffect(new PotionEffect(5, 3600, 3)); player.addPotionEffect(new PotionEffect(6, 3600, 3)); player.addPotionEffect(new PotionEffect(8, 3600, 3)); player.addPotionEffect(new PotionEffect(10, 3600, 3)); player.addPotionEffect(new PotionEffect(12, 3600, 3)); player.addPotionEffect(new PotionEffect(21, 3600, 3)); } }
dans la classe principal je ne fais que l’instancier…
DiamApple = new DiamApple(16668, 20, 10F, false).setAlwaysEdible().setCreativeTab(NightmareCreativeTabs).setUnlocalizedName("DiamApple").setTextureName("nightmaremod:DiamApple"); GameRegistry.registerItem(DiamApple, "DiamApple", NightmareMod.MODID);
-
Je viens de tester ton code, les items se mange bien un par un, donc je ne vois pas d’où peut venir ton problème
ÉDIT : ça le fait juste avec cette item ou tous ? Si avec tous, as-tu modifié la classe ItemFood de minecraft ? -
@‘elmimille6’:
DiamApple = new DiamApple([…] NightmareMod.MODID);
Hors Sujet : ON
Sa va faire mal au dans ça, comme pour les pommes en “or” :dodgy: LoL
Hors Sujet : OFF
-
Je viens de tester et cela me fais pareil avec les pommes d’or vanilla mais pas avec les patates…. J ai supposé que le problème venait donc du .isAlwaysEdible(), j ai testé avec l autre moyen donné mais même problème … et non je n ai pas modifié le ItemFood ^^
-
Regarde si tu as le même problème une fois le mod compilé, car c’est vraiment étrange x)
-
déjà fait et oui même problème et en serveur aussi et un ami a essayé il a le même problème donc cela ne vient pas de mon pc non plus …
EDIT: le problème vient bien du fait que les objets sont toujours mangeable car je viens de l’enlever et il n’y a plus ce problème … -
Tu utilise quel version de forge ?
-
964 car je n’ ai jamais réussi a installer la version 965
-
Normal que tu n’arrive pas à installer la 965.
Par contre j’ai aussi la 964, pas de problème.
Ajoute ce code :public ItemStack onEaten(ItemStack stack, World world, EntityPlayer player) { System.out.println("mangé"); super.onEaten(stack, world, player); }
Et regarde dans la console combien de fois le message s’affiche en mangeant.
-
il me l écrit bien 2 fois…
EDIT: il me l as fait 3 fois même ici avec le dernier qui est en retard de 1-2 secondes et c est a ce moment la que le jeu me retire le 2 ème items -
Mange ta pomme, et dès qu’elle est mangé sélectionne tout de suite un autre item dans la barre. Une deuxième pomme est aussi retiré si tu fais ça ?
-
non il ne retire pas d’autres items
-
Ce bug me dis quelque chose, je l’ai déjà vu quelque part.
Ça te fait ça partout ? Ou que une fois le mod compilé ? -
partout, quand je le teste dans eclipse, compilé et en serveur aussi !