• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Icone au dessus de la tête quand le chat est ouvert.

    Sans suite
    1.7.10
    2
    10
    1977
    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.
    • V
      Volrajh dernière édition par

      Bonsoir,
      Je souhaiterai faire un mod qui permettrai lorsque le joueur ouvre le tchat que un icone s’affiche au dessus de sa tête indiquant aux autres joueurs du serveur que ce joueur est en train d’écrire.

      J’imagine bien pour faire ça faut un événement qui se lance coté client quand le joueur ouvre son tchat que ça l’envoie au serveur qui va communiquer l’info autres joueurs. Ca c’est la théorie mais en pratique c’est possible avec un mod? Si oui, avez vous des conseils?

      Merci d’avance.

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

        Salut,
        Normalement ça devrait aussi fonctionner en pratique. Il faut essayer.
        Tu peux utiliser GuiOpenEvent et vérifier l’instance du gui ouvert.

        1 réponse Dernière réponse Répondre Citer 0
        • V
          Volrajh dernière édition par

          Merci de ce debut de piste ! Et sur la methode pour afficher un truc au dessus du joueur une idée?

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

            Il faut passer par RenderLivingEvent.Specials.Pre. C’est lui qui est appelé lors du rendu du pseudo au dessus du joueur.

            1 réponse Dernière réponse Répondre Citer 0
            • V
              Volrajh dernière édition par

              Coté, GuiOpenEvent pas de soucis. Par contre quand il s’agit de faire un affichage je coince vraiment car je comprend bien ce que fait le RenderLivingEvent.Specials.Pre. Soit un event qui dit que le joueur va avoir un changement dans l’affichage de son render. Je cherche et je bloque vraiment sur comment faire pour ce fameux affichage. Faut il changer tout le rendu du joueur ou pas?
              Avez vous des pistes?

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

                Je te conseil d’aller voir la fonction renderName de la classe RendererLivingEntity. C’est elle qui gère le pseudo au dessus du joueur / le nom custom des entités.
                C’est assez complexe car il faut faire le rendu en fonction de l’angle de la camera de l’utilisateur qui regarde.
                Enfin, toi tu as juste à prendre ce code et à remplacer l’affichage du texte par l’affichage d’un icône (avec les worldrenderer)

                1 réponse Dernière réponse Répondre Citer 0
                • V
                  Volrajh dernière édition par

                  Bonjour,

                  Je suis encore sur ce problème que j’ai du mal à réaliser, de ce fait, je me dis que poser quelques questions ne seraient pas inutiles.

                  Pour le GuiOpenEvent je le met uniquement côté client (donc dans le package client ?) et je lui dit d’envoyer un packet au serveur quand la barre de tchat s’ouvre. Le serveur enverrait ensuite cette info à tous les autres clients pour qu’ils updatent le rendu du joueur initialement emetteur.

                  Est-ce que jusque là, en théorie, je ne me suis pas trompé ?

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

                    C’est ça. Depuis le serveur il faut renvoyer un paquet à tous les clients proches.

                    1 réponse Dernière réponse Répondre Citer 0
                    • V
                      Volrajh dernière édition par

                      D’accord,

                      Mais j’ai un soucis avec le network, comment je peux faire pour envoyer d’un seul coup l’entityplayer et une autre variable (boolean, string, etc)?
                      Parce qu’il me faut l’entity pour actualiser son rendu, non ?
                      Par exemple sur ce channel :
                      network.registerMessage(MyMessage.Handler.class, MyMessage.class, 1, Side.CLIENT);

                      Sachant que j’utilise readUTF8String et writeUTF8String pour les méthodes fromBytes et toBytes.

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

                        En effet oui il faudrait l’instance de l’entité. Passes par l’id, c’est moins lourd qu’un string. Et tu peux mettre plusieurs variables à la suite dans les fonction toBytes et fromBytes (il faut juste qu’elles soient dans le même ordre dans les deux fonctions).

                        1 réponse Dernière réponse Répondre Citer 0
                        • 1 / 1
                        • Premier message
                          Dernier message
                        Design by Woryk
                        Contact / Mentions Légales

                        MINECRAFT FORGE FRANCE © 2018

                        Powered by NodeBB