Nieaktywny Opublikowano 20 sierpnia 2017 Udostępnij Opublikowano 20 sierpnia 2017 (edytowane) Proste API do zarządzania taskami dla Bukkit, Sponge i BungeeCord za pośrednictwem adnotacji. Przykład: import org.apache.commons.lang3.Validate; import org.bukkit.plugin.java.JavaPlugin; import pl.kacperduras.tasket.TaskContainer; import pl.kacperduras.tasket.Tasket; import pl.kacperduras.tasket.annotation.Task; import pl.kacperduras.tasket.annotation.Timer; import pl.kacperduras.tasket.bukkit.BukkitTasket; public final class TasketExampleBukkit extends JavaPlugin { private Tasket tasket; @Override public void onLoad() { tasket = new BukkitTasket(this); tasket.loadTasks(new Tasks(this)); tasket.getTask("taskTimerLaterAsync").ifPresent(taskContainer -> taskContainer.start(tasket)); } private class Tasks { private final TasketExampleBukkit plugin; public Tasks(TasketExampleBukkit plugin) { Validate.notNull(plugin); this.plugin = plugin; } @Task(id = "taskTimerAsync", timer = @Timer(period = 20), async = true) // wszystkie timerTask'i, ktore nie sa later'ami, uruchamiaja sie domyslnie zaraz po zalaczeniu przez Tasketa public void taskTimerAsync() { plugin.getServer().broadcastMessage("Task asynchroniczy co 20 tickow!"); } @Task(id = "taskTimerLaterAsync", timer = @Timer(period = 100, later = true), async = true) // tego trzeba uruchomic manualnie public void taskTimerLaterAsync(Tasket tasket) { tasket.getTask("taskTimerAsync").ifPresent(TaskContainer::stop); tasket.getTask("taskAsync").ifPresent(taskContainer -> taskContainer.start("test")); } @Task(id = "taskAsync", async = true) // tego tez public void taskAsync(String string) { plugin.getServer().broadcastMessage(string); } @Task(id = "taskSync") // i tego public void taskSync() { plugin.getServer().broadcastMessage("sync"); } } } Maven i kod znajdują się w repozytorium GitHub'a (gwiazdka mile widziana!). Miłego używania. Została wydana aktualizacja 1.1.0 ze wsparciem pod BungeeCord'a. Dodałem także również wiki, która objaśnia jak używać libki step-to-step. Wszystkie linki znajdują się w repo. Edytowane 20 sierpnia 2017 przez Nieaktywny Cytuj Odnośnik do komentarza https://skript.pl/temat/20961-tasket-proste-i-szybkie-zarz%C4%85dzanie-taskami-dla-bukkit-sponge-i-bungeecord/ Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.