2017-01-11 2 views
0

Ich habe nicht ein lauffähiges Bukkit hinzugefügt, weil es überhaupt nicht funktioniert hat. Deshalb habe ich den Scoreboard-Code hinzugefügt. Keine Ahnung, wie ich die Anzeigetafel aktualisieren kann. IGNORE IGNORE IGNORE IGNORE IGNORE IGNORE IGNOREAktualisieren einer Anzeigetafel mit einem Scheduler

ANZEIGER Code:

public void makeScoreboard() { 
    if(this.getConfig().getBoolean("Scoreboard") == true) { 
    board = Bukkit.getScoreboardManager().getNewScoreboard(); 

    Date now = new Date(); 
    SimpleDateFormat date = new SimpleDateFormat("dd/MM/yyyy"); 

    Objective objective = board.registerNewObjective("Test", "Test2"); 
    objective.setDisplayName(ChatColor.AQUA + "§aMazeRunner §8┃ §c" + StartCountdown.timeUntilStart); 
    objective.setDisplaySlot(DisplaySlot.SIDEBAR); 

    team = board.registerNewTeam("Team"); 
    team.setPrefix(""); 

    Score score2 = objective.getScore(ChatColor.GOLD + "§6§l» Time"); 
    score2.setScore(8); 

    Score score3 = objective.getScore(ChatColor.GOLD + "§f" + date.format(now)); 
    score3.setScore(7); 

    Score score4 = objective.getScore(ChatColor.RED + " "); 
    score4.setScore(6); 

    Score score5 = objective.getScore(ChatColor.GOLD + "§6§l» Server"); 
    score5.setScore(5); 

    Score score6 = objective.getScore(ChatColor.GOLD + "§3EU§8: §f2266"); 
    score6.setScore(4); 

    Score score7 = objective.getScore(ChatColor.RED + " "); 
    score7.setScore(3); 

    Score score8 = objective.getScore(ChatColor.GOLD + "§6§l» Teams"); 
    score8.setScore(2); 

    Score score9 = objective.getScore(ChatColor.GOLD + "§fHumans: 2"); 
    score9.setScore(1); 

    Score score10 = objective.getScore(ChatColor.GOLD + "§fGrievers: 0"); 
    score10.setScore(0); 
    } 
    else{ 

    } 

} 
+0

Können Sie complete der ScoreBoard-Klassendatei zu Ihrer Frage hinzufügen –

+0

Hier haben Sie es: – InfernoArtz

+0

Dies ist nicht alle Ihre Codes. Ich meine, wie dieser Link https://gist.github.com/amhokies/7309869 –

Antwort

0

in Führung bearbeiten Sie ein scheduler verwenden können.

Dies wird mit einer anfänglichen Verzögerung von 0 Sekunden ausgeführt und wiederholt sich alle 20 Ticks = 1 Sekunde.

„Plugin“ ist ein Verweis auf Ihre Klasse, die JavaPlugin erstreckt, können Sie eine Instanz der Klasse erhalten den Konstruktor für den Fall, indem Sie den Code irgendwo anders ausgeführt werden, zB

private Plugin pl; 

public SampleListener(Plugin pl) { 

    this.pl = pl; 

} 

und dann passieren " pl "zum Scheduler.

+1

Aber wie und wo bekomme ich den score1.setScore usw. von? – InfernoArtz

+0

Anstatt sie innerhalb einer Methode zu definieren, könnten Sie sie als privat deklarieren. Verwenden Sie außerdem eine for-Schleife, um mehrere Objekte desselben Typs zu erstellen. – AscendedKitten

Verwandte Themen