MFF

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

    Problème IGUIHandler

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    191 Messages 7 Publieurs 34.6k 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.
    • AymericRedA Hors-ligne
      AymericRed
      dernière édition par

      Pense pas que j’aies nien compris…
      Mais as-tu bien pensé à adapter ta texture.

      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
      • GabsG Hors-ligne
        Gabs
        dernière édition par

        Ah c’est surement ça ! ^^ je dois procédé comment ?

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

          Il y a des tutos pour ça…
          Dans ton gui, tu as une ressourcelocation qui correspond à ta texture, t’a juste à modifier cette image

          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
          • GabsG Hors-ligne
            Gabs
            dernière édition par

            A tu parle de ça mais oui je les adapter ^^ je penser que il fallait déplacer la texture du slot aussi x)

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

              Déplacer la texture du slot ?!? Si tu parles tu carré qui apparaît quand tu le survolé, c’est automatique, et sinon ben j’ai zappé quelque chose 😢

              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
              • GabsG Hors-ligne
                Gabs
                dernière édition par

                Ouais je parle du carré qui apparaît quand tu le survole moi quand je vais dessus c’est blanc et non transparent ^^

                EDIT: j’ai pas mal de problème ^^ en gros quand je met un item dans le slot de mon inventaire pour test et que je ferme l’inventaire et que je le ré ouvre il disparaît j’ai regarder dans la classe container j’ai pas trouver le soucis … et aussi j’ai un problème en gros je voudrais ouvrir mon inventaire avec une touche normal sauf que dans le commonproxy j’ai la ligne: return new GuiArma(player.inventory, new InventaireArma(player.getHeldItem(), 54)); le player.getHeldItem me fait crash quand j’ai pas d’item dans la main je peux le remplacer par quoi? et quand je déplace un item c’est pareil je crash aussi ça vient de la fonction slotclick J’crois.

                Class:

                -Container:

                
                package armacraft.net.GUI;
                
                import armacraft.net.AltisMineMod;
                import armacraft.net.Items.Water;
                import net.minecraft.entity.player.EntityPlayer;
                import net.minecraft.entity.player.InventoryPlayer;
                import net.minecraft.inventory.Container;
                import net.minecraft.inventory.Slot;
                import net.minecraft.item.ItemStack;
                import net.minecraft.nbt.NBTTagCompound;
                
                public class ContainerArma extends Container
                {
                public InventaireArma inv;
                public int rows;
                
                public ContainerArma(InventoryPlayer playerInv, InventaireArma inv) {
                this.inv = inv;
                this.rows = inv.getSizeInventory() / 8;
                int i = (this.rows - 4) * 17;
                int j;
                int k;
                
                // Adding slots to the backpack
                for (j = 0; j < this.rows; ++j) {
                for (k = 0; k < 9; ++k) {
                this.addSlotToContainer(new SlotInvArmaArmor(inv, k + j * 9, 69, 38));
                }
                }
                
                for (j = 0; j < 9; ++j) {
                this.addSlotToContainer(new Slot(playerInv, j, 8 + j * 18, 161 + i));
                }
                }
                
                @Override
                public boolean canInteractWith(EntityPlayer player) {
                if(player.getHeldItem() != null) {
                       this.writeToNBT(player.getHeldItem());
                }
                return player.getHeldItem() != null && player.getHeldItem().getItem() == AltisMineMod.Water;
                
                }
                
                public void writeToNBT(ItemStack stack) {
                if (!stack.hasTagCompound()) stack.setTagCompound(new NBTTagCompound());
                inv.writeToNBT(stack.getTagCompound());
                }
                
                @Override
                public ItemStack transferStackInSlot(EntityPlayer player, int index) {
                ItemStack itemstack = null;
                Slot slot = (Slot) this.inventorySlots.get(index);
                
                if (slot != null && slot.getHasStack()) {
                ItemStack itemstack1 = slot.getStack();
                itemstack = itemstack1.copy();
                
                if (itemstack.getItem() instanceof Water) return null;
                
                if (index < this.inv.getSizeInventory()) {
                if (!this.mergeItemStack(itemstack1, this.inv.getSizeInventory(), this.inventorySlots.size(), true)) return null;
                } else if (!this.mergeItemStack(itemstack1, 0, this.inv.getSizeInventory(), false)) { return null; }
                
                if (itemstack1.stackSize == 0)
                slot.putStack((ItemStack) null);
                else
                slot.onSlotChanged();
                }
                
                return itemstack;
                }
                
                /**
                * @param buttonPressed
                *            left click, right click, wheel click, etc.
                * @param flag
                *            category (e.g.: hotbar keys)
                */
                @Override
                public ItemStack slotClick(int slotIndex, int buttonPressed, int flag, EntityPlayer player) {
                // Prevents from removing current backpack
                if (flag == 2 && buttonPressed == player.inventory.currentItem) return null;
                if (slotIndex - this.inv.getSizeInventory() - 27 == player.inventory.currentItem) return null;
                return super.slotClick(slotIndex, buttonPressed, flag, player);
                }
                
                /**
                * Used to save content
                */
                @Override
                public void onContainerClosed(EntityPlayer player) {
                if(player.getHeldItem() != null) {
                       this.writeToNBT(player.getHeldItem());
                   }
                   super.onContainerClosed(player);
                }
                }
                
                
                1 réponse Dernière réponse Répondre Citer 0
                • GabsG Hors-ligne
                  Gabs
                  dernière édition par

                  Help?

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

                    Pour que ça sauvegarde l’item, il faut faire avec les tags nbt.
                    Et pour le held Item, il faut que tu retires tout ce qui touche ce stack dans ton inv si il est null

                    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
                    • DylemD Hors-ligne
                      Dylem
                      dernière édition par

                      Je suis perplexe par rapport au fait que tu aies une fonction writeToNBT et pas une fonction readFromNBT, si tu veux écrire dans ton autre classe ajoute directement à ta fonction la-bas, crées y une NBTTagList contenant tes slots. Et puis bon, nommer ses variables en français… Je vais pas faire de commentaire là-dessus mais c’est pas terrible.

                      Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                        Se que j’ai du mal a comprendre c’est pourquoi quand j’ouvre mon inventaire avec l’item dans les mains et que je déplace un item je crash pas et quand j’ouvre mon inventaire avec une touche toujours avec un item dans les mains et que je veux déplacer un item dans l’inventaire j’ai un java.lang.IndexOutOfBoundsException: Index: 55, Size: 45 .
                        /!\ Attention lorsque vous manipulez des tableaux. Chercher un élement d’un tableau à un indice inexistant causera un OutOfBoundException.
                        pourquoi j’ai cette erreur quand j’ouvre l’inventaire avec une touche?

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

                          Parce que lid du slot est trop élevé, là actuellement tu peux avoir 45 items (donc autant dids) et tu essayes tu mettre un slot avec 45 comme id

                          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 1
                          • GabsG Hors-ligne
                            Gabs
                            dernière édition par

                            Merci maintenant il me manque juste a viré le held item et c’est bon par contre j’ai pas trop suivi je dois procédé comment ?

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

                              Tu retire tout les trucs de nbt qui sont en rapport avec ce stack dans ton InventaireArma (d’après ce que j’avais vu, ça ne servait à rien)

                              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
                              • GabsG Hors-ligne
                                Gabs
                                dernière édition par

                                Yep c’est nickel merci par contre quand je clique sur échap je crash mais le soucis c’est que si j’enlève le nbt sa save pas mon item dans le slot lorsque je quitte le container.

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

                                  Montre le rapport et le code qui va avec

                                  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
                                  • GabsG Hors-ligne
                                    Gabs
                                    dernière édition par

                                    @Override
                                    public void onContainerClosed(EntityPlayer player) {
                                    if(player.getHeldItem() == null) {
                                           this.writeToNBT(player.getHeldItem());
                                       }
                                       super.onContainerClosed(player);
                                    }
                                    
                                    1 réponse Dernière réponse Répondre Citer 0
                                    • AymericRedA Hors-ligne
                                      AymericRed
                                      dernière édition par

                                      Heu….
                                      T’a bien relu ton code ?
                                      “if(player.getHeldItem() == null) {”
                                      T’es en train d’écrire dans la nbt uniquement si l’item que tu tiens null, faut que tu mettes != null

                                      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
                                      • GabsG Hors-ligne
                                        Gabs
                                        dernière édition par

                                        Je crash pas mais ça save pas mon item quand je quitte le container, après ça vient peut-etre pas d’ici

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

                                          Oui ça vient d’ici parce que si tu tiens un item, ta condition retournera toujours faux

                                          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
                                          • GabsG Hors-ligne
                                            Gabs
                                            dernière édition par

                                            Bah je peux le remplacer par quoi?

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 6 / 10
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB