MFF

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

    Machine grâce au tutoriel.

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    40 Messages 4 Publieurs 7.5k Vues 1 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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      Regarde que les tailles correspondent et ensuite il faut toucher aux méthodes de rendu pour avoir les bonnes coordonnées. C’est long et fastidieux mais faut le faire pour avoir un bon rendu.

      Site web contenant mes scripts : http://SCAREXgaming.github.io

      Pas de demandes de support par MP ni par skype SVP.
      Je n'accepte sur skype que l…

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

        Le truc c’est que dans le code je ne sais pas ou on modifie la texture…

        Est-ce que c’est ca ```java
        if(this.tileBlockAnalyzer.isBurning())
        {
        int i = this.tileBlockAnalyzer.getCookProgress();
        this.drawTexturedModalRect(k + 59, l + 47, 0, 1, 100, i);

        }

        Oui ce gif est drôle.

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

          c’est bien cette méthode qui affiche la texture par-dessus :
          this.drawTextureModalRect(x, y, textureX, textureY, width, height)

          • x : la position x sur l’écran
          • y : la position y sur l’acran
          • textureX : l’offset sur la texture, on va pas redessiner toute la texture, juste un morceau
          • textureY : l’offsetY sur la texture
          • width : la taille X à l’écran sur la base 256 (si ta texture fait 512x512, il faudrait diviser cette taille par 2)
          • height : la taille Y à l’écran sur la base 256

          Site web contenant mes scripts : http://SCAREXgaming.github.io

          Pas de demandes de support par MP ni par skype SVP.
          Je n'accepte sur skype que l…

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

            (k + 59, l + 47, 0, 1, 76, i);

            k + 59 , alignement du chargement par rapport au gui sur l’axe X = ok
            l + 47  , alignement du chargement par rapport au gui sur l’axe Y = ok
            0 , doit rester 0 car taille <–—> de la texture = ok
            1 , si je change cette valeur il change et ne prend qu’un petit bout de la texture offset. Donc je laisse a 1 car il doit prendre le début jusqu’à la fin = PAS OK , il ne prend qu’un petit bout , le début ici si je laisse 11
            76 , taille X de ma texture sur l’axe X = ok
            i , la hauteur de la texture = ok ,

            Voici une vidéo du problème c’est plus facile a comprendre

            Youtube Video

            Oui ce gif est drôle.

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

              C’est vrai qu’avec une vidéo en privé, c’est pratique.

              Site web contenant mes scripts : http://SCAREXgaming.github.io

              Pas de demandes de support par MP ni par skype SVP.
              Je n'accepte sur skype que l…

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

                Excuse T_T J’ai pas pensé à ca 🙂

                Oui ce gif est drôle.

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

                  @SideOnly(Side.CLIENT)
                  public int getCookProgress()
                  {
                  return this.workingTime * 33 / this.workingTimeNeeded;
                  }
                  

                  Le problème vient de là : ton produit en croix n’est pas adapté à la hauteur de ta texture.

                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                  Pas de demandes de support par MP ni par skype SVP.
                  Je n'accepte sur skype que l…

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

                    Effectivement mais je ne vois pas pourquoi il était marquer en commentaire “correspond a la hauteur de la barre de chargement”

                    C’est a la taille de la texture entière , si je met la hauteur 207 ca marche parfaitement 🙂

                    Oui ce gif est drôle.

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

                      Désolé du double poste c’est pour aider les gens qui on le même soucis ( on sait jamais ) Mais même si je mettais 207 et que je changeais le temps de cuissons ca buggais

                      En modifiant comme ceci : ```java
                      @SideOnly(Side.CLIENT)
                      public int getCookProgress()
                      {
                      return this.workingTime * this.workingTimeNeeded / this.workingTimeNeeded; //33 correspond à la hauteur de la barre de progression car notre barre de progression se déroule de haut en bas
                      }

                      
                      Ca marche perfecto

                      Oui ce gif est drôle.

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

                        Tout dépend de la valeur maximale pour cuire et la taille de ta texture.

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

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

                          Oui j’ai fais comme ceci, c’est pour aider les gens qui on le même soucis ( on sait jamais ) Mais même si je mettais 207 et que je changeais le temps de cuissons ca buggais

                          En modifiant comme ceci :

                          
                          @SideOnly(Side.CLIENT)
                          public int getCookProgress()
                          {
                          return this.workingTime * this.workingTimeNeeded / this.workingTimeNeeded; //33 correspond à la hauteur de la barre de progression car notre barre de progression se déroule de haut en bas
                          }
                          

                          Ca marche perfecto

                          Oui ce gif est drôle.

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

                            Oui il faut modifier en conséquence 🙂

                            Oui ce gif est drôle.

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

                              Balise résolu ?

                              Site web contenant mes scripts : http://SCAREXgaming.github.io

                              Pas de demandes de support par MP ni par skype SVP.
                              Je n'accepte sur skype que l…

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

                                Ne me tape pas hein 😞 J’ai beau augmenter la valeur de cuisson ( car je veut que ce soit plus long ) mais j’ai beau augementer ca ne change rien Oo

                                Oui ce gif est drôle.

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

                                  Revois ton produit en croix, sinon regarde la valeur maximale que celui-ci peut atteindre pour voir d’où vient le problème avec des logs.

                                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                                  Pas de demandes de support par MP ni par skype SVP.
                                  Je n'accepte sur skype que l…

                                  1 réponse Dernière réponse Répondre Citer 1
                                  • FlowF Hors-ligne
                                    Flow
                                    dernière édition par

                                    Je ré-ouvre le sujet car j’ai besoin d’une aide vraiment grande , je laisse donc des personnes voulant bien m’aider j’oblige personne , dans mon AnalyzerRecipes j’aimerais établir un système de chance , mais je ne sais pas trop comment m’y prendre avec minecraft , on ma parlé d’IRecipe mais je ne comprend pas vraiment la classe , donc si quelqu’un veut m’expliquer ca serait sympa car je ne vois aucun classe de minecraft avec c’est extends 😕 Et j’ai vraiment besoin de se système pour mon mod !

                                    Oui ce gif est drôle.

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • Superloup10S Hors-ligne
                                      Superloup10 Modérateurs
                                      dernière édition par

                                      Normal, c’est pas une class mais une interface donc tu dois chercher quelque chose qui implements IRecipe. Ensuite, une simple condition avec random ne suffirait-elle pas?

                                      Envoyé de mon Nexus 4 en utilisant Tapatalk

                                      Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                                      Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                                        J’ai trouver mais je ne comprend pas vraiment

                                        Code feux d’artifice

                                        
                                        private ItemStack field_92102_a;
                                        
                                        /**
                                        * Used to check if a recipe matches current crafting inventory
                                        */
                                        public boolean matches(InventoryCrafting p_77569_1_, World p_77569_2_)
                                        {
                                        this.field_92102_a = null;
                                        int i = 0;
                                        int j = 0;
                                        int k = 0;
                                        int l = 0;
                                        int i1 = 0;
                                        int j1 = 0;
                                        
                                        for (int k1 = 0; k1 < p_77569_1_.getSizeInventory(); ++k1)
                                        {
                                        ItemStack itemstack = p_77569_1_.getStackInSlot(k1);
                                        
                                        if (itemstack != null)
                                        {
                                        if (itemstack.getItem() == Items.gunpowder)
                                        {
                                        ++j;
                                        }
                                        else if (itemstack.getItem() == Items.firework_charge)
                                        {
                                        ++l;
                                        }
                                        else if (itemstack.getItem() == Items.dye)
                                        {
                                        ++k;
                                        }
                                        else if (itemstack.getItem() == Items.paper)
                                        {
                                        ++i;
                                        }
                                        else if (itemstack.getItem() == Items.glowstone_dust)
                                        {
                                        ++i1;
                                        }
                                        else if (itemstack.getItem() == Items.diamond)
                                        {
                                        ++i1;
                                        }
                                        else if (itemstack.getItem() == Items.fire_charge)
                                        {
                                        ++j1;
                                        }
                                        else if (itemstack.getItem() == Items.feather)
                                        {
                                        ++j1;
                                        }
                                        else if (itemstack.getItem() == Items.gold_nugget)
                                        {
                                        ++j1;
                                        }
                                        else
                                        {
                                        if (itemstack.getItem() != Items.skull)
                                        {
                                        return false;
                                        }
                                        
                                        ++j1;
                                        }
                                        }
                                        }
                                        
                                        i1 += k + j1;
                                        
                                        if (j <= 3 && i <= 1)
                                        {
                                        NBTTagCompound nbttagcompound;
                                        NBTTagCompound nbttagcompound1;
                                        
                                        if (j >= 1 && i == 1 && i1 == 0)
                                        {
                                        this.field_92102_a = new ItemStack(Items.fireworks);
                                        
                                        nbttagcompound = new NBTTagCompound();
                                        if (l > 0)
                                        {
                                        nbttagcompound1 = new NBTTagCompound();
                                        NBTTagList nbttaglist = new NBTTagList();
                                        
                                        for (int k2 = 0; k2 < p_77569_1_.getSizeInventory(); ++k2)
                                        {
                                        ItemStack itemstack3 = p_77569_1_.getStackInSlot(k2);
                                        
                                        if (itemstack3 != null && itemstack3.getItem() == Items.firework_charge && itemstack3.hasTagCompound() && itemstack3.getTagCompound().hasKey("Explosion", 10))
                                        {
                                        nbttaglist.appendTag(itemstack3.getTagCompound().getCompoundTag("Explosion"));
                                        }
                                        }
                                        
                                        nbttagcompound1.setTag("Explosions", nbttaglist);
                                        nbttagcompound1.setByte("Flight", (byte)j);
                                        nbttagcompound.setTag("Fireworks", nbttagcompound1);
                                        }
                                        this.field_92102_a.setTagCompound(nbttagcompound); //Forge BugFix: NPE Protection
                                        
                                        return true;
                                        }
                                        else if (j == 1 && i == 0 && l == 0 && k > 0 && j1 <= 1)
                                        {
                                        this.field_92102_a = new ItemStack(Items.firework_charge);
                                        nbttagcompound = new NBTTagCompound();
                                        nbttagcompound1 = new NBTTagCompound();
                                        byte b0 = 0;
                                        ArrayList arraylist = new ArrayList();
                                        
                                        for (int l1 = 0; l1 < p_77569_1_.getSizeInventory(); ++l1)
                                        {
                                        ItemStack itemstack2 = p_77569_1_.getStackInSlot(l1);
                                        
                                        if (itemstack2 != null)
                                        {
                                        if (itemstack2.getItem() == Items.dye)
                                        {
                                        arraylist.add(Integer.valueOf(ItemDye.field_150922_c[itemstack2.getItemDamage()]));
                                        }
                                        else if (itemstack2.getItem() == Items.glowstone_dust)
                                        {
                                        nbttagcompound1.setBoolean("Flicker", true);
                                        }
                                        else if (itemstack2.getItem() == Items.diamond)
                                        {
                                        nbttagcompound1.setBoolean("Trail", true);
                                        }
                                        else if (itemstack2.getItem() == Items.fire_charge)
                                        {
                                        b0 = 1;
                                        }
                                        else if (itemstack2.getItem() == Items.feather)
                                        {
                                        b0 = 4;
                                        }
                                        else if (itemstack2.getItem() == Items.gold_nugget)
                                        {
                                        b0 = 2;
                                        }
                                        else if (itemstack2.getItem() == Items.skull)
                                        {
                                        b0 = 3;
                                        }
                                        }
                                        }
                                        
                                        int[] aint1 = new int[arraylist.size()];
                                        
                                        for (int l2 = 0; l2 < aint1.length; ++l2)
                                        {
                                        aint1[l2] = ((Integer)arraylist.get(l2)).intValue();
                                        }
                                        
                                        nbttagcompound1.setIntArray("Colors", aint1);
                                        nbttagcompound1.setByte("Type", b0);
                                        nbttagcompound.setTag("Explosion", nbttagcompound1);
                                        this.field_92102_a.setTagCompound(nbttagcompound);
                                        return true;
                                        }
                                        else if (j == 0 && i == 0 && l == 1 && k > 0 && k == i1)
                                        {
                                        ArrayList arraylist1 = new ArrayList();
                                        
                                        for (int i2 = 0; i2 < p_77569_1_.getSizeInventory(); ++i2)
                                        {
                                        ItemStack itemstack1 = p_77569_1_.getStackInSlot(i2);
                                        
                                        if (itemstack1 != null)
                                        {
                                        if (itemstack1.getItem() == Items.dye)
                                        {
                                        arraylist1.add(Integer.valueOf(ItemDye.field_150922_c[itemstack1.getItemDamage()]));
                                        }
                                        else if (itemstack1.getItem() == Items.firework_charge)
                                        {
                                        this.field_92102_a = itemstack1.copy();
                                        this.field_92102_a.stackSize = 1;
                                        }
                                        }
                                        }
                                        
                                        int[] aint = new int[arraylist1.size()];
                                        
                                        for (int j2 = 0; j2 < aint.length; ++j2)
                                        {
                                        aint[j2] = ((Integer)arraylist1.get(j2)).intValue();
                                        }
                                        
                                        if (this.field_92102_a != null && this.field_92102_a.hasTagCompound())
                                        {
                                        NBTTagCompound nbttagcompound2 = this.field_92102_a.getTagCompound().getCompoundTag("Explosion");
                                        
                                        if (nbttagcompound2 == null)
                                        {
                                        return false;
                                        }
                                        else
                                        {
                                        nbttagcompound2.setIntArray("FadeColors", aint);
                                        return true;
                                        }
                                        }
                                        else
                                        {
                                        return false;
                                        }
                                        }
                                        else
                                        {
                                        return false;
                                        }
                                        }
                                        else
                                        {
                                        return false;
                                        }
                                        }
                                        
                                        /**
                                        * Returns an Item that is the result of this recipe
                                        */
                                        public ItemStack getCraftingResult(InventoryCrafting p_77572_1_)
                                        {
                                        return this.field_92102_a.copy();
                                        }
                                        
                                        /**
                                        * Returns the size of the recipe area
                                        */
                                        public int getRecipeSize()
                                        {
                                        return 10;
                                        }
                                        
                                        public ItemStack getRecipeOutput()
                                        {
                                        return this.field_92102_a;
                                        }
                                        
                                        

                                        Jcomprend la premiere partie mais pas la suite 😕

                                        Oui ce gif est drôle.

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

                                          Up Si vous avez un Github a me proposer car les codes de minecraft je comprend jamais mais d’un mod je comprendrais plus facilement je pense 🙂

                                          Oui ce gif est drôle.

                                          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

                                            Ton système de chance tu veux le mettre en place dans la machine et non dans une table de craft, non ?
                                            Parce que dans ce cas tu n’as absolument pas besoin de faire un IRecipe, les IRecipe c’est pour la table de craft.
                                            Il suffit de mettre un petit random sur le résultat de ta machine.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB