• 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!

Scoreboard aktualisieren

WlanGehtNicht

Schafhirte
Registriert
30 Mai 2017
Beiträge
105
Diamanten
312
Hey,
bei meinem Scoreboard Plugin habe ich auch ein Scoreboard. Das aktualisiert sich aber erst, wenn jemand den Server betritt oder den Server verlässt.
Ich möchte aber, dass es sich nach ein paar Sekunden aktualisiert. Wie mache ich das?

Code:
package de.wlangehtnicht.skypvp.listener;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.ScoreboardManager;

import de.wlangehtnicht.coinapi.listener.Coins;
import de.wlangehtnicht.skypvp.main.Main;

public class Event_Scoreboard implements Listener {
   
    private Main pl;
   
    public Event_Scoreboard(Main main) {
        this.pl = main;
    }

    public void setScoreboard(Player p) {
        ScoreboardManager sm = Bukkit.getScoreboardManager();
        final Scoreboard board = sm.getNewScoreboard();
        final Objective o = board.registerNewObjective("test", "dummy");
       
        o.setDisplaySlot(DisplaySlot.SIDEBAR);
        o.setDisplayName("§8> §4SkyPvP §8<");
        o.getScore("§b ").setScore(6);
        o.getScore("§cOnline: ").setScore(5);
        o.getScore("§7" + Bukkit.getOnlinePlayers().size() + "/" + Bukkit.getMaxPlayers()).setScore(4);
        o.getScore("§c ").setScore(3);
        o.getScore("§cCoins: ").setScore(2);
        o.getScore("§7 " + Coins.get(p.getUniqueId())).setScore(1);
       
       
        p.setScoreboard(board);
    }
   
    @EventHandler
    public void onJoin(PlayerJoinEvent e) {
        new BukkitRunnable() {
           
            @Override
            public void run() {
                for(Player all : Bukkit.getOnlinePlayers()) {
                    setScoreboard(all);
                }
               
            }
        }.runTaskLater(this.pl, 1);
    }
   
    @EventHandler
    public void onQuit(PlayerQuitEvent e) {
       
        new BukkitRunnable() {
           
            @Override
            public void run() {
                for(Player all : Bukkit.getOnlinePlayers()) {
                    setScoreboard(all);
                }
               
            }
        }.runTaskLater(this.pl, 1);
       
    }
   

}
 
Oben