Problème Etrange Craft d'items
-
Bonjour!
Je réalise avec mon équipe un mod depuis peu visant à rajouter du gameplay, totu est OK mais un seul problème très étrange persiste :Les Craft!
Comme nous avons crées de nouveaux blocks/item nous avons voulu rajouter des craft pour eux, et certains fonctionne et d’autre non :
Tout les craft de blocks sans exception fonctionnent.
Mais ceux que l’on veut faire avec des items que l’on a crées comme ingrédients ne fonctionnent pas (mis a part ceux des blocs)Exemple : On veut faire une bouteille de verre : 3 blocs de verre alignés (fonctionne)
On veut faire du sirop de cactus : 2 cactus, une bouteille (ne fonctionne pas)Et le plus étrange c’est que le craft marche si on prend directement la bouteille sans passer par le craft en allant dans l’onglet créatif.
Mais il ne marche pas si on récolte les ressources en survival.Pour vous expliquez mon codage :
Dans un package : “mes.mod” je vais toutes les informations d’enregistrement dans ma classe principale Mod.Catnos :
Par exemple pour le items :public static Item bouteille, siropcac;
@Init public void load(FMLInitializationEvent event) { bouteille = new ItemBouteille(1023).setUnlocalizedName("bouteille").setCreativeTab(CreativeTabs.tabMisc).setTextureName("bouteille") ; siropcac = new Cac(1048, 7, 1.5F, false).setUnlocalizedName("siropcac").setCreativeTab(CreativeTabs.tabFood).setTextureName("siropcac") ;
GameRegistry.registerItem(bouteille, "bouteille"); GameRegistry.registerItem(siropcac, "siropcac"); LanguageRegistry.addName(bouteille, "Bouteille en verre"); LanguageRegistry.addName(siropcac, "Sirop de Cactus");
Puis les craft :
GameRegistry.addRecipe(new ItemStack(bouteille, 2, 1), new Object[]{"X ", "X ", "X ", 'X', Block.glass}); GameRegistry.addRecipe(new ItemStack(siropcac, 1, 1), new Object[]{" Y ", " Y ", " Z ", 'Y', Block.cactus, 'Z', bouteille});
Les classes des items sont pour la bouteille une classe basqiue et pour celle de siropcac une classe d’item mangeable.
Voilà, j’espère que vous pourrez m’éclairez!Merci
-
(Tu t’es trompé de section! Tu as posté ton problème dans les trucs pour Bukkit…)
Il faut faire un new itemstack pour les items!
Remplace tout les items parnew ItemStack(ModId.Item)
Ce qui donne donc
GameRegistry.addRecipe(new ItemStack(siropcac, 1, 1), new Object[]{" Y ", " Y ", " Z ", 'Y', Block.cactus, 'Z', new ItemStack(TonModid.bouteille});
-
Ok merci (désolé pour l’emplacement du post )
Je test ça et je confirme si c’est bon :)___
Non, c’est bien ce que je pensais, ce n’est pas du au craft (sa ne fonctionne toujours pas)
Sa doit être un problème au niveau des items, pour plus de précision j’ai découvert autre chose :Si je prend la bouteille dans l’onglet créatif, le craft fonctionne
Si je craft la bouteille, le craft du sirop ne fonctionne pasET : La bouteille du créatif et celle crafté ne s’assemble pas (dans le stack) elle se place comme deux items différents, je crois que mon problème vient de là!
-
Post déplacer.
Petite explication de l’itemstack
new ItemStack(Item/bloc, quantité, metadata)
Je suppose que tu n’as pas fait d’item avec des métadatas, donc tu as deux solutions:
new ItemStack(bouteille, 1, 0) (car le métadata de base est 0) ou:
new ItemStack(bouteille, 1) (car le métadata n’est pas obligatoire)PS: fait ça pour tout tes crafts.
De plus:
LanguageRegistry.addName(bouteille, "Bouteille en verre"); LanguageRegistry.addName(siropcac, "Sirop de Cactus");
ne fonctionnera plus en 1.7, pense à utilisé des fichiers de localisation externe.
-
OK, j’ai trouvé!
Tu a mis une metadata pour les bouteilles craftées, et ton craft de sirop demande une bouteillle sans metadata!
Change donc ton craft de bouteille :
GameRegistry.addRecipe(new ItemStack(bouteille, 2, 1), new Object[]{"X ", "X ", "X ", 'X', Block.glass});
devient
GameRegistry.addRecipe(new ItemStack(bouteille, 2), new Object[]{"X ", "X ", "X ", 'X', Block.glass});
EDIT :
@‘Destroy_30’:La bouteille du créatif et celle crafté ne s’assemble pas (dans le stack) elle se place comme deux items différents, je crois que mon problème vient de là!
Effectivement, les items de même IDs avec des metadatas différents ne se stackent pas!
-
Eh bien merci !
Cela fonctionne maintenant à merveille -
De rien!
Et met ton post en résolu