Créer une table de craft compatible avec JEI et NEI
-
Merci ! mais le jeu crash a cause de cette ligne dans mon container:
@Override public void onCraftMatrixChanged(IInventory iiventory) { craftResult.setInventorySlotContents(0, AdvancedCraftingManager.getInstance().findMatchingRecipe(craftMatrix, worldObj)); // celle-ci ! }et ici , dans mon crafting manager:
AdvancedCraftingManager.getInstance().addRecipe(new ItemStack(Items.golden_apple), "A A", "X X", "X X", "A A", 'A', Items.carrot, 'X', Blocks.planks);et également ici :
private static final AdvancedCraftingManager INSTANCE = new AdvancedCraftingManager(); -
Euh…envoies le crash-report plutôt ^^
-
ok :
:::–-- Minecraft Crash Report ----
// You’re mean.
Time: 11/06/17 17:59
Description: Unexpected error
java.lang.ExceptionInInitializerError
at com.iutils.infinite.containers.ContainerAdvancedCraftingTab.onCraftMatrixChanged(ContainerAdvancedCraftingTab.java:84)
at net.minecraft.inventory.InventoryCrafting.setInventorySlotContents(InventoryCrafting.java:132)
at net.minecraft.inventory.Slot.putStack(Slot.java:104)
at net.minecraft.inventory.Container.putStacksInSlots(Container.java:558)
at net.minecraft.client.network.NetHandlerPlayClient.handleWindowItems(NetHandlerPlayClient.java:1202)
at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:70)
at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:78)
at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241)
at net.minecraft.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317)
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1693)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039)
at net.minecraft.client.Minecraft.run(Minecraft.java:962)
at net.minecraft.client.main.Main.main(Main.java:164)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)
Caused by: java.lang.NullPointerException
at com.iutils.infinite.recipes.AdvancedCraftingManager.<init>(AdvancedCraftingManager.java:33)
at com.iutils.infinite.recipes.AdvancedCraftingManager.<clinit>(AdvancedCraftingManager.java:22)
… 21 more
A detailed walkthrough of the error, its code path and all known details is as follows:
– Head –
Stacktrace:
at com.iutils.infinite.containers.ContainerAdvancedCraftingTab.onCraftMatrixChanged(ContainerAdvancedCraftingTab.java:84)
at net.minecraft.inventory.InventoryCrafting.setInventorySlotContents(InventoryCrafting.java:132)
at net.minecraft.inventory.Slot.putStack(Slot.java:104)
at net.minecraft.inventory.Container.putStacksInSlots(Container.java:558)
at net.minecraft.client.network.NetHandlerPlayClient.handleWindowItems(NetHandlerPlayClient.java:1202)
at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:70)
at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:78)
at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241)
at net.minecraft.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317)
– Affected level –
Details:
Level name: MpServer
All players: 1 total; [EntityClientPlayerMP[‘Player189’/339, l=‘MpServer’, x=-41,31, y=67,99, z=-40,38]]
Chunk stats: MultiplayerChunkCache: 225, 225
Level seed: 0
Level generator: ID 00 - default, ver 1. Features enabled: false
Level generator options:
Level spawn location: World: (-46,64,-22), Chunk: (at 2,4,10 in -3,-2; contains blocks -48,0,-32 to -33,255,-17), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,0,-512 to -1,255,-1)
Level time: 545798 game time, 545798 day time
Level dimension: 0
Level storage version: 0x00000 - Unknown?
Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
Forced entities: 95 total; [EntityBat[‘Bat’/128, l=‘MpServer’, x=-50,25, y=50,10, z=-34,47], EntityBat[‘Bat’/129, l=‘MpServer’, x=-52,00, y=55,10, z=-42,25], EntityBat[‘Bat’/130, l=‘MpServer’, x=-51,25, y=54,10, z=-47,66], EntityBat[‘Bat’/131, l=‘MpServer’, x=-52,63, y=50,10, z=-29,09], EntityBat[‘Bat’/132, l=‘MpServer’, x=-53,47, y=49,10, z=-30,69], EntityBat[‘Bat’/133, l=‘MpServer’, x=-51,22, y=50,10, z=-30,75], EntityBat[‘Bat’/134, l=‘MpServer’, x=-49,50, y=49,10, z=-28,59], EntityBat[‘Bat’/135, l=‘MpServer’, x=-53,28, y=50,10, z=-21,41], EntityBat[‘Bat’/136, l=‘MpServer’, x=-54,72, y=51,10, z=-24,16], EntityBat[‘Bat’/137, l=‘MpServer’, x=-55,63, y=62,10, z=-25,75], EntityBat[‘Bat’/138, l=‘MpServer’, x=-53,50, y=49,10, z=-31,66], EntityCow[‘Cow’/145, l=‘MpServer’, x=-37,81, y=69,00, z=-102,47], EntityZombie[‘Zombie’/146, l=‘MpServer’, x=-37,34, y=69,00, z=-103,50], EntityCow[‘Cow’/147, l=‘MpServer’, x=-38,75, y=73,00, z=-78,38], EntitySkeleton[‘Skeleton’/148, l=‘MpServer’, x=-34,78, y=45,00, z=-57,41], EntityZombie[‘Zombie’/149, l=‘MpServer’, x=-46,47, y=49,00, z=-51,03], EntityBat[‘Bat’/150, l=‘MpServer’, x=-40,09, y=54,10, z=-32,41], EntityBat[‘Bat’/151, l=‘MpServer’, x=-37,72, y=54,10, z=-33,53], EntityBat[‘Bat’/152, l=‘MpServer’, x=-40,75, y=54,10, z=-32,25], EntityChicken[‘Chicken’/153, l=‘MpServer’, x=-42,38, y=68,00, z=33,94], EntityZombie[‘Zombie’/163, l=‘MpServer’, x=-28,66, y=88,00, z=-89,53], EntityCreeper[‘Creeper’/164, l=‘MpServer’, x=-31,56, y=42,00, z=-34,03], EntityCreeper[‘Creeper’/165, l=‘MpServer’, x=-21,88, y=61,00, z=-33,69], EntityWitch[‘Witch’/166, l=‘MpServer’, x=-22,69, y=61,00, z=-32,75], EntityCow[‘Cow’/167, l=‘MpServer’, x=-20,44, y=82,00, z=9,44], EntityZombie[‘Zombie’/169, l=‘MpServer’, x=-32,09, y=67,00, z=32,41], EntityChicken[‘Chicken’/170, l=‘MpServer’, x=-25,84, y=70,00, z=32,47], EntitySpider[‘Spider’/43, l=‘MpServer’, x=-112,16, y=62,11, z=-113,38], EntityCow[‘Cow’/46, l=‘MpServer’, x=-113,25, y=66,00, z=-21,72], EntityCow[‘Cow’/47, l=‘MpServer’, x=-119,25, y=67,00, z=-11,84], EntityChicken[‘Chicken’/48, l=‘MpServer’, x=-116,56, y=64,00, z=9,53], EntityCow[‘Cow’/183, l=‘MpServer’, x=-6,81, y=88,00, z=-92,78], EntityCow[‘Cow’/184, l=‘MpServer’, x=-3,47, y=66,00, z=-48,53], EntitySkeleton[‘Skeleton’/185, l=‘MpServer’, x=-7,69, y=64,00, z=-3,75], EntityCow[‘Cow’/57, l=‘MpServer’, x=-105,53, y=65,00, z=-104,41], EntitySkeleton[‘Skeleton’/186, l=‘MpServer’, x=-7,91, y=64,00, z=-7,53], EntityCow[‘Cow’/58, l=‘MpServer’, x=-108,27, y=64,00, z=-99,82], EntityCow[‘Cow’/59, l=‘MpServer’, x=-111,50, y=64,00, z=-102,97], EntityZombie[‘Zombie’/60, l=‘MpServer’, x=-107,05, y=64,00, z=-98,79], EntityChicken[‘Chicken’/61, l=‘MpServer’, x=-107,50, y=64,00, z=-63,50], EntityCow[‘Cow’/64, l=‘MpServer’, x=-98,16, y=64,00, z=-25,06], EntityCow[‘Cow’/65, l=‘MpServer’, x=-103,91, y=67,00, z=-15,67], EntityCow[‘Cow’/66, l=‘MpServer’, x=-100,94, y=68,00, z=33,91], EntitySkeleton[‘Skeleton’/195, l=‘MpServer’, x=12,78, y=69,00, z=-86,84], EntityCow[‘Cow’/196, l=‘MpServer’, x=4,53, y=88,00, z=-75,31], EntityCow[‘Cow’/197, l=‘MpServer’, x=2,78, y=88,00, z=-63,81], EntityCow[‘Cow’/198, l=‘MpServer’, x=10,84, y=64,00, z=-24,50], EntityEnderman[‘Enderman’/199, l=‘MpServer’, x=11,58, y=64,00, z=-16,38], EntityZombie[‘Zombie’/200, l=‘MpServer’, x=14,00, y=64,00, z=-10,59], EntityCow[‘Cow’/201, l=‘MpServer’, x=8,38, y=67,00, z=16,28], EntityCow[‘Cow’/205, l=‘MpServer’, x=24,03, y=94,00, z=-115,44], EntitySkeleton[‘Skeleton’/206, l=‘MpServer’, x=20,50, y=74,00, z=-88,50], EntitySkeleton[‘Skeleton’/207, l=‘MpServer’, x=17,72, y=71,00, z=-89,50], EntitySkeleton[‘Skeleton’/79, l=‘MpServer’, x=-87,50, y=65,00, z=-106,50], EntityCow[‘Cow’/208, l=‘MpServer’, x=30,19, y=89,00, z=-79,38], EntitySkeleton[‘Skeleton’/80, l=‘MpServer’, x=-89,50, y=65,00, z=-107,50], EntityCow[‘Cow’/209, l=‘MpServer’, x=19,47, y=87,00, z=-52,19], EntityCow[‘Cow’/81, l=‘MpServer’, x=-96,23, y=66,00, z=-100,24], EntityCow[‘Cow’/82, l=‘MpServer’, x=-91,31, y=59,00, z=-83,78], EntityZombie[‘Zombie’/210, l=‘MpServer’, x=26,31, y=64,00, z=-17,09], EntityCow[‘Cow’/83, l=‘MpServer’, x=-81,41, y=67,00, z=-83,91], EntityCow[‘Cow’/211, l=‘MpServer’, x=24,63, y=64,00, z=-7,32], EntityClientPlayerMP[‘Player189’/339, l=‘MpServer’, x=-41,31, y=67,99, z=-40,38], EntitySkeleton[‘Skeleton’/84, l=‘MpServer’, x=-83,50, y=65,00, z=-94,94], EntityZombie[‘Zombie’/212, l=‘MpServer’, x=26,39, y=64,00, z=-14,71], EntityCow[‘Cow’/85, l=‘MpServer’, x=-95,84, y=65,00, z=-88,06], EntityChicken[‘Chicken’/213, l=‘MpServer’, x=29,74, y=64,00, z=-4,28], EntityCow[‘Cow’/86, l=‘MpServer’, x=-90,50, y=66,00, z=-94,38], EntitySlime[‘Slime’/214, l=‘MpServer’, x=30,60, y=36,00, z=14,63], EntityCow[‘Cow’/87, l=‘MpServer’, x=-87,06, y=66,00, z=-76,09], EntitySlime[‘Slime’/215, l=‘MpServer’, x=22,31, y=44,00, z=22,72], EntityCow[‘Cow’/88, l=‘MpServer’, x=-95,84, y=68,00, z=-11,50], EntityCreeper[‘Creeper’/216, l=‘MpServer’, x=19,63, y=42,00, z=31,59], EntityCreeper[‘Creeper’/217, l=‘MpServer’, x=30,09, y=41,00, z=33,66], EntityCreeper[‘Creeper’/227, l=‘MpServer’, x=34,59, y=93,00, z=-116,44], EntityCow[‘Cow’/228, l=‘MpServer’, x=37,66, y=93,00, z=-101,69], EntityZombie[‘Zombie’/229, l=‘MpServer’, x=38,59, y=88,00, z=-40,09], EntityCreeper[‘Creeper’/230, l=‘MpServer’, x=34,09, y=43,00, z=12,25], EntityCow[‘Cow’/104, l=‘MpServer’, x=-67,75, y=67,00, z=-107,81], EntityCow[‘Cow’/105, l=‘MpServer’, x=-74,63, y=67,00, z=-109,22], EntityCow[‘Cow’/233, l=‘MpServer’, x=36,63, y=67,00, z=6,38], EntityCow[‘Cow’/106, l=‘MpServer’, x=-73,19, y=64,00, z=-54,06], EntityCow[‘Cow’/107, l=‘MpServer’, x=-77,03, y=63,00, z=-42,56], EntityBat[‘Bat’/108, l=‘MpServer’, x=-64,25, y=51,10, z=-31,25], EntityCow[‘Cow’/109, l=‘MpServer’, x=-73,28, y=64,00, z=-19,69], EntityCow[‘Cow’/110, l=‘MpServer’, x=-77,19, y=68,00, z=1,13], EntityCow[‘Cow’/119, l=‘MpServer’, x=-58,81, y=66,00, z=-102,50], EntityCow[‘Cow’/120, l=‘MpServer’, x=-51,50, y=66,00, z=-81,16], EntityZombie[‘Zombie’/121, l=‘MpServer’, x=-60,50, y=64,00, z=-75,50], EntityZombie[‘Zombie’/122, l=‘MpServer’, x=-55,50, y=64,00, z=-77,50], EntityWitch[‘Witch’/123, l=‘MpServer’, x=-54,50, y=35,00, z=-38,50], EntitySkeleton[‘Skeleton’/124, l=‘MpServer’, x=-54,06, y=33,00, z=-40,50], EntitySkeleton[‘Skeleton’/125, l=‘MpServer’, x=-51,50, y=35,00, z=-36,50], EntityBat[‘Bat’/126, l=‘MpServer’, x=-53,25, y=53,10, z=-45,25], EntityBat[‘Bat’/127, l=‘MpServer’, x=-59,28, y=54,10, z=-36,38]]
Retry entities: 0 total; []
Server brand: fml,forge
Server type: Integrated singleplayer server
Stacktrace:
at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:415)
at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2566)
at net.minecraft.client.Minecraft.run(Minecraft.java:991)
at net.minecraft.client.main.Main.main(Main.java:164)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)
– System Details –
Details:
Minecraft Version: 1.7.10
Operating System: Windows 10 (amd64) version 10.0
Java Version: 1.8.0_121, Oracle Corporation
Java VM Version: Java HotSpot
64-Bit Server VM (mixed mode), Oracle CorporationMemory: 655526056 bytes (625 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 15, tcache: 0, allocated: 13, tallocated: 95
FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1614 4 mods loaded, 4 mods active
States: ‘U’ = Unloaded ‘L’ = Loaded ‘C’ = Constructed ‘H’ = Pre-initialized ‘I’ = Initialized ‘J’ = Post-initialized ‘A’ = Available ‘D’ = Disabled ‘E’ = Errored
UCHIJAAAA mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)
UCHIJAAAA FML{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1614-1.7.10.jar)
UCHIJAAAA Forge{10.13.4.1614} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1614-1.7.10.jar)
UCHIJAAAA iutils{0.0.0} [IUtils Mod] (bin)
GL info: ’ Vendor: ‘NVIDIA Corporation’ Version: ‘4.5.0 NVIDIA 382.53’ Renderer: ‘GeForce 840M/PCIe/SSE2’
Launched Version: 1.7.10
LWJGL: 2.9.1
OpenGL: GeForce 840M/PCIe/SSE2 GL version 4.5.0 NVIDIA 382.53, NVIDIA Corporation
GL Caps: Using GL 1.3 multitexturing.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Anisotropic filtering is supported and maximum anisotropy is 16.
Shaders are available because OpenGL 2.1 is supported.
Is Modded: Definitely; Client brand changed to ‘fml,forge’
Type: Client (map_client.txt)
Resource Packs: [F32-1.7.10.zip]
Current Language: English (US)
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Anisotropic Filtering: Off (1):::</clinit></init>
-
Ah bah oui évidement x)
Tu ajoutes tes recettes dans ton constructeur, or pour ajouter les recettes, tu fais “AdvancedCraftingManager.getInstance().addRecipe(…)”, et le problème est que “AdvancedCraftingManager.getInstance()” va réappeller le constructeur, pour éviter ça java fait un return null donc NullPointerException.
Là c’est de ma faute, vu que j’avais mis l’exemple d’ajout dans l’init du mod et pas dans le constructeur, donc pour éviter un tel problème enlèves simplement les “AdvancedCraftingManager.getInstance()” devant les appels des fonctions pour ajouter une recette dans le constructeur.
Et je vais de mon côté corriger ça.
-
x) Merci beaucoup
It’s perfectly working ! (je sais pas pourquoi je me suis transformé en anglais) -
Ow that’s very good !
-
en 1.10 ca fonctionne ?
-
Alors là aucune idée, je pense que oui à part un ou deux changements potentiels de noms, mais si tu bloques je pourrais regarder.
C’est surtout en 1.12 que ça a des chances de changer. -
D’accord merci de ta réponse je vais essayer alors

