MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Problème de recette furnace

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    14 Messages 4 Publieurs 1.5k Vues 2 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • blixow14B Hors-ligne
      blixow14
      dernière édition par

      J’ai réussi à régler le problème du fonctionnement de la recette, en revanche je n’arrive pas encore à faire fonctionner une seule et unique " recipe ", c’est à dire que je peux mettre n’importe quoi dans le input, et j’obtiens quand même l’item définie dans l’output.

      J'aime les pâtes

      1 réponse Dernière réponse Répondre Citer 0
      • SpyManS Hors-ligne
        SpyMan
        dernière édition par SpyMan

        Yo, c’est un peut le bordel dans tes class de recipe :

        1 - il te faut une Map<ItemStack, ItemStack> qui vas permettre de stocker t’es recipes donc un input qui est la clé et l’output qui sera la valeur

        Map : Permet de stocké des valeurs en leur associant une clé, cette dernière permet de récupéré la valeur qui lui est attaché

        2- un fonction pour vérifié si dans la Map il ya une correspondance avec ton item en entré (slot input), soit la clé

        3- une fonction qui vas permettre de récupéré la valeur associé a la clé (item en entré, soit ton slot input), cette fonction prendra en paramètre l’itemstack qui se situe dans ton slot input.

        Voila un exemple de la class de recipe
        tu peut creer d’autre class de recipe en les extends a cette class

        import java.util.Map;
        import java.util.HashMap;
        
        public class Recipe
        {
        	public static final Recipe INSTANCE = new Recipe();
        
        	private Map<ItemStack, ItemStack> recipes = new HashMap<ItemStack, ItemStack>();
        
        	public Recipe()
        	{
                        // Exemple
        		this.addRecipe(new ItemStack(Items.apple), new ItemStack(Items.diamond));
        	}
        
        	public void addRecipe(ItemStack in, ItemStack out)
        	{
        		if (!this.isKeyExist(in))
        		{
        			this.recipes.put(in, out);
        		}
        	}
        
        	public ItemStack getResult(ItemStack input)
        	{
        		if (this.isKeyExist(input))
        		{
        			for (ItemStack stack : this.recipes.keySet())
        			{
        				if (stack.isItemEqual(input))
        				{
        					return this.recipes.get(stack);
        				}
        			}
        		}
        	}
        
        	public boolean isKeyExist(ItemStack stack)
        	{
        		if (stack != null)
        		{
        			for (ItemStack stack : this.recipes.keySet())
        			{
        				if (stack.isItemEqual(input))
        				{
        					return true;
        				}
        			}
        		}
        
        		return false;
        	}
        }
        

        Ensuite il te faudrat verifié dans le TileEntity de ta machine si la fonction getResult ne retourne pas null pour demarré le craft, sinon tu fait rien

        1 réponse Dernière réponse Répondre Citer 0
        • blixow14B Hors-ligne
          blixow14
          dernière édition par

          Merci de ta réponse.
          J’ai essayé ton code en l’adaptant (logique), sauf que ça ne marche pas. Je crash dès que j’essaie de me connecter.

          J'aime les pâtes

          1 réponse Dernière réponse Répondre Citer 0
          • AymericRedA Hors-ligne
            AymericRed
            dernière édition par

            Salut,
            Il faudrait peut-être envoyer le log pour qu’on voie l’erreur.

            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

            1 réponse Dernière réponse Répondre Citer 0
            • blixow14B Hors-ligne
              blixow14
              dernière édition par robin4002

              Le crash report montre que l’erreur vient de ma classe TileEntity mais je sais pas quoi modifier 😕

              ---- Minecraft Crash Report ----
              // Shall we play a game?
              
              Time: 18/08/18 20:21
              Description: Ticking block entity
              
              java.lang.NullPointerException: Ticking block entity
              	at com.lezink.lezinkmod.common.TileEntityCompactor.canSmelt(TileEntityCompactor.java:191)
              	at com.lezink.lezinkmod.common.TileEntityCompactor.updateEntity(TileEntityCompactor.java:207)
              	at net.minecraft.world.World.updateEntities(World.java:2160)
              	at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:515)
              	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:703)
              	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614)
              	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118)
              	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485)
              	at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752)
              
              
              A detailed walkthrough of the error, its code path and all known details is as follows:
              ---------------------------------------------------------------------------------------
              
              -- Head --
              Stacktrace:
              	at com.lezink.lezinkmod.common.TileEntityCompactor.canSmelt(TileEntityCompactor.java:191)
              	at com.lezink.lezinkmod.common.TileEntityCompactor.updateEntity(TileEntityCompactor.java:207)
              
              -- Block entity being ticked --
              Details:
              	Name: TileEntityCompactor // com.lezink.lezinkmod.common.TileEntityCompactor
              	Block type: ID #183 (tile.Copactor // com.lezink.lezinkmod.common.Comapactor)
              	Block data value: 0 / 0x0 / 0b0000
              	Block location: World: (-663,4,-391), Chunk: (at 9,0,9 in -42,-25; contains blocks -672,0,-400 to -657,255,-385), Region: (-2,-1; contains chunks -64,-32 to -33,-1, blocks -1024,0,-512 to -513,255,-1)
              	Actual block type: ID #183 (tile.Copactor // com.lezink.lezinkmod.common.Comapactor)
              	Actual block data value: 0 / 0x0 / 0b0000
              Stacktrace:
              	at net.minecraft.world.World.updateEntities(World.java:2160)
              	at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:515)
              
              -- Affected level --
              Details:
              	Level name: Plat
              	All players: 0 total; []
              	Chunk stats: ServerChunkCache: 625 Drop: 0
              	Level seed: -2996494463208639930
              	Level generator: ID 01 - flat, ver 0. Features enabled: true
              	Level generator options: 
              	Level spawn location: World: (-656,4,-400), Chunk: (at 0,0,0 in -41,-25; contains blocks -656,0,-400 to -641,255,-385), Region: (-2,-1; contains chunks -64,-32 to -33,-1, blocks -1024,0,-512 to -513,255,-1)
              	Level time: 579415 game time, 434101 day time
              	Level dimension: 0
              	Level storage version: 0x04ABD - Anvil
              	Level weather: Rain time: 8075 (now: false), thunder time: 85346 (now: false)
              	Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
              Stacktrace:
              	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:703)
              	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614)
              	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118)
              	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485)
              	at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752)
              
              -- System Details --
              Details:
              	Minecraft Version: 1.7.10
              	Operating System: Windows 10 (x86) version 10.0
              	Java Version: 1.8.0_181, Oracle Corporation
              	Java VM Version: Java HotSpot(TM) Client VM (mixed mode), Oracle Corporation
              	Memory: 806150952 bytes (768 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 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: 0, tcache: 0, allocated: 0, tallocated: 0
              	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	lezinkmod{1.0.0} [lezinkmod] (bin) 
              	GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
              	Profiler Position: N/A (disabled)
              	Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
              	Player Count: 0 / 8; []
              	Type: Integrated Server (map_client.txt)
              	Is Modded: Definitely; Client brand changed to 'fml,forge'
              

              J'aime les pâtes

              1 réponse Dernière réponse Répondre Citer 0
              • robin4002R Hors-ligne
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                dernière édition par

                @lezinkdu07 a dit dans Problème de recette furnace :

                at com.lezink.lezinkmod.common.TileEntityCompactor.canSmelt(TileEntityCompactor.java:191)

                Le problème se trouve à la ligne 191 de la classe TileEntityCompactor, tu as un objet null.

                1 réponse Dernière réponse Répondre Citer 0
                • blixow14B Hors-ligne
                  blixow14
                  dernière édition par blixow14

                  Bon mon jeu veut bien se lancer maintenant, mais je suis revenu aux problèmes du début :/, j’ai remis le code que j’ai mis dans le pastbin…

                  J'aime les pâtes

                  1 réponse Dernière réponse Répondre Citer 0
                  • blixow14B Hors-ligne
                    blixow14
                    dernière édition par blixow14

                    Bon j’ai toujours les mêmes problèmes qu’auparavant mais je pense que cela peut venir du TileEntity, et j’ai aussi modifié mes codes par rapport au début du coup je les remets
                    TileEntityCompactor : https://pastebin.com/Cui9VgFt
                    CompactorRecipes : https://pastebin.com/skSdaYYM
                    Ici le craft ne se lance pas ( la j’ai 1 slot input et 1 slot output )

                    TransformatorRecipes : https://pastebin.com/8pFbER5H
                    Ici le craft se lance avec n’importe quel Item. ( la j’ai 3 slot input et 1 slot output
                    Je sais que je suis chiant, et que vous avez pas que ça à faire mais ça fait 1j que je cherche les solutions mais j’y arrive pas alors bon 😕

                    J'aime les pâtes

                    1 réponse Dernière réponse Répondre Citer 0
                    • AymericRedA Hors-ligne
                      AymericRed
                      dernière édition par AymericRed

                      Pourtant ce ne sont pas des problèmes compliqués ^^

                      private boolean canSmelt()
                             {
                                 if (this.contents[0] == null || this.contents[1] == null)
                                 {
                                     return false;
                                 }
                      [...]
                      

                      Ici, pour le compactor, la recette ne peut pas se lancer si le slot du résultat est vide.

                      Et pour le transformator, c’est toujours le même problème depuis le début :

                      @aymericred a dit dans Problème de recette furnace :

                      Et pour le second problème, la fonction “isSameKey” n’est pas correcte, tu vérifie la taille des tableaux mais tu ne vérifies pas leur contenu (même problème dans la 1e classe également).

                      Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                      AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                      Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                      Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                      1 réponse Dernière réponse Répondre Citer 0
                      • blixow14B Hors-ligne
                        blixow14
                        dernière édition par

                        J’ai changé ça mais dès que je mets une recette dans le RecipeCompactor ça crash et ça me met dans le rapport que cette ligne n’est pas bonne. Donc je la retire et la je crash plus mais du coup je peux pas faire fonctionner la recette.

                        J'aime les pâtes

                        1 réponse Dernière réponse Répondre Citer 0
                        • blixow14B Hors-ligne
                          blixow14
                          dernière édition par

                          C’est bon j’ai réussi à régler le problème (enfin)

                          J'aime les pâtes

                          1 réponse Dernière réponse Répondre Citer 0
                          • 1 / 1
                          • Premier message
                            Dernier message
                          Design by Woryk
                          ContactMentions Légales

                          MINECRAFT FORGE FRANCE © 2024

                          Powered by NodeBB