MFF

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

    Déplacer la position du chat

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    11 Messages 5 Publieurs 2.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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      Le problème c’est que tu ne sais pas trop ce que tu fais je suppose, car déjà le GuiIngame utilisé est celui de forge donc la classe est GuiIngameForge, de plus tu peux utiliser le RenderGameOverlayEvent, donc il te faut créer une classe qui va gérer cet event (il y a un tuto sur les events sur le forum), en pensant à l’enregistrer uniquement côté client (ou alors rajouter un SideOnly au-dessus de la fonction) pour ensuite pouvoir déplacer le chat

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

        Ton jeu crash car persistantChatGUI et eventParent sont null.
        Déjà supprime eventParent et cette ligne :
               RenderGameOverlayEvent.Chat event = new RenderGameOverlayEvent.Chat(eventParent, 0, height - 20);
        Et pour le translate mets directement les valeurs que tu veux.

        Ensuite pour le tchat il faut voir comment obtenir une instance de persistantChatGUI

        Supprimes également le extends et le constructeur qui ne servent absolument à rien.

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

          J’ai fais quelques modifications, mon renderChat ressemble à ça :

          protected void renderChat(int width, int height)
              {
                  mc.mcProfiler.startSection("chat");
          
                  GuiNewChat persistantChatGUI = new GuiNewChat(mc);
                  GL11.glPushMatrix();
                  GL11.glTranslatef(0, height - 48, 0.0F);
                  persistantChatGUI.drawChat(updateCounter);
                  GL11.glPopMatrix();
          
                  mc.mcProfiler.endSection();
              }
          

          Le problème c’est que je n’ai pas la variable updateCounter, je pourrais faire comment pour la récuperer ?

          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

            Retires la ligne :
            GuiNewChat persistantChatGUI = new GuiNewChat(mc);
            et remplaces persistantChatGUI par :
            mc.ingameGUI.getChatGUI()

            Et pour updateCounter : mc.ingameGUI.getUpdateCounter()

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

              J’ai tout remplacé, mais en jeu, quand j’écris dans le chat, rien ne s’affiche (j’ai bien sur le retour dans la console).

              Je vous montre ma class entière :

              public class GuiChat {
              
              Minecraft mc = Minecraft.getMinecraft();
              
              @SubscribeEvent
              public void onRenderOverlay(RenderGameOverlayEvent event){
                     if (event.type == RenderGameOverlayEvent.ElementType.CHAT){
                          event.setCanceled(true);
              
                          renderChat(event.resolution.getScaledWidth(),event.resolution.getScaledHeight());
                 }
              }
              
              public void renderChat(int width, int height)
                  {
                      mc.mcProfiler.startSection("chat");
                      GL11.glPushMatrix();
                      GL11.glTranslatef(mc.displayWidth, mc.displayHeight / 2 - 24, 0.0F);
                      mc.ingameGUI.getChatGUI().drawChat(mc.ingameGUI.getUpdateCounter());
                      GL11.glPopMatrix();
              
                      mc.mcProfiler.endSection();
                  }
              }
              
              

              Je ne sais pas d’où peut venir le problème…

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

                GL11.glTranslatef(mc.displayWidth, mc.displayHeight / 2 - 24, 0.0F);
                ``` Le problème est que tu mets la zone de dessin en dehors de l'écran (tout à droite : mc.displayWidth), remplaces-le par zéro pour que ça reste la postion x par défaut. Et (j'y m'y connait pas trop en rendu) je pense qu'il va falloir que tu mettes quelque chose comme -20 ou -45 en y car le gui du chat est dessiné à une position, et si tu ne mets pas quelque chose de négatif en y, ça va s'ajouter à la position du chat normal, j'espère que t'a compris ^^

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

                  @‘AymericRed’:

                  GL11.glTranslatef(mc.displayWidth, mc.displayHeight / 2 - 24, 0.0F);
                  ``` Le problème est que tu mets la zone de dessin en dehors de l'écran (tout à droite : mc.displayWidth), remplaces-le par zéro pour que ça reste la postion x par défaut. Et (j'y m'y connait pas trop en rendu) je pense qu'il va falloir que tu mettes quelque chose comme -20 ou -45 en y car le gui du chat est dessiné à une position, et si tu ne mets pas quelque chose de négatif en y, ça va s'ajouter à la position du chat normal, j'espère que t'a compris ^^
                  

                  L’erreur débile xD
                  Merci, ça marche maintenant 😛

                  PS: C’est possible aussi de bouger la zone d’écriture, non ?

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

                    De rien 🙂
                    Je pense que oui, ça doit-être un autre type d’élément, à voir.

                    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 0
                    • DeletedD Hors-ligne
                      Deleted
                      dernière édition par

                      @AymericRed
                      Si il ne met comme coordonnées que de simples chiffres, tels que -20 ou 45, ça risque de poser problème lors du redimensionnement de Minecraft.
                      @Rremis Essaie de changer la taille de la fenêtre et tu vas vite voir que la zone de dessin dui chat n’est pas au même endroit. Il faut pour contrer ce problème te servir des variables gui.width et gui.height. Inspire-toi des autres classes vanilla de gui pour voir comment ils font 😃

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

                        @Plaigon, t’a raison, mais comme ces valeurs (qui sont fixes) sont relatives à celles du chat non modifié, si on ne mets pas de valeurs trop grande, à moins d’avoir une fenêtre vraiment petite, il n’y aura pas de problème, et comme il veut afficher quelque chose en dessous, il faut être su qu’il ait la place.

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB