MFF

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

    [1.12] Créer un four

    Planifier Épinglé Verrouillé Déplacé Les interfaces (GUI) et les container
    1.11.x
    58 Messages 13 Publieurs 15.9k Vues 7 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par robin4002

      at com.ben.heaven.init.MachineBlock.registerBlocks(MachineBlock.java:32)

      C’est MachineBlock qu’il me faut, pas MachineBuilder.

      T 2 réponses Dernière réponse Répondre Citer 0
      • T Hors-ligne
        TionebBen3119 @robin4002
        dernière édition par

        @robin4002 en fait c’est bon l’erreur etait du a la mauvaise nomination de la fonction merci beaucoup^^

        1 réponse Dernière réponse Répondre Citer 0
        • T Hors-ligne
          TionebBen3119 @robin4002
          dernière édition par robin4002

          @robin4002 par contre g verifie la classe recipe je ne vois pas ce qui ne va pas mais la machine ne transforme pas les pommes et fleche en patate cuite (j’ai repris l’exemple du tuto pour test)065b9b92-f30e-48f7-bc5b-808b4b713b8b-image.png voici egalement ma classe recipe

          package com.ben.heaven.recipes;
          
          import java.util.HashMap;
          import java.util.Iterator;
          import java.util.Map.Entry;
          
          import net.minecraft.init.Items;
          import net.minecraft.item.Item;
          import net.minecraft.item.ItemStack;
          
          public class RecipesMachineBuilder
          {
          	private static final HashMap <ItemStack[], ItemStack>recipes = new HashMap<ItemStack[], ItemStack>();
          	static {
          	    addRecipe(Items.APPLE, Items.ARROW, Items.BAKED_POTATO);
          	}
          	
          	private static void addRecipe(Item ingredient1, Item ingredient2, Item resultat1) {
          	    addRecipe(new ItemStack(ingredient1), new ItemStack(ingredient2), new ItemStack(resultat1));
          	}
          	 
          	private static void addRecipe(ItemStack ingredient1, ItemStack ingredient2, ItemStack resultat1) {
          	    recipes.put(new ItemStack[]{ingredient1, ingredient2}, resultat1);
          	}
          	
          	private static boolean areKeysEqual(ItemStack[] key1, ItemStack[] key2) {
          	    if(key1.length != key2.length) return false;
          	 
          	    for(int i = 0; i < key1.length; i++) {
          	        ItemStack s1 = key1[i];
          	        ItemStack s2 = key2[i];
          	        if(s1.isEmpty() && !s2.isEmpty()) return false;
          	        if(!s1.isEmpty() && s2.isEmpty()) return false;
          	        if(s1.getItem() != s2.getItem()) return false;
          	        if(s1.getItemDamage() != s2.getItemDamage()) return false;
          	    }
          	    return true;
          	}
          	
          	public static ItemStack getRecipeResult(ItemStack[] ingredients) {
          	    Iterator<Entry<ItemStack[], ItemStack>> it = recipes.entrySet().iterator();
          	    while(it.hasNext()) {
          	        Entry <ItemStack[], ItemStack>entry = it.next();
          	        if(areKeysEqual(entry.getKey(), ingredients)) {
          	            return entry.getValue();
          	        }
          	    }
          	    return null;
          	}
          }
          
          T 1 réponse Dernière réponse Répondre Citer 0
          • T Hors-ligne
            TionebBen3119 @TionebBen3119
            dernière édition par

            @robin4002 saurais tu pourquoi la recette ne fonctionne pas ?

            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

              Non, sinon j’aurai déjà répondu.

              T 1 réponse Dernière réponse Répondre Citer 0
              • T Hors-ligne
                TionebBen3119 @robin4002
                dernière édition par

                @robin4002 d’accord excuse moi ^^

                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

                  Il faut que tu debug ton code de ton côté.

                  Lances le jeu en mode debug (icône de scarabée) puis mets des points d’arrêt aux endroits pertinent dans le code (par exemple dans la fonction tick, c’est ici qu’il vérifie s’il y a quelque chose à faire).

                  Quand l’exécution arrive sur un point d’arrêt cela mets en pause le jeu et tu peux observer le contenu des variables.

                  T 1 réponse Dernière réponse Répondre Citer 0
                  • T Hors-ligne
                    TionebBen3119 @robin4002
                    dernière édition par

                    @robin4002 D’accord pour le debug pas de probleme mais les points d’arret et la suite je comprends ce qu’il faut faire mais je ne comprends pas comment ^^

                    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

                      Premier lien après recherche google : https://pierrejean.wp.imt.fr/2014/02/17/eclipse-debogage-et-points-darrets/

                      Un jour je ferai une vidéo sur l’utilisation du debogguer.

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

                        Dans la classe du Gui tu peux supprimer la ligne drawDefaultBackground() et ajouter a la place dans la classe ceci:

                            public void drawScreen(int mouseX, int mouseY, float partialTicks)
                            {
                                this.drawDefaultBackground();
                                super.drawScreen(mouseX, mouseY, partialTicks);
                                this.renderHoveredToolTip(mouseX, mouseY);
                            }
                        

                        comme ca en plus sa rend les tooltips des items quand tu passes dessus 😉

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB