Un item mangeable !
-
Ton Item n’est pas extends ItemFood ou il faut le cast à ItemFood
-
A la base j’allais demander de l’aide mais c’est bon.
Alors je dis juste Merci =D pour ce tuto!
-
Comme fait-on pour changer l’id d’un itemFood ? pareil que avec un item basique ou autrement ?
-
En 1.7 les id sont géré en interne. Pas besoin de s’en occuper.
-
d’acc.
-
Bonjour, j’ai deux items mangeables, et j’aimerai savoir si quelqu’un sait comment faire pour que l’un puisse être cuit dans un four et donne l’autre au bout. Je sais pas si vous m’avez suivi. Parce que j’ai cherché mais je n’ai trouvé aucun tutoriel là dessus :/…
-
-
public static void register() { GameRegistry.registerItem(dinomeat, "dinomeat"); GameRegistry.registerItem(meatzoic, "meatzoic"); GameRegistry.addSmelting(Items.meatEpanterias, new ItemStack(Items.dinomeat), 0.1f); }
error:Multiple markers at this line
- meatEpanterias cannot be resolved or is
not a field
- dinomeat cannot be resolved or is not a
fieldJe comprends rien à l’anglais, je sais même pas si c’est ça. Vu que tu dois savoir, tu veux pas vite fait m’expliquer?…
-
Bah après c’est sûr que si on ne connaît pas le Java en + de ne pas savoir traduire la simple petite phrase d’erreur en anglais, tu ne t’en sortiras jamais pour ton mod
En gros tes variables meatEpanterias et dinomeat ne sont pas définies. -
C’est à dire? Je dois les définir comment? Je te rappelle que je suis nouveau ^^'. Je sais pas tout. Parce que mes deux variables sont déjà définies pour une chose, mais je fais comment pour les définir en combustible et en résultat de combustible?…
Et le java j’apprends mais ça met du temps. Quand tu as commencé tu devais pas aller loin toi non plus. Il y a une semaine je ne savais rien du tout… -
Pas définies dans la classe Items, il faut que tu changes “Items” par la classe où tu les as définis
-
GameRegistry.addSmelting(ItemFood.meatEpanterias, new ItemStack(ItemFood.dinomeat), 0.1f);
ça ne change rien j’ai toujours les mêmes erreurs :/…
-
As-tu importé ta classe ItemFood, et les variables sont-elles vraiment dedans avec la même orthographe ?
-
Tout y est:
package organisation; import fr.minecraftforgefrance.modzoic.common.Modzoic; import net.minecraft.client.Minecraft; import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.registry.GameRegistry; public class dinomeat extends ItemFood { public dinomeat(int gigot, float saturation, boolean wolf) { super(gigot, saturation, wolf); // TODO Auto-generated constructor stub this.setUnlocalizedName("dinomeat"); this.maxStackSize = 64; } public static Item dinomeat, meatzoic; public static void init() { dinomeat = new dinomeat(18, 0.8F, false).setUnlocalizedName("dinomeat").setCreativeTab(CreativeTabs.tabFood); meatzoic = new meatzoic(10, 0.5F, true).setUnlocalizedName("meatzoic").setCreativeTab(CreativeTabs.tabFood); } public static void register() { GameRegistry.registerItem(dinomeat, "dinomeat"); GameRegistry.registerItem(meatzoic, "meatzoic"); } public static void registerRenders() { } public static void registerRender() { Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(dinomeat, 0, new ModelResourceLocation("modzoic" + ":dinomeat", "inventory")); Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(meatzoic, 0, new ModelResourceLocation("modzoic" + ":meatzoic", "inventory")); GameRegistry.addSmelting(ItemFood.meatEpanterias, new ItemStack(ItemFood.dinomeat), 0.1f); } }
et pareil dans les autres classes. Tout marche bien sauf cette ligne depuis que je l’ai mise. Et les deux items sont comestibles en jeu et tout.
-
Tu as été le trouver où le ItemFood, c’est une classe vanilla, ça m’étonnerait que tu y trouve les déclarations de tes items. Et aussi, si tu mets cette ligne dans ta fonction de rendu (uniquement client) ça va pas marcher…
-
Tu as été le trouver où le ItemFood, c’est une classe vanilla, ça m’étonnerait que tu y trouve les déclarations de tes items. –> je comprends pas grand chose à ce que tu viens de me dire. De quoi ça t’étonnerais que j’y trouve les déclarations de mes items?
Et aussi, si tu mets cette ligne dans ta fonction de rendu (uniquement client) ça va pas marcher… --> c’est à dire? Pas compris non plus. Je suis encore tout nouveau je débute, donc je fais comme je peux et je comprends pas tout. Mais je m’améliore rapidement.
Sinon j’avais mis ça dans public static void register() mais je l’ai r’enlevé en voyant que ça marchait pas et j’ai oublié de le remettre pour le c/c:GameRegistry.addSmelting(Items.meatEpanterias, new ItemStack(Items.dinomeat), 0.1f);
Personne pour m’aider :/? Je suis vraiment coincé! J’aimerai juste au moins savoir si c’est la bonne commande!
-
Il faut que tu remplaces le “Items” par la classe où tu as “public static Item meatEpanterias;” (dans ce cas présent, Modzoic).
Et ce que je voulais dire c’est que si tu met ça avec le rendu, ça ne sera pas lu pas le serveur de Minecraft (donc la recette ne marchera pas) -
Et ce que je voulais dire c’est que si tu met ça avec le rendu, ça ne sera pas lu pas le serveur de Minecraft (donc la recette ne marchera pas) –> du coup je le mets où?
Et GameRegistry.addSmelting(Modzoic.meatEpanterias, new ItemStack(dinomeat.dinomeat), 0.1f); bug sur le mot souligné et a prit le mot précédent pour l’item alors que c’est la classe :/.
Merci sinon de m’aider -
Du coup tu le mets dans ta fonction register, tout simplement ^^
Si tu utilise quelque chose dans la même classe que celle où il est déclaré, tu n’as pas besoin de mettre le nom de la classe, donc dinomeat.dinomeat devient dinomeat -
public static void register()
{
GameRegistry.registerItem(dinomeat, “dinomeat”);
GameRegistry.registerItem(meatzoic, “meatzoic”);
GameRegistry.addSmelting(Modzoic.meatEpanterias, new ItemStack(dinomeat), 0.1f);
}là c’est tout bon :)?
Perso sur le jeu ça marche, je cherche surtout à savoir si ça restera quand je mettrais le mod en public