MFF

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

    Par1ItemStack.stackSize; a une dysfonctionnement

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.2
    25 Messages 5 Publieurs 5.8k 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Enlève le if(!world.isRemote)

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

        non sa fais tout beugé ^^'.

        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

          Remplace player.getCurrentEquippedItem() par stack pour un soucis d’optimisation.
          À mon avis le serveur sait que l’item doit être retiré, mais pas le client. Et quand tu tape ça syncro. Donc ça le consume en client.
          Le problème est surement au niveau de la condition te.isUse == false, essaye de la retirer et regarde si ça fonctionne.
          Si oui, envoie le code de ton tile entity. Sinon, je sais pas trop x)

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

            ok je vais essayer!


            Non sa ne marche pas bon autant exposer un autre problème ^^', alors voila je voudrais que mon item s’anime si mon boolean est true et ce boolean c’est is.use mais apparemment sa ne fonctionne pas voila mon tileEntity

            package portuar.cubicBeyond.client.blocks.decondenseur;
            
            import net.minecraft.entity.passive.EntityPig;
            import net.minecraft.nbt.NBTTagCompound;
            import net.minecraft.tileentity.TileEntity;
            
            public class TileEntityDecondenseur extends TileEntity
            
            {
            public int coolDown = 100;
            public float motorAngle, prevMotorAngle;
            public boolean isUse;
            public int itemId;
            
            public void readFromNBT(NBTTagCompound nbtTag)
            {
            super.readFromNBT(nbtTag);
            isUse = nbtTag.getBoolean("isUse");
            itemId = nbtTag.getInteger("itemId");
            }
            
            public void writeToNBT(NBTTagCompound nbtTag)
            {
            super.writeToNBT(nbtTag);
            nbtTag.setBoolean("isUse", isUse);
            nbtTag.setInteger("itemId", itemId);
            }
            
            public void updateEntity()
            {
            if(this.isUse == true)
            {
            this.prevMotorAngle = this.motorAngle;
            this.motorAngle += 0.05F;
            this.coolDown–;
            
            if(this.coolDown < 0)
            {
            if(this.itemId == 1)
            {
            EntityPig entity = new EntityPig(this.worldObj);
            entity.setLocationAndAngles(this.xCoord, this.yCoord + 1, this.zCoord, 0, 0);
            this.worldObj.spawnEntityInWorld(entity);
            this.itemId = 0;
            }
            
            this.coolDown = 100;
            this.isUse = false;
            }
            
            }
            }
            }
            
            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

              Dans ton tile entity ajoute :

              public Packet getDescriptionPacket()
              {
              NBTTagCompound nbttagcompound = new NBTTagCompound();
              this.writeToNBT(nbttagcompound);
              return new Packet132TileEntityData(this.xCoord, this.yCoord, this.zCoord, 4, nbttagcompound);
              }
              
              public void onDataPacket(INetworkManager net, Packet132TileEntityData pkt)
              {
              this.readFromNBT(pkt.data);
              }
              

              Pour que les valeurs soit synchronisées client / serveur

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

                Je ne peux pas importez INetworkManager et Packet132TileEntityData
                ps : je suis en 1.7

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

                  version 1.7 :

                  
                  public Packet getDescriptionPacket()
                  {
                  NBTTagCompound nbttagcompound = new NBTTagCompound();
                  this.writeToNBT(nbttagcompound);
                  return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 4, nbttagcompound);
                  }
                  
                  public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity updateTileEntity)
                  {
                  this.readFromNBT(updateTileEntity.func_148857_g());
                  }
                  
                  

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

                    Ouai sa fonctionne mais ne change absolument rien au deux problèmes.

                    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

                      Sinon tu peux faire :

                      player.getCurrentEquippedItem().damageItem(1, player);
                      if(player.getCurrentEquippedItem().stackSize == 0)
                      {
                      player.setCurrentEquippedItem(null);
                      }
                      

                      Si c’est toujours pas bon, je vois vraiment pas 😕

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

                        nop toujours pas :S

                        1 réponse Dernière réponse Répondre Citer 0
                        • isadorI Hors-ligne
                          isador Moddeurs confirmés Modérateurs
                          dernière édition par

                          Met les syso un peut partout pour voir ou ça bloque

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

                            Mais sa bloque pas c’est juste un beug ^^

                            1 réponse Dernière réponse Répondre Citer 0
                            • isadorI Hors-ligne
                              isador Moddeurs confirmés Modérateurs
                              dernière édition par

                              oue mais avec les syso on vera quelle partie bug

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

                                mais enfete c’est même pas un beug juste pas la bonne fonction je pense.

                                1 réponse Dernière réponse Répondre Citer 0
                                • isadorI Hors-ligne
                                  isador Moddeurs confirmés Modérateurs
                                  dernière édition par

                                  Envoi tout le code par pastebin stp

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

                                    je n’utilise pas pastebin

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

                                      Sur pastebin.com tu n’es pas obligé d’avoir un compte…

                                      Moddeur à la retraite et développeur de trucs en Java.

                                      J'aide les gens comme je peux, alors si mon message v…

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

                                        Mon tile entity :

                                        http://pastebin.com/XCYUXL3i

                                        Mon block :

                                        http://pastebin.com/NTPR7cW4

                                        Ps : j’ai fais un Sytem.out.println et j’ai u problème quand isUse est true et bah il varie en réalité entre true et false ce qui empeche l’animation.

                                        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

                                          @‘Superloup10’:

                                          version 1.7 :

                                          
                                          public Packet getDescriptionPacket()
                                          {
                                          NBTTagCompound nbttagcompound = new NBTTagCompound();
                                          this.writeToNBT(nbttagcompound);
                                          return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 4, nbttagcompound);
                                          }
                                          
                                          public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity updateTileEntity)
                                          {
                                          this.readFromNBT(updateTileEntity.func_148857_g());
                                          }
                                          
                                          

                                          Mets ce code dans ton tile entity pour avoir une synchro client / serveur de tes variables.
                                          Mets aussi world/markBlockForUpdate(x, y, z); dans ta fonction onBlockClicked

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

                                            Bon je ne sais pas si ce que tu m’as donnés fonctionnent (j’ai testé mais rien ne chnage) parcontre mon PS cité ci-dessus est rectifié tout fonction apar cette histoire d’item et de c’est 1 stack et aussi de l’animation qui se fait pour tout les blocks en même temps.

                                            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