MFF

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

    Un soucie pour des sacs à dos

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    12 Messages 4 Publieurs 2.7k 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.
    • Y Hors-ligne
      yveslefou
      dernière édition par

      @‘robin4002’:

      Salut,
      Peux-tu envoyer le code de ton gui handler ?

      Biensur mais je vois pas de quel classe il s’agit

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

        @‘robin4002’:

        Salut,
        Peux-tu envoyer le code de ton gui handler ?

        package fr.extazilia.extaziliamod.proxy;
        
        import java.util.HashMap;
        import java.util.Map;
        
        import cpw.mods.fml.common.network.IGuiHandler;
        import fr.extazilia.extaziliamod.common.sac.ContainerBackPack;
        import fr.extazilia.extaziliamod.common.sac.GuiBackPack;
        import fr.extazilia.extaziliamod.common.sac.InventoryBackPack;
        import fr.extazilia.extaziliamod.common.sac.ItemBackPack;
        import net.minecraft.entity.player.EntityPlayer;
        import net.minecraft.nbt.NBTTagCompound;
        import net.minecraft.world.World;
        
        public class CommonProxy implements IGuiHandler{
        private final static Map <string, nbttagcompound="">extendedEntityData = new HashMap<string, nbttagcompound="">();
        
        public void registerRender(){System.out.println("test serveur"); }
        
        public static void storeEntityData(String name, NBTTagCompound compound) {
        extendedEntityData.put(name, compound);
        }
        
        public static NBTTagCompound getEntityData(String name) {
        return extendedEntityData.remove(name);
        }
        
        @Override
        public Object getServerGuiElement(int ID, EntityPlayer player, World world,int x, int y, int z) {
        switch (ID) {
        case 0:
        // The last parameter must be a multiple of 9 (e.g: 9, 18, 27, 54)
        // Condition to check if the player has the right item in hand
        if (player.getHeldItem() == null || !(player.getHeldItem().getItem() instanceof ItemBackPack)){ return null;}
        else{return new ContainerBackPack(player.inventory, new InventoryBackPack(player.getHeldItem(), 54));}
        }
        return null;
        }
        
        @Override
        public Object getClientGuiElement(int ID, EntityPlayer player, World world,int x, int y, int z) {
        switch (ID) {
        case 0:
        // The last parameter must be a multiple of 9 (e.g: 9, 18, 27, 54)
        // Condition to check if the player has the right item in hand
        if (player.getHeldItem() == null || !(player.getHeldItem().getItem() instanceof ItemBackPack)) {return null;}
        else {return new GuiBackPack(player.inventory, new InventoryBackPack(player.getHeldItem(), 54));}
        }
        return null;
        }
        
        }
        ```</string,></string,>
        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 gui handler ne devrait pas être mélangé avec ton proxy.

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

            C’est tout à fait possible si c’est bien fait

            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
            • robin4002R Hors-ligne
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
              dernière édition par

              Oui mais c’est source d’erreur, donc vaut mieux éviter.
              S’il y a ré-implémenté les fonctions en mettant return null dans le client proxy, ça expliquerai le souci.

              Si ce n’est pas le cas, je pense que le gui handler est tout simplement pas enregistré.

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

                @‘robin4002’:

                Ton gui handler ne devrait pas être mélangé avec ton proxy.

                Ah d’accord néanmoins cela crash encore, je pense que j’ais mal réalisé ma classe :

                package fr.extazilia.extaziliamod.proxy;
                
                import net.minecraft.entity.player.EntityPlayer;
                import net.minecraft.world.World;
                import cpw.mods.fml.common.network.IGuiHandler;
                import fr.extazilia.extaziliamod.common.sac.ContainerBackPack;
                import fr.extazilia.extaziliamod.common.sac.GuiBackPack;
                import fr.extazilia.extaziliamod.common.sac.InventoryBackPack;
                import fr.extazilia.extaziliamod.common.sac.ItemBackPack;
                
                public class GuiHandler implements IGuiHandler{
                
                @Override
                public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                switch (ID) {
                case 0:
                // The last parameter must be a multiple of 9 (e.g: 9, 18, 27, 54)
                // Condition to check if the player has the right item in hand
                if (player.getHeldItem() == null || !(player.getHeldItem().getItem() instanceof ItemBackPack)) return null;
                return new ContainerBackPack(player.inventory, new InventoryBackPack(player.getHeldItem(), 54));
                }
                return null;
                }
                
                @Override
                public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                switch (ID) {
                case 0:
                // The last parameter must be a multiple of 9 (e.g: 9, 18, 27, 54)
                // Condition to check if the player has the right item in hand
                if (player.getHeldItem() == null || !(player.getHeldItem().getItem() instanceof ItemBackPack)) return null;
                return new GuiBackPack(player.inventory, new InventoryBackPack(player.getHeldItem(), 54));
                }
                return null;
                }
                
                }
                
                
                1 réponse Dernière réponse Répondre Citer 0
                • SCAREXS Hors-ligne
                  SCAREX
                  dernière édition par

                  Où as-tu enregistré ton gui handler ?

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

                    @‘SCAREX’:

                    Où as-tu enregistré ton gui handler ?

                    Dans ma classe principal avec :

                    MinecraftForge.EVENT_BUS.register(new GuiHandler());
                    
                    FMLCommonHandler.instance().bus().register(new GuiHandler());
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • AymericRedA Hors-ligne
                      AymericRed
                      dernière édition par

                      Ceci ne vas pas l’enregistrer comme GuiHandler mais comme classe d’évents, normal que ça ne marche pas. Il faut faire NetworkRegistry.INSTANCE.registerGuiHandler(new GuiHandler());

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

                        Merci à tous

                        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