Bonjour !
Tout est dans le titre. NAN je déconne !
Pardon....
Donc, je cherche à faire un plugin qui met le pseudo d'un joueur en une autre couleur dans le tchat que pour le joueur en question.
Ex : Si je met "Bonjour Dupont". Tous les joueurs verront le message "<AlexFatta> Bonjour Dupont". Mais ce que je cherche, c'est que pour le joueur Dupont, il voit son pseudo en une autre couleur. J'ai donc le code en java qui gère cette partie-ci. La où est mon problème, c'est que j'utilise un cancel event (voir code ci-joint) et donc le message s'affiche bien, en blanc pour tous le monde et en rose pour le joueur en question. Sauf que le message est sous le format suivant : "Bonjour Dupont" et plus "<AlexFatta> Bonjour Dupont". Le préfix et le nom du joueur ont disparu.
Ma question est donc la suivante : comment récupérer le prefix vanilla ou le prefix d'un plugin de perm et le mettre avant le message ?
Voilà merci à tous !
AlexFatta
Tout est dans le titre. NAN je déconne !

Donc, je cherche à faire un plugin qui met le pseudo d'un joueur en une autre couleur dans le tchat que pour le joueur en question.
Ex : Si je met "Bonjour Dupont". Tous les joueurs verront le message "<AlexFatta> Bonjour Dupont". Mais ce que je cherche, c'est que pour le joueur Dupont, il voit son pseudo en une autre couleur. J'ai donc le code en java qui gère cette partie-ci. La où est mon problème, c'est que j'utilise un cancel event (voir code ci-joint) et donc le message s'affiche bien, en blanc pour tous le monde et en rose pour le joueur en question. Sauf que le message est sous le format suivant : "Bonjour Dupont" et plus "<AlexFatta> Bonjour Dupont". Le préfix et le nom du joueur ont disparu.
Ma question est donc la suivante : comment récupérer le prefix vanilla ou le prefix d'un plugin de perm et le mettre avant le message ?

Voilà merci à tous !

AlexFatta
Code:
package fr.alexfatta.pseudodisplay.listeners;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Instrument;
import org.bukkit.Note;
import org.bukkit.Note.Tone;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.AsyncPlayerChatEvent;
public class PlayerChatListener implements Listener {
@EventHandler (priority=EventPriority.LOWEST)
public void onChat (AsyncPlayerChatEvent event) {
String message = event.getMessage();
Player sender = event.getPlayer();
event.setCancelled(true);
for (Player op : Bukkit.getServer().getOnlinePlayers()) {
if (message.contains(op.getName())) {
String newMessage = message.replaceAll(op.getName(), ChatColor.LIGHT_PURPLE + op.getName() + ChatColor.WHITE);
op.sendMessage(newMessage);
op.playNote(op.getLocation(), Instrument.PIANO, Note.natural(1, Tone.A));
} else {
op.sendMessage(message);
}
}
}
}