Skip to content

Commit 31897a5

Browse files
committed
change data structure for player data + mysql support
1 parent ce15786 commit 31897a5

File tree

11 files changed

+500
-181
lines changed

11 files changed

+500
-181
lines changed

Plugin/pom.xml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<parent>
88
<groupId>de.Linus122.TimeIsMoney</groupId>
99
<artifactId>parent</artifactId>
10-
<version>1.9.6.22</version>
10+
<version>1.9.7</version>
1111
<relativePath>../pom.xml</relativePath>
1212
</parent>
1313

@@ -104,7 +104,13 @@
104104
<dependency>
105105
<groupId>de.Linus122.TimeIsMoney</groupId>
106106
<artifactId>Tools</artifactId>
107-
<version>1.9.6.22</version>
107+
<version>1.9.7</version>
108108
</dependency>
109-
</dependencies>
109+
<dependency>
110+
<groupId>org.jetbrains</groupId>
111+
<artifactId>annotations</artifactId>
112+
<version>RELEASE</version>
113+
<scope>compile</scope>
114+
</dependency>
115+
</dependencies>
110116
</project>
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package de.Linus122.TimeIsMoney;
2+
3+
import de.Linus122.TimeIsMoney.data.MySQLPluginData;
4+
import org.bukkit.event.EventHandler;
5+
import org.bukkit.event.Listener;
6+
import org.bukkit.event.player.PlayerJoinEvent;
7+
import org.bukkit.event.player.PlayerQuitEvent;
8+
9+
import java.sql.Date;
10+
import java.util.List;
11+
import java.util.logging.Level;
12+
13+
public class Listeners implements Listener {
14+
Main main;
15+
public Listeners(Main main) {
16+
this.main = main;
17+
}
18+
19+
@EventHandler
20+
public void onJoin(PlayerJoinEvent event){
21+
main.getPluginData().getPlayerData(event.getPlayer());
22+
23+
if(main.getPluginData() instanceof MySQLPluginData) {
24+
Date lastPlayed = new Date(event.getPlayer().getLastPlayed());
25+
26+
MySQLPluginData pluginData = (MySQLPluginData) main.getPluginData();
27+
List<Integer> pending = pluginData.getPendingPayouts(lastPlayed, event.getPlayer());
28+
29+
pending.forEach(k -> {
30+
System.out.println("paying user from pending payout: " + k);
31+
main.pay(event.getPlayer());
32+
});
33+
34+
}
35+
}
36+
@EventHandler
37+
public void onQuit(PlayerQuitEvent event) {
38+
if(main.getPluginData() instanceof MySQLPluginData) {
39+
((MySQLPluginData) main.getPluginData()).savePlayerData(event.getPlayer().getUniqueId(), main.getPluginData().getPlayerData(event.getPlayer()));
40+
41+
main.getLogger().log(Level.ALL, "Updated payout data for player " + event.getPlayer().getName() + " in MySQL");
42+
}
43+
}
44+
}

0 commit comments

Comments
 (0)