Bonjour à tous, je viens simplement proposer un meilleur système de log (j'éditerais pour ajouter + peut être plus tard, je fais petit à petit).
Je propose simplement une meilleure insertion par l'utilisation de Appends et une coloration optionnel du texte. En gros, si vous utilisez le système de log ici ça continuera de marcher parfaitement. Seulement il faudra modifier partout où vous voulez de la couleur en ajoutant ", Color.Red" par exemple :)
private void Log(string Text, Color Couleur = default) {
if (Couleur.IsEmpty) // Si aucune couleur choisis alors on prend noir
Couleur = Color.Black;
Action log_callback = (Action)delegate {
txt_log.AppendText(Text + "\n"); // Ajout du texte avec un saut à la ligne en fin.
txt_log.Select(txt_log.Text.Length - 1 - Text.Length, Text.Length); // Si oui, on sélectionne le texte ajouté.
txt_log.SelectionColor = Couleur; // On lui attribu alors la couleur.
txt_log.Select(txt_log.Text.Length, 0); // On place le curseur à la fin de la zone de texte.
txt_log.ScrollToCaret(); // On descend la barre de défilement jusqu'au curseur.
};
Invoke(log_callback); // On invoke pour l'inter-thread.
}
Edit:
Après un test ça ne marcher pas la lecture du packet n°3.
Aujourd'hui ça fait:
writeUTF
writeVarInt
writeByte (autant de fois que le chiffre reçu par le VarInt).
J'ai essayer de lire un int et pas un byte pour le VarInt, c'est trompeur :/
Le nouveau donnerait cela: (Je ne suis pas sûr, mais du moins j'ai pas d'erreurs perso ^^)
case 3:
string Salt = reader.ReadString();
int sizeKey = reader.ReadByte();
byte[] key = new byte[sizeKey];
for (int i = 0; i < sizeKey; i++) {
key = reader.ReadByte();
}
Je pense pas continuer à edit, mais je vais un peu continuer à chercher. En tout cas tes fonctions pour lire/écrire les packets sont un gain de temps phénoménale ! Même si c'est pas un truc "super fou", c'est bien architecturer et organiser, de ce faite on s'y retrouver facilement.
Je penses que même des débutants arriverait facile à débuter, mais il faut plus de connaissance qu'une base pour aller plus loin évidemment.
Je vais essayer de continuer seul pour gérer les différences :) merci encore.
Sa date de 2011 mais toujours utile ;)