MFF

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

    Message sur l'écran

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

      bonjour,
      je viens à vous après de nombreuses heures de recherches sur internet.

      Ce que je voudrais faire c’est afficher des texture lors des votes et en haut à droite afficher des informations, mais je n’ai aucune idée de comme je pourrais faire ceci…
      Si vous pouviez m’apporter un peu d’aide je serais vraiment content et je vous remercie d’avance !

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002R En ligne
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
        dernière édition par

        Salut,
        Il faut utiliser l’event RenderGameOverlay pour faire cela.

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

          Je te remercie je vais voir cela et je vous dit quoi ! 🙂


          Oui mais je n’ai aucune idée de comment faire… Peux-tu m’envoyer un code ? Pour que je puisse voir ( je souhaiterais pour l’exemple qu’un message au milieu de l’écran s’affiche 10 seconds en faisant par exemple /test) …

          1 réponse Dernière réponse Répondre Citer 0
          • robin4002R En ligne
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs
            dernière édition par

            Pour ça il va falloir cumuler plusieurs choses.
            Pour le /test, il faut une commande. L’action de la commande s’exécute côté serveur et l’affichage est côté client, donc il faut envoyer un paquet vers le client.

            Ensuite une fois que le client reçoit le paquet, il faut mettre une variable de timer sur 10*20 (10 secondes * 20 ticks) et dans la fonction de l’event RenderGameOverlay la diminuer de 1 à chaque appel de la fonction. En même temps tu draw le texte.

            Pour les commandes : https://www.minecraftforgefrance.fr/showthread.php?tid=299 (il peut avoir quelques différences en 1.7.10 par rapport à la 1.6.4).
            Pour les paquets : https://www.minecraftforgefrance.fr/showthread.php?tid=1118
            Et pour les événements : https://www.minecraftforgefrance.fr/showthread.php?tid=716

            Voila à quoi devrait ressemble ta classe d’event :

            package fr.minecraftforgefrance.tutoriel.common;
            
            import net.minecraftforge.clien.event.RenderGameOverlay;
            import net.minecraft.client.Minecraft;
            import cpw.mods.fml.common.eventhandler.SubscribeEvent;
            
            public class RenderEventHandler
            {
                  public static final RenderEventHandler INSTANCE = new RenderEventHandler();
                  private String text;
                  private int timer;
                  private Minecraft mc = Minecraft.getMinecraft();
            
                 @SubscribeEvent
                 public void onEntityJoin(RenderGameOverlay.Post event)
                 {
                      if(this.timer > 0 && this.text != null)
                      {
                           // on décrémente le timer
                           this.timer–;
                           // affiche le texte au centre de la largeur, en y 20 et avec la couleur 0xFFFFFF -> blanc
                           this.mc.fontRenderer.drawString(text, (event.resolution.getWitdh() - this.mc.fontRenderer.getStringWitdh(text)) / 2, 20, 0xFFFFFF);
                      }
                 }
            
                 public void setText(String text)
                 {
                     this.text = text;
                     this.timer = 10*20;
                 }
            
            }
            

            Pour enregistrer l’event, il faudra mettre dans ta classe principale MinecraftForge.EVENT_BUS.register(RenderEventHandler.INSTANCE);
            Comme c’est un event client seulement, attention à bien le mettre dans une condition if(event.getSide().isClient()).

            Pour mettre le texte, il te suffit de faire RenderEventHandler.INSTANCE.setText(“exemple”); depuis ton paquet (où n’importe quelles autres classes)

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

              Salut, je te remercie du temps passé à me répondre, mais j’ai une petite question je ne comprend pas comme cela se fait que quand on execute /test et bien que le texte s’affiche au milieu de l’écran je regardais le code et j’ai pas trouvé.

              Aussi j’ai des erreurs au niveau: 
              [font=monospaceprivate] [font=monospaceMinecraft][font=monospace mc ][font=monospace=] [font=monospaceMinecraft][font=monospace.][font=monospacegetMinecraft]font=monospace;

              [font=monospaceIl m’affiche une erreur sur “mc”]

              [font=monospaceDésolé pour le dérangement ! :)]

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

                Tu ne peux pas passer un objet de type Minecraft en “private”

                Mes tutos :

                >! Un item mangeable
                [url=http://www.minecraftforgefranc…

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

                  Si on peut le mettre en private (comme nimporte quel objet en java), quel est l’erreur qu’eclipse te met ? L’as-tu bien importé ?

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

                    La partie du code que j’ai donné c’est juste pour le rendu.
                    Pour la commande /test il faut faire la commande en suivant le tutoriel que je t’ai envoyé.

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

                      @‘AymericRed’:

                      Si on peut le mettre en private (comme nimporte quel objet en java), quel est l’erreur qu’eclipse te met ? L’as-tu bien importé ?

                      Pas à tout les endroits

                      Mes tutos :

                      >! Un item mangeable
                      [url=http://www.minecraftforgefranc…

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

                        @MrCupCakeMonster:

                        Pas à tout les endroits

                        Ah bon, on ne peut pas toujours mettre de private dans les fields d’une classe ? Donnes moi en exemple s’il te plait 🙂

                        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

                          Peut-être fait-il référence aux fichiers .class de mc, et non à ses propres .java ?

                          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