• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Spigot Hilfe bei Umstellung mit Packets

D

deleted191575

Guest
Hallo liebe Community, ich habe heute mal ein ganz anderes Problem als bei meinen vorheriegen, es ist zwar wieder ein Tablist Plugin aber es würde mich wie immer freuen wenn ihr mir Sachen erklären und auch eventuell beibringen könnt, wie schon bereits im Titel zu lesen ist möchte ich heute zusammen mit euch eine Lösung ür mein Vorhaben finden, es geht darum dass ich aktuell ein Scoreboard benutze um die Prefixe von den Spielern im Tab zu setzten, mein Problem ist jetzt, ich habe noch NIE mit Packets gearbeitet und ich glaube ich würde mich verrückt machen alleine bei dem Versuch. Viele von euch sagen jetzt bestimmt warum mach er es nicht einfach mit dem Scoreboard, es ist eine berechtigte Frage es ist leider so dass ich mit meinen anderen System ebenfalls schon Scoreboards benutze außerdem ist es eine nützlich Sache soetwas dementsprechen zu lernen, ich freue mich schon auf eure Ideen und Vorschläge weil ohne euch bin ich "aufgeschmissen", vielen Dank an euch alle schon einmal im voraus ;), Im Anhang sind natürlich Teile meines Codes um euch zu zeigen wie ich es gemacht habe und ich kann euch sagen so wie es jetzt im Moment ist funktioniert jeder Prefix.

Hier ist nun der Code der von Scoreboard in Packets editiert werden muss
Java:
// ich weiß hier steht deprecation wusste aber nicht wie anders :P
// Dieser Teil sind die Methoden die ich unten benutze.
@SuppressWarnings({ "deprecation" })
        private void setPrefix(String prefix, Player p) {
            String pr = prefix.replace("&", "§");
          
            Team team = board.getTeam(prefix);
            if (team == null) {
                team = board.registerNewTeam(prefix);
                team.setPrefix(pr);
            }
          
            team.addPlayer(p);
            p.setScoreboard(board);
            for(Player all : Bukkit.getOnlinePlayers()) {
                all.setScoreboard(board);
          
            }
        }
        
        private void updateScoreboard(Player p) {
            p.setScoreboard(board);
        }

//Hier sind nun 2 Prefix beispiele:

public static Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard();
    
    @EventHandler
    public void onJoin(PlayerJoinEvent e) {
        Player p = e.getPlayer();
        
        updateScoreboard(p);
        
        try { //zu dem Hier habe ich natürlich einen TRY CATCH Block gemacht um
            // eine StringIndexOutOfBound***ception kurz ex abzufangen
            if(p.hasPermission("system.inhaber")) {
                setPrefix("§4Inhaber §f│ §4".substring(0, Math.round(16)), p);
            } else if(p.hasPermission("system.administrator")) {
                setPrefix("§4Admin §f│ §4", p);
            //Hier geht es nun ewig weiter mit "} else if() {"
 
Oben