Improved performance
SaveDataTask is not used yet, cause it isn't already tested
This commit is contained in:
parent
d7f410a35c
commit
ce87947be0
@ -1,6 +1,6 @@
|
||||
name: levelSync
|
||||
main: fr.topeka.levelSync.Main
|
||||
version: 1.0-beta
|
||||
version: 1.1.1
|
||||
author: Topeka_
|
||||
description: levelSync - a Minecraft plugin which sync vanilla experience between servers
|
||||
website: https://github.com/sexiestchiba/levelSync
|
||||
|
@ -7,6 +7,7 @@ import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import fr.topeka.levelSync.listener.EventsListener;
|
||||
import fr.topeka.levelSync.sql.Sql;
|
||||
//import fr.topeka.levelSync.tasks.SaveDataTask;
|
||||
|
||||
/**
|
||||
*
|
||||
@ -28,6 +29,8 @@ public class Main extends JavaPlugin{
|
||||
this.getLogger().info("[levelSync] Plugin enabled");
|
||||
msg_syncError = getConfig().getString("message.syncError");
|
||||
msg_dbError = getConfig().getString("message.dbError");
|
||||
// SaveDataTask task = new SaveDataTask(this);
|
||||
// task.runTaskTimerAsynchronously(this, 6000, 3600);
|
||||
} catch (ClassNotFoundException | SQLException e) {
|
||||
e.printStackTrace();
|
||||
this.getLogger().warning("An error occured during loading, disabling plugin...");
|
||||
@ -40,4 +43,8 @@ public class Main extends JavaPlugin{
|
||||
_sql.closeConnection();
|
||||
this.getLogger().info("Plugin disabled");
|
||||
}
|
||||
|
||||
public Sql getSql() {
|
||||
return _sql;
|
||||
}
|
||||
}
|
||||
|
@ -24,13 +24,11 @@ public class EventsListener implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onJoin(PlayerJoinEvent event) {
|
||||
Player p = event.getPlayer();
|
||||
if(sql.checkConnection()) {
|
||||
Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if(p != null) {
|
||||
Player p = event.getPlayer();
|
||||
if(sql.checkConnection()) {
|
||||
if(p.isOnline()) {
|
||||
try {
|
||||
float[] values = sql.getPlayerLevel(p);
|
||||
@ -41,19 +39,16 @@ public class EventsListener implements Listener {
|
||||
p.sendMessage("[LevelSync] " + plugin.msg_syncError);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}, 20L);
|
||||
}else {
|
||||
p.sendMessage("[LevelSync] " + plugin.msg_syncError);
|
||||
}
|
||||
}
|
||||
}, 20L);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onQuit(PlayerQuitEvent event) {
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Player p = event.getPlayer();
|
||||
@ -67,9 +62,7 @@ public class EventsListener implements Listener {
|
||||
}else {
|
||||
p.sendMessage("[LevelSync] " + plugin.msg_dbError);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
|
35
src/fr/topeka/levelSync/tasks/SaveDataTask.java
Normal file
35
src/fr/topeka/levelSync/tasks/SaveDataTask.java
Normal file
@ -0,0 +1,35 @@
|
||||
package fr.topeka.levelSync.tasks;
|
||||
|
||||
import java.sql.SQLException;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
import fr.topeka.levelSync.Main;
|
||||
|
||||
public class SaveDataTask extends BukkitRunnable {
|
||||
|
||||
private Main main;
|
||||
|
||||
public SaveDataTask(Main main) {
|
||||
this.main = main;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
int n = 0;
|
||||
try {
|
||||
main.getLogger().info("[LevelSync] Starting saving data task");
|
||||
for(Player p : main.getServer().getOnlinePlayers()) {
|
||||
main.getSql().setPlayerLevel(p);
|
||||
n++;
|
||||
}
|
||||
main.getLogger().info("[LevelSync] saving data task done for " + n + " players");
|
||||
}catch(SQLException e) {
|
||||
main.getLogger().warning("[LevelSync] " + main.msg_syncError);
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user