-
Je viens de remarquer que le addShapelessRecipe n’accepte pas les “new ItemStack(Items.trucmachin, 1)” pour les crafts.
y a t’il possibilité de corriger cela ? -
Euh quel addShapelessRecipe (je suis sur Tapatalk donc pour trouver c’est pas vraiment pratique).
-
Celui-ci(c’est une partie de ton tutoriel):
Et le code permettant d’ajouter les recettes correspondant :- this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), Items.CARROT, Items.GOLDEN_APPLE);
- this.addRecipe(new ItemStack(cratingTable), " C “, “X X”, ” C ", ‘C’, “slabWood”, ‘X’, Blocks.PLANKS); //“slabWood” est le nom des dalles de bois dans l’ore dictionnary, ceci est ajouté par Forge
- this.addRecipe(new ItemStack(Items.GOLDEN_APPLE), “A A”, “X X”, “X X”, “A A”, ‘A’, Items.CARROT, ‘X’, Blocks.PLANKS);
à placer dans le constructeur du TutorielCraftingManager.
-
Je crois qu’il manque un truc à ton message mais pas grave j’ai compris et je suis sur pc

Si j’ai compris tu veux mettre un ItemStack ici :this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), ICI); ``` ? Et si c'est ça si ça devrait marcher. Si j'ai pas compris mets les arguments que t'essayes de passer et dit ce qui marche pas. -
@‘AymericRed’:
Je crois qu’il manque un truc à ton message mais pas grave j’ai compris et je suis sur pc

Si j’ai compris tu veux mettre un ItemStack ici :this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), ICI); ``` ? Et si c'est ça si ça devrait marcher. Si j'ai pas compris mets les arguments que t'essayes de passer et dit ce qui marche pas.si je fait :
addShapelessRecipe(new ItemStack(Blocks.anvil), new ItemStack(Blocks.planks, 1, OreDictionary.WILDCARD_VALUE)
si je met une planche(de n’importe quel type car j’ai mis “OreDictionary.WILDCARD_VALUE”) dans ma table de craft, ça m’affiche pas le resultat(une enclume).
alors que si je fait ça:
addShapelessRecipe(new ItemStack(Blocks.anvil), Item.getItemFromBlock(Blocks.planks)
ça m’affiche le resultat mais je dois uniquement mettre une planche en bois de chêne car je peux mettre “OreDictionnary.WILDCARD_VALUE” seulement avec “new ItemStack()”
-
En fait il prend juste pas le OreDictionnary.WILCARD_VALUE
parce que si je fait ça :addShapelessRecipe(new ItemStack(ItemMod.speedStick), new ItemStack(ItemMod.woodenHammer, 1), new ItemStack(Item.getItemFromBlock(Blocks.planks)));ça fonctionne
mais si, je fais ça :addShapelessRecipe(new ItemStack(ItemMod.speedStick), new ItemStack(ItemMod.woodenHammer, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(Item.getItemFromBlock(Blocks.planks)));ça fonctionne pas, le craft ne s’affiche pas alors que j’ai mis les bons objets.
Je sais pas d’ou ça vient mais j’aimerai corriger ceci.
-
Alors oui effectivemet il y a un petit défaut, la fonction “TutorielShapedRecipes.areItemStacksEquals” ne check cette valeur que sur le premier ItemStack (normal vu qu’un joueur ne peut pas posséder un item avec cette valeur), dans la classe “TutorielShapedRecipes”, les arguments sont dans le bon ordre mais pas dans la classe “TutorielShapelessRecipe”, je m’en vais corriger ceci, mais il suffit juste d’inverser les deux stacks dans les appels de “TutorielShapedRecipes.areItemStacksEquals” qui sont dans la fonction “TutorielShapelessRecipe.matches”.
-
Je dois inverser les stacks itemstack et itemstack1 dans ceci ? :
public boolean matches(InventoryCrafting inv, World worldIn) { ArrayList arraylist = Lists.newArrayList(this.recipeItems); for (int i = 0; i < ContainerAdvancedCraftingTab.craftHeight; ++i) { for (int j = 0; j < ContainerAdvancedCraftingTab.craftWidth; ++j) { ItemStack itemstack = inv.getStackInRowAndColumn(j, i); if (itemstack != null) { boolean flag = false; for(Object component : arraylist) { if(component instanceof String) { List <itemstack>stacks = OreDictionary.getOres((String) component); for(ItemStack itemstack1 : stacks) { if (AdvancedShapedRecipes.areItemStacksEquals(itemstack, itemstack1)) { flag = true; arraylist.remove(itemstack1); break; } } } else { ItemStack itemstack1 = (ItemStack)component; if (AdvancedShapedRecipes.areItemStacksEquals(itemstack, itemstack1)) { flag = true; arraylist.remove(itemstack1); break; } } } if (!flag) return false; } } } return arraylist.isEmpty(); }J’ai pas trop compris.</itemstack>
-
Oui exactement (sinon tu peux regarder cette fonction dans le tuto je l’ai changée).
-
Merci beaucoup

-
Bonjour,
Version de forge : 1.11.2
Crash :
latest : https://hastebin.com/palugowara.vbs
fml : https://hastebin.com/tefohojewu.sqlProblème 1 :
En suivant le tutoriel comme indiqué ci-dessus, j’ai du toucher à quelques petites choses pour l’adapter en 1.11.2, hier soir (jusqu’à tard), mon code fonctionner et je n’avais pas ce crash [J’ai enlever la TileEntity et si je la remet je n’est plus de crash], hors en faisant cela, mes recettes de crafts ne fonctionne absolument pas, je n’avais aucun craft qui pouvais être utiliser.Problème 2 :
Si je supprime ma TileEntity, le crash est le suivant (Voir au dessus), cela ce passe dès que je met un item dans ma table de craft, minecraft crash. En revanche je peux bel et bien m’amuser dans les slots de l’inventaire.Voici mes classes :
PolishTableBlock : https://hastebin.com/zipiyobomi.scala
ContainerPolishTable : https://hastebin.com/fihamaxaro.java
PolishSlotCrafting : https://hastebin.com/iwesuxosex.cpp
[Gui]
GuiHandler : https://hastebin.com/keyefabuba.java
GuiPolishTable : https://hastebin.com/asezayutop.scala[Crafting]
CraftingManager : https://hastebin.com/tipogelale.js
ShapedRecipe : https://hastebin.com/xizerubaqi.java
ShapelessRecipe : https://hastebin.com/gowaheziko.javaMerci de m’aider car la je bloque x).