LoupGarou icon indicating copy to clipboard operation
LoupGarou copied to clipboard

Ajout d'un système de surnom

Open Nicooow opened this issue 4 years ago • 1 comments

  • Ajout d'une commande /lg nick [pseudo_minecraft] [surnom] permettant de choisir un surnom pour le joueur
  • Ajout d'une commande /lg unnick [pseudo_minecraft] pour supprimer un surnom d'un joueur
  • Ajout d'un fichier nick.yml qui sauvegarde les surnoms des joueurs

Ces ajouts sont pratiques pour jouer entre amis, afin de distinguer les joueurs quand on ne connait pas leur pseudo minecraft. Le fichier de sauvegarde est présent car sinon à chaque reload ou fin de partie, les surnoms se réinitialisaient.

Un seul problème corrigé temporairement dans le dernier commit, c'est qui si j'ajoute le surnom aussi dans le tab, les skins loup garou s'affichent pour toutes les personnes se réveillant la nuit. Le problème étant le même pour le nom au dessus des joueurs, j'ai opté pour la solution d'utiliser le suffix de la team du joueur, ainsi quand il a un surnom, il est affiché tel quel au dessus de sa tête : Pseudo_minecraft Surnom

Cet ajout a été testé plusieurs fois entre amis et le résultat est présent, comme tout le monde ne se connaissait pas, ceci permet une meilleur communication et visuel du jeu.

PS : désolé les commits sont plutôt sales, mais le code est lui propre

Nicooow avatar Apr 12 '20 22:04 Nicooow

J'ai testé, ça marche très bien 👍


J'ai quand même deux suggestions à faire que j'ai implémenté dans ce commit sur mon fork: https://github.com/TheOptimisticFactory/LoupGarou/commit/9cbb73935532cacab8787cc4586a64e42b65958e

  1. rajouter la possibilité d'avoir des surnoms contenant des espaces
// Remplacer les occurences de args[2] à partir de la L414 par "nickname" ET en autorisant (args.length >= 3)
final ArrayList<String> nicknameTokens = new ArrayList<String>();
for (int index = 2; index < args.length; index++) nicknameTokens.add(args[index]);
final String nickname = String.join(" ", nicknameTokens);
  1. Mettre les pseudos en couleur
// Remplacer L222 par:
team.setSuffix(WrappedChatComponent.fromText("§8 => §b" + lgp.getName()));

Le résultat en images javaw_Nk1NdY7KXw

image

image

TheOptimisticFactory avatar Apr 18 '20 23:04 TheOptimisticFactory