MFF

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

    OnItemRightClick sur une entity.

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    125 Messages 8 Publieurs 21.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.
    • Snowy_1803S Hors-ligne
      Snowy_1803
      dernière édition par

      PlayerRespawnEvent est un event FML. As-tu enregistré ton GuiHandler dans le FMLEventBus ?

      Moddeur 1.8

      Développeur Java

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

        J’ai ça chez moi:

        @EventHandler
        public void init(FMLInitializationEvent event) {
        proxy.init(event);
        NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, proxy); 
        MinecraftForge.EVENT_BUS.register(new EntityEvent());
            FMLCommonHandler.instance().bus().register(new EntityEvent());
        
        }
        

        PS: EntityEvent = la class avec onRespawn et onDead.

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

          Ça devrait être bon, alors.

          Moddeur 1.8

          Développeur Java

          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

            Non, ce ne sont que des event Forge.
            Je vais regarder de mon côté. Il faut clear pour chaque item si tu ne veux que rien reste.
            Et en effet scarex, mon code est perfectible (uuid et tableau comme tu as dit). Ce qu’il faudrait aussi faire c’est sauvegarder la HashMap dans la save au cas le joueur se déconnecte au lieu de respawn tout de suite et que le serveur est coupé entre temps.

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

              D’acc ^^ j’attend ton retour, merci à vous 😄

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

                Pourtant le package de PlayerRespawnEvent indique FML…

                Moddeur 1.8

                Développeur Java

                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

                  Ah oui autant pour moi. Je suis en 1.8.9 donc tout passe par l’event bus de Forge.
                  EDIT : ahhh c’est pour ça que ça ne fonctionne pas chez floriangabet.
                  Dans ta classe principale mets :

                  EntityEvent entityEvent = new EntityEvent();
                  FMLCommonHandler.instance().bus().register(entityEvent );
                  MinecraftForge.EVENT_BUS.register(entityEvent);
                  

                  Sinon tu aura deux instances différentes de EntityEvent, donc deux maps différentes.

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

                    Je venais d’y penser…
                    Sinon, tu peux aussi mettre la variable static.

                    Moddeur 1.8

                    Développeur Java

                    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

                      Oui, ça fonctionne aussi.
                      Bon code modifier :

                      private Map <uuid, itemstack[]="">itemsToKeep = new HashMap<uuid, itemstack[]="">();
                      
                      @SubscribeEvent
                      public void onDead(LivingDeathEvent event)
                      {
                      if(event.entityLiving instanceof EntityPlayer)
                      {
                      EntityPlayer player = (EntityPlayer)event.entityLiving;
                      ItemStack[] stackToKeep = new ItemStack[player.inventory.getSizeInventory()];
                      for(int i = 0; i < player.inventory.getSizeInventory(); i++)
                      {
                      ItemStack stack = player.inventory.getStackInSlot(i);
                      if(stack != null)
                      {
                      if(stack.getItem() == Items.diamond_sword)
                      {
                      stackToKeep* = stack;
                      }
                      player.inventory.setInventorySlotContents(i, null);
                      }
                      }
                      itemsToKeep.put(player.getGameProfile().getId(), stackToKeep);
                      }
                      }
                      
                      @SubscribeEvent
                      public void onRespawn(PlayerRespawnEvent event)
                      {
                      if(itemsToKeep.containsKey(event.player.getGameProfile().getId()))
                      {
                      ItemStack[] stackToKeep = itemsToKeep.get(event.player.getGameProfile().getId());
                      for(int i = 0; i < event.player.inventory.getSizeInventory(); i++)
                      {
                      event.player.inventory.setInventorySlotContents(i, stackToKeep*);
                      }
                      itemsToKeep.remove(event.player.getGameProfile().getId());
                      }
                      }
                      

                      UUID + tableau d’item stack.
                      Donc prend en charge plusieurs items. Et supprimes les autres items. J’ai mit une épée en diamant, c’était pour m’assurer que les enchantements étaient gardé y comprit le nom custom.</uuid,></uuid,>

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

                        Wow magnifique merci !

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

                          Dernier petit soucis! 😕 l’item que je met a la place de l’épée est un item GUI et lorsque je met un item dans l’item Gui et que je le referme l’item dedans disparaît ^^ .

                          1 réponse Dernière réponse Répondre Citer 0
                          • FolganskyF Hors-ligne
                            Folgansky Correcteurs
                            dernière édition par

                            Tu fais un backpack qui reste sur le joueur même mort on dirait. C’est ça? 😃

                            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

                              C’est un sac tu veux dire ? Car item gui ça ne veux rien dire …
                              Si oui ça vient de ton container (ou des nbt).

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

                                C’est un backpack exactement %(#333333)[size=small][[color=#0072bc]☆Toutoune1008☆].

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

                                  Bizarre le problème ne vient pas de ton code j’ai un problème avec mon countainer pourtant j’ai rien toucher .

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

                                    OK problème résolu ! il me manquer une ligne je sais pas pourquoi ^^ merci à vous de votre aide 🙂 .

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

                                    MINECRAFT FORGE FRANCE © 2024

                                    Powered by NodeBB