Mon paquet sendToServer ne fonctionne pas!



  • Bonjour,
    je viens faire appel a vous car j'ai un soucis avec les paquets! 😞

    Je vous explique.
    J'ai bien lu le tutoriel de Blackout et je crois que je commence à comprendre plus ou moins comment ça fonctionne !
    Mais là, je cale! Sur mon ancien topic, blackout m'avait expliqué les étapes pour pouvoir faire correctement le packet qui me permet de récupérer le contenu d'un .txt qui se trouve dans le dossier plugin de mon serveur.
    Mais un moment, il me dit ceci :

    Lorsque tu cliques sur le bouton "Voir le casier de", tu envoie un paquet au serveur avec le nom du joueur concerné.

    Donc, dans mon code, lorsqu'il clique sur le bouton, ca execute cette action :

     String namePlayer = TextField.getText();  
     GuiAdminMod.network.sendToServer(namePlayer);;
    

    Mais le "SendToServer" se souligne en rouge et me dit que je dois convertir namePlayer en IMessage. Mais dans ce cas, je ne peux récupérer le contenu de ce qui se trouve dans le textField.

    Donc, je ne sais pas ce que je dois faire pour pouvoir envoyer le nom du joueur… 😞

    Voici mon enregistrement du packet:

    ​network.registerMessage(MyMessage.Handler.class, MyMessage.class, 0, Side.SERVER);
    

    Et mes classes MyMessage et Handler:

    ​public class MyMessage implements IMessage {
    
        private String text;
    
        public MyMessage() { }
    
        public MyMessage(String text) {
        this.text = text;
        }
    
            @Override
            public void fromBytes(ByteBuf buf) {
            text = ByteBufUtils.readUTF8String(buf);
            }
    
            @Override
            public void toBytes(ByteBuf buf) {
            ByteBufUtils.writeUTF8String(buf, text);
            }
    
    public static class Handler implements IMessageHandler <mymessage, imessage="">{
    
            @Override
            public IMessage onMessage(MyMessage message, MessageContext ctx) {
            return null;
            }
        }    
    }
    

    Tant que j'y suis, j'en profite egalement pour poser cette question:
    Blackout avait également dit:

    Le serveur reçoit le paquet et envoie a son tour un paquet qui contient le contenu du fichier txt que tu souhaite affiché.

    Comment faire pour que le packet aille chercher dans mon dossier plugin/casierDesJoueurs/ mon fichier nomdujoueur.txt ?

    Merci d'avance pour vos réponses et merci a BlackOut pour son tutoriel sur les packets! 🙂

    Cordialement,
    RageAgain</mymessage,>





  • NIIICEEE! Il a fait son tuto! 😄 J'avais même pas vu!


  • Moddeurs confirmés Rédacteurs Administrateurs

    Normalement ça devrait être GuiAdminMod.network.sendToServer(new MyMessage(namePlayer));


Log in to reply