MFF

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

    Probleme Event PickedUp Item

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    16 Messages 2 Publieurs 4.9k 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.
    • sosohS Hors-ligne
      sosoh
      dernière édition par

      Mon code:

      ​@SubscribeEvent
      public void itemPickedUp(PlayerEvent.ItemPickupEvent event){
      System.out.println("1");
      EntityPlayer player = event.player;
      EntityItem item = event.pickedUp;
      minefusContainer = new MinefusContainerPlayer(player, player.inventory, ExtendedPlayer.get(player).inventory);
      if(player.inventory.getFirstEmptyStack() == -1){
      System.out.println(player.inventory.getFirstEmptyStack());
      if(minefusInventory.getFirstEmptyStack() == -1){
      System.out.println(minefusInventory.getFirstEmptyStack());
      }else{
      System.out.println(minefusInventory.getFirstEmptyStack());
      int slotId = minefusInventory.getFirstEmptyStack();
      if(minefusInventory.isItemValidForSlot(slotId, event.pickedUp.getEntityItem()) == true){
      System.out.println(event.pickedUp.getEntityItem().getDisplayName());
      minefusContainer.putStackInSlot(slotId, event.pickedUp.getEntityItem());
      event.pickedUp.setDead();
      }
      }
      }
      }
      

      Les logs:

      [20:04:42] [Server thread/INFO] [STDOUT]: [com.google.kujaff42530.moddofus.eventHandlers.MinefusEventHandler:itemPickedUp:95]: 1
      -1
      0
      [20:04:42] [Server thread/INFO] [STDOUT]: [com.google.kujaff42530.moddofus.eventHandlers.MinefusEventHandler:itemPickedUp:108]: Sand
      

      Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

        Le contenu n’est pas sauvegardé.

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

          Quel contenu ? Comment je dois procéder alors ?

          Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

            @‘sosoh’:

            Quel contenu ? Comment je dois procéder alors ?

            Ton entityExtendedProperties n’est pas sauvegardé.

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

              Et donc je dois faire comment, je la sync ?

              Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

                @‘sosoh’:

                Et donc je dois faire comment, je la sync ?

                
                NBTTagCompound playerData = new NBTTagCompound();
                ((ExtendedEntityPropTuto)(event.entity.getExtendedProperties(ExtendedEntityPropTuto.EXT_PROP_NAME))).saveNBTData(playerData);
                proxy.storeEntityData(((EntityPlayer) event.entity).getDisplayName(), playerData);
                ExtendedEntityPropTuto.saveProxyData((EntityPlayer) event.entity);
                
                

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

                  Jai fait ca mais ca ne marche pas non plus:

                  ​[font=Courier New**if**](**minefusInventory**.isItemValidForSlot(slotId, event.**pickedUp**.getEntityItem()) == **true**){
                  System.***out***.println(**"Nom item" **+ event.**pickedUp**.getEntityItem().getDisplayName());
                  ItemStack itemStack = event.**pickedUp**.getEntityItem();
                  **minefusContainer**.putStackInSlot(slotId, itemStack);
                  NBTTagCompound playerData = **new **NBTTagCompound();
                  ((ExtendedPlayer)(player.getExtendedProperties(ExtendedPlayer.***EXT_PROP_MINEFUSINV***))).saveNBTData(playerData);
                  **proxy**.*storeEntityData*(player.getDisplayName(), playerData);
                  ExtendedPlayer.*saveProxyData*(player);
                  event.**pickedUp**.setDead();
                  }
                  

                  Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

                    Il faut utiliser l’entityExtendedProperties que tu as récupérer auparavant car là tu enregistres l’EEP qui était déjà enregistré.

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

                      Je n’ai récupéré aucune ExtendedProperties auparavant. Je ne comprends pas 😕

                      Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

                        @‘sosoh’:

                        Je n’ai récupéré aucune ExtendedProperties auparavant. Je ne comprends pas 😕

                        et là ?

                        ExtendedPlayer.get(player).inventory
                        

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

                          Cette méthode fait la meme chose que celle dans mon code:

                          ​[font=Courier New**public static final **]ExtendedPlayer get(EntityPlayer player) {
                          **return **(ExtendedPlayer) player.getExtendedProperties(***EXT_PROP_MINEFUSINV***);
                          }
                          
                          ​%(#000000)[[font=Courier New]((ExtendedPlayer)(player.getExtendedProperties(ExtendedPlayer.***EXT_PROP_MINEFUSINV***])))
                          

                          Donc ca revient au meme non ?

                          Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

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

                            @‘sosoh’:

                            Cette méthode fait la meme chose que celle dans mon code:

                            ​[font=Courier New**public static final **]ExtendedPlayer get(EntityPlayer player) {
                            **return **(ExtendedPlayer) player.getExtendedProperties(***EXT_PROP_MINEFUSINV***);
                            }
                            
                            ​%(#000000)[[font=Courier New]((ExtendedPlayer)(player.getExtendedProperties(ExtendedPlayer.***EXT_PROP_MINEFUSINV***])))
                            

                            Donc ca revient au meme non ?

                            Non, puisque en premier tu récupère l’EEP puis tu le modifie, puis tu le récupère encore et tu le sauvegardes.

                            Exemple :
                            -tu récupère la date du jour
                            -tu changes la date
                            -tu récupère la date du jour
                            -tu la sauvegarde dans une variable

                            au final, dans ta variable il y aura la date du jour et non la date modifiée.

                            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
                            • 1 / 1
                            • Premier message
                              Dernier message
                            Design by Woryk
                            ContactMentions Légales

                            MINECRAFT FORGE FRANCE © 2024

                            Powered by NodeBB