Listeners.java 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package de.Linus122.TimeIsMoney;
  2. import de.Linus122.TimeIsMoney.data.MySQLPluginData;
  3. import org.bukkit.event.EventHandler;
  4. import org.bukkit.event.Listener;
  5. import org.bukkit.event.player.PlayerJoinEvent;
  6. import org.bukkit.event.player.PlayerQuitEvent;
  7. import java.sql.Date;
  8. import java.util.List;
  9. import java.util.logging.Level;
  10. public class Listeners implements Listener {
  11. Main main;
  12. public Listeners(Main main) {
  13. this.main = main;
  14. }
  15. @EventHandler
  16. public void onJoin(PlayerJoinEvent event){
  17. main.getPluginData().getPlayerData(event.getPlayer());
  18. if(main.getPluginData() instanceof MySQLPluginData) {
  19. Date lastPlayed = new Date(event.getPlayer().getLastPlayed());
  20. MySQLPluginData pluginData = (MySQLPluginData) main.getPluginData();
  21. List<Integer> pending = pluginData.getPendingPayouts(lastPlayed, event.getPlayer());
  22. pending.forEach(k -> {
  23. System.out.println("paying user from pending payout: " + k);
  24. main.pay(event.getPlayer());
  25. });
  26. }
  27. }
  28. @EventHandler
  29. public void onQuit(PlayerQuitEvent event) {
  30. if(main.getPluginData() instanceof MySQLPluginData) {
  31. ((MySQLPluginData) main.getPluginData()).savePlayerData(event.getPlayer().getUniqueId(), main.getPluginData().getPlayerData(event.getPlayer()));
  32. main.getLogger().log(Level.ALL, "Updated payout data for player " + event.getPlayer().getName() + " in MySQL");
  33. }
  34. }
  35. }