Minecraft Chat "< >" entfernen?
Ich Programmiere Plugins für einen Minecraft Server. Derzeit bin ich an einem Tablist + Chat Prefix Plugin dran. Ich bin komplett fertig mit dem Plugin nur das einzigste was mich stört sind diese Pfeile "< >" vor und nach dem Minecraft Name. Kann man das entfernen OHNE ein Plugin zu installieren, bzw wie kann ich das selber in mein Plugin rein Programmieren? Denn ich brauche das für meine Erfahrung :)
LG ~ Flugzahn
3 Antworten
Hier das gewünschte Beispiel:
// onEnable()
getServer().getPluginManager().registerEvents(new ChatListener(), this);
// ChatListener
public class ChatListener implements Listener {
@EventHandler
public void onPlayerJoin(AsyncPlayerChatEvent event) {
// Erster String Parameter ist player.getDisplayName(), zweiter event.getMessage()
// Verwendung der Parameter ist nicht nötig
event.setFormat("%s: %s"); // -> "Spieler: Nachricht"
}
}
Snippet mit korrekter Formatierung auf allen Geräten: https://git.schwaerzle.net/snippets/1
Hey erstmal,
Ich würde es mit dem AsyncPlayerChatEvent machen.
(Das Format ist ein Beispiel)
Dort müsstest du dann "event.setFormat(" %s says %s")" eintragen. Dann entsteht "McPlayer123 says Hello". Das erste %s steht für den Namen das zweite für die Nachricht.
Liebe Grüße,
Phil.
Hallo nochmal, Ich habe dir Mal ein Beispiel geschrieben. Du findest es hier: https://gist.github.com/ceoklp/ff702cca62e3c10030936ef38b278002 Liebe Grüße, Phil.
Ich kenne mich leider nicht mit Events aus, außer so ein kleines Basic wissen davon. Hättest du ein Sourcecode, den du mir mal per ein Screenshoot geben kannst? Dann könnte ich mir das mal anschauen.
Hallo erstmal,
ich weiß nicht ob das die optimale/sinnvollste möglichkeit ist.
Mein vorgehen wäre
ChatEvent -> canceln -> Nachricht per sendMessage wieder ausgeben eben ohne < >
Ich bin offen für korrekturen
Hoffe ich konnte helfen.
Dankeschön. Was bedeutet dieses AsyncPlayerHatEvent eigentlich? Ich implementiere mir das irgendwie so, das das ein Kopf Event ist wegen dem „Hat“.
& wie registriere ich das Event?
Ps. Vielen Dank für die schnellen & hilfreichen Antworten
LG ~ Flugzahn
Ich kenne mich leider nicht mit Events aus, außer so ein kleines Basic wissen davon. Hättest du ein Sourcecode, den du mir mal per ein Screenshoot geben kannst? Dann könnte ich mir das mal anschauen.
@Eventhandler
public void onChat(AsyncPlayerHatEvent e){
Player p = e.getPlayer();
e.setCancelled(true);
String msg = e.getMessage;
if(p.hasPermission("chat.admin")){
e.setFormat("Admin | “ + p.getName() + „ „ + msg);
}
}
PS: ist am Handy geschrieben