CrafterK3vin Geschrieben 17. Juni 2013 Share Geschrieben 17. Juni 2013 Hallo, ich hab gestern erfolgreich ein Scoreboard erstellt mit den Werten aus einer Config. Nun cist die Frage wie ich es programmiere das sich das Scoreboard automatisch updatet, also zbs jede Sekunde nach dem Wert schaut und wenn sich der Wert in der Config geändert hat, ändert er sich auch auf dem Scoreboard. Ich hoffe einer von euch weis das # Kevin Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Arkanus Geschrieben 17. Juni 2013 Share Geschrieben 17. Juni 2013 Lass nen neuen Thread laufen. Bei Bukkit wäre das BukkitRunnable: http://wiki.bukkit.org/Scheduler_Programming http://jd.bukkit.org/rb/doxygen/dir_c68fa78d363b341c525336a0920b06e7.html Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
CrafterK3vin Geschrieben 17. Juni 2013 Autor Share Geschrieben 17. Juni 2013 Das ist mir klar, aber wie genau? Kannste mir eve. per PN ne kleine Hilfe schicken? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Arkanus Geschrieben 17. Juni 2013 Share Geschrieben 17. Juni 2013 (bearbeitet) Ich mache das gerade mal hier, bevor noch ein anderer kommt und das wissen will Zuerst muss man eine Klasse erstellen, die "Runnable" implementiert: public class MyRunnable implements Runnable { @Override public void run() { }} Nun muss man diese Klasse nur noch beim Bukkit Scheduler registrieren. Das geht ganz einfach mit: plugin.getServer().getScheduler().scheduleSyncRepeatingTask(plugin, new MyRunnable(), 0, 20); Zu den Parametern: Dein Plugin Deine Klasse, die ausgeführt werden soll Die Verzögerung des Tasks Wie oft die Klasse aufgerufen werden soll (in Server Ticks, d.h. 20 = 1 Sekunde) In die "run"-Methode der MyRunnable Klasse kann man nun den Code eintragen, der wiederholt werden soll. public class MyRunnable implements Runnable { @Override public void run() { System.out.println("Ich wurde ausgeführt!"); }} bearbeitet 17. Juni 2013 von Salocin Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
CrafterK3vin Geschrieben 17. Juni 2013 Autor Share Geschrieben 17. Juni 2013 Das hätte ich auch gewusst, aber ich meine WIE RELOADE ICH NUR DAS SCOREBOARD, also das sich zbs die 200 auf 400 ändert. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Arkanus Geschrieben 17. Juni 2013 Share Geschrieben 17. Juni 2013 Da kenn ich mich nicht aus, versuch's mal mit objective.getScore(Bukkit.getOfflinePlayer("<Spielername>")).setScore(x); Wirf mal nen Blick in die API. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden