MFF

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

    Savoir si un coffre est vide ou plein

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    37 Messages 4 Publieurs 6.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.
    • AmaA Hors-ligne
      Ama
      dernière édition par

      @‘SCAREX’:

      Arrête pendant un petit bout de temps, mojang en a marre que tu redémarres ton jeu.

      xD

      Si je t'ai filé un coup de main n'oublie pas le + / -
      Par contre évite les demandes d'aides en MP, tu sera sympa'

      La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

      Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

        Je viens de re test et j’ai juste Minecraft qui cesse de fonctionner pas de crash ni rien

        Si je t'ai filé un coup de main n'oublie pas le + / -
        Par contre évite les demandes d'aides en MP, tu sera sympa'

        La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

        Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

          Si c’est au démarrage, c’est normal, sinon lance bien ton mod en mode RUN (au lieu de debug), si çà ne change rien, c’est que le problème vient de ton ordi.

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

            SCAREX, non mon problème persiste toujours !

            Je remet mon code au cas où avec deux trois modif’s

            ​@SideOnly(Side.CLIENT)
            
                @SubscribeEvent
                public void renderContainerMessage(RenderGameOverlayEvent.Text event)
                {    
                    MovingObjectPosition movingObjPos = this.mc.thePlayer.rayTrace(2D, event.partialTicks);
            
                    int width = event.resolution.getScaledWidth(); //EntityRenderer
            
                    int height = event.resolution.getScaledHeight();
            
                    EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                    World world = Minecraft.getMinecraft().theWorld;
                    MovingObjectPosition mov = player.rayTrace(2D, event.partialTicks);
            
                    if(this.mc.objectMouseOver != null && mov != null && mov.typeOfHit == MovingObjectType.BLOCK)
                    {
                        BlockPos blockpos = this.mc.objectMouseOver.getBlockPos();
                        Block block = world.getBlockState(blockpos).getBlock();
            
                    String getOpeningMessage = EnumChatFormatting.BOLD + "Right Click" + EnumChatFormatting.RESET + " to open";
            
                    String getContainerBlockName = block.getLocalizedName();
                    String isEmpty = "(Empty)";
                    String getIfIsLocked = EnumChatFormatting.DARK_RED + "Locked";
            
                    TileEntityChest tile = (TileEntityChest)this.mc.theWorld.getTileEntity(blockpos);
                    boolean flag = true;
            
                        if((block) instanceof BlockChest)
                        {
                        this.drawCenteredString(this.mc.fontRendererObj, getOpeningMessage, width / 2 + 30, height / 2 + 8, new Color(255,255,255).getRGB());
                        this.drawCenteredString(this.mc.fontRendererObj, getContainerBlockName, width / 2 + 30, height / 2 + 22, new Color(255,255,255).getRGB());
            
                        if(tile.isLocked())
                        {
                        this.drawCenteredString(this.mc.fontRendererObj, getIfIsLocked, width / 2 - 20, height / 2 - 10, new Color(255,255,255).getRGB());
                        }
            
                        for (int i = 0; i < tile.getSizeInventory(); i++)
                        {
                        if (tile.getStackInSlot(i) != null) 
                        {
                        flag = false;
                        }
                        }
                        if(flag)
                        {
                        System.out.println("container vide");
                        }
                        else
                        {
                        System.out.println("container non-vide");
                        }
            
                        }
                    }
                }
            

            Si je t'ai filé un coup de main n'oublie pas le + / -
            Par contre évite les demandes d'aides en MP, tu sera sympa'

            La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

            Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

              Essaie avec çà plutôt :

              
              ​@SideOnly(Side.CLIENT)
              
              @SubscribeEvent
              public void renderContainerMessage(RenderGameOverlayEvent.Post event)
              {
              if (event.type == RenderGameOverlayEvent.ElementType.TEXT) {
              MovingObjectPosition movingObjPos = this.mc.thePlayer.rayTrace(2D, event.partialTicks);
              
              int width = event.resolution.getScaledWidth(); //EntityRenderer
              
              int height = event.resolution.getScaledHeight();
              
              EntityPlayer player = Minecraft.getMinecraft().thePlayer;
              World world = Minecraft.getMinecraft().theWorld;
              MovingObjectPosition mov = player.rayTrace(2D, event.partialTicks);
              
              if(this.mc.objectMouseOver != null && mov != null && mov.typeOfHit == MovingObjectType.BLOCK)
              {
              BlockPos blockpos = this.mc.objectMouseOver.getBlockPos();
              Block block = world.getBlockState(blockpos).getBlock();
              
              String getOpeningMessage = EnumChatFormatting.BOLD + "Right Click" + EnumChatFormatting.RESET + " to open";
              
              String getContainerBlockName = block.getLocalizedName();
              String isEmpty = "(Empty)";
              String getIfIsLocked = EnumChatFormatting.DARK_RED + "Locked";
              
              TileEntityChest tile = (TileEntityChest)this.mc.theWorld.getTileEntity(blockpos);
              boolean flag = true;
              
              if((block) instanceof BlockChest)
              {
              this.drawCenteredString(this.mc.fontRendererObj, getOpeningMessage, width / 2 + 30, height / 2 + 8, new Color(255,255,255).getRGB());
              this.drawCenteredString(this.mc.fontRendererObj, getContainerBlockName, width / 2 + 30, height / 2 + 22, new Color(255,255,255).getRGB());
              
              if(tile.isLocked())
              {
              this.drawCenteredString(this.mc.fontRendererObj, getIfIsLocked, width / 2 - 20, height / 2 - 10, new Color(255,255,255).getRGB());
              }
              
              for (int i = 0; i < tile.getSizeInventory(); i++)
              {
              if (tile.getStackInSlot(i) != null)
              {
              flag = false;
              }
              }
              if(flag)
              {
              System.out.println("container vide");
              }
              else
              {
              System.out.println("container non-vide");
              }
              
              }
              }
              }
              }
              

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

                Toujours Pareil

                Si je t'ai filé un coup de main n'oublie pas le + / -
                Par contre évite les demandes d'aides en MP, tu sera sympa'

                La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                  @‘ZeAmateis’:

                  Toujours Pareil

                  Et si tu mets tout ce code en commentaire ?

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

                    ça marche normalement ^^ Normal non ? ^^’

                    Si je t'ai filé un coup de main n'oublie pas le + / -
                    Par contre évite les demandes d'aides en MP, tu sera sympa'

                    La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                    Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                      Dans quelle classe se trouve cette fonction ?

                      Après plusieurs tests, voici mes résultats :
                      1-Ta fonction est dans une classe Gui (ou GuiScreen), ce qui est une mauvaise manie
                      2-Le container est toujours vide car tu récupère un WorldClient et non un WorldServer donc ta tileEntity est vide. Il faut faire une synchronisation client / serveur.

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

                        une classe ou des events côté clients sont chargés

                        Si je t'ai filé un coup de main n'oublie pas le + / -
                        Par contre évite les demandes d'aides en MP, tu sera sympa'

                        La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                        Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                          Petit up, une petite idée ?

                          Quel serait le code alors ?

                          @‘SCAREX’:

                          Dans quelle classe se trouve cette fonction ?

                          Après plusieurs tests, voici mes résultats :
                          1-Ta fonction est dans une classe Gui (ou GuiScreen), ce qui est une mauvaise manie
                          2-Le container est toujours vide car tu récupère un WorldClient et non un WorldServer donc ta tileEntity est vide. Il faut faire une synchronisation client / serveur.

                          Si je t'ai filé un coup de main n'oublie pas le + / -
                          Par contre évite les demandes d'aides en MP, tu sera sympa'

                          La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                          Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                            @‘robin4002’:

                            Envoie le rapport.

                            J’ai fait :

                            for (int i = 0; i < tile.getSizeInventory(); i++)
                            
                                        {
                                    System.out.println(tile.getStackInSlot(i));
                            
                                        if (tile.getStackInSlot(i) != null)
                                        {
                                        flag = false;
                                        }
                                        }
                            

                            Le:

                            System.out.println(tile.getStackInSlot(i));
                            

                            Me donne

                            [18:16:59] [Client thread/INFO] [STDOUT]: [fr.zeamateis.tesm.module.client.guis.client.gui.GuiInGame:renderContainerMessage:88]: null

                            Pas normal ?

                            Si je t'ai filé un coup de main n'oublie pas le + / -
                            Par contre évite les demandes d'aides en MP, tu sera sympa'

                            La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                            Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

                            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

                              Tout le temps ? car normalement comme la boucle va de 0 à la taille de l’inventaire ça devrait afficher plusieurs null.  (et au contraire un truc non null si il y a quelques choses dans le IInventory).

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

                                ça l’affiche tout le temps oui effectivement

                                Si je t'ai filé un coup de main n'oublie pas le + / -
                                Par contre évite les demandes d'aides en MP, tu sera sympa'

                                La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                                Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

                                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

                                  Bon c’est ce que je craignais. Côté client getStackInSlot return toujours null, le client ne sait pas ce qu’il y a dans le coffre temps qu’il ne l’ouvre pas (c’est à ce moment que le contenu est synchronisé).

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

                                    Problème résolu grâce à Dermensolf sur IC

                                    Si je t'ai filé un coup de main n'oublie pas le + / -
                                    Par contre évite les demandes d'aides en MP, tu sera sympa'

                                    La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                                    Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

                                    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

                                      Le code qu’il a donné ne fonctionnera pas sur un serveur dédiée. Il ne fonctionne que en solo.

                                      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