44 lines
1.5 KiB
Java
44 lines
1.5 KiB
Java
package com.alttd.events;
|
|
|
|
import com.alttd.GUI.GUI;
|
|
import com.alttd.VillagerUI;
|
|
import com.alttd.config.Config;
|
|
import com.alttd.objects.EconUser;
|
|
import com.alttd.util.Logger;
|
|
import com.google.common.io.ByteArrayDataOutput;
|
|
import com.google.common.io.ByteStreams;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.event.player.PlayerQuitEvent;
|
|
import org.bukkit.scheduler.BukkitRunnable;
|
|
|
|
import java.util.UUID;
|
|
|
|
public class LogoutEvent implements Listener {
|
|
@EventHandler
|
|
public void onPlayerQuit(PlayerQuitEvent event) {
|
|
UUID uuid = event.getPlayer().getUniqueId();
|
|
|
|
new BukkitRunnable() {
|
|
@Override
|
|
public void run() {
|
|
if (Config.DEBUG)
|
|
Logger.info("Syncing %", event.getPlayer().getName());
|
|
GUI.GUIByUUID.remove(uuid);
|
|
EconUser user = EconUser.getUser(uuid);
|
|
if (user != null) {
|
|
user.syncPoints();
|
|
EconUser.removeUser(uuid);
|
|
}
|
|
ByteArrayDataOutput out = ByteStreams.newDataOutput();
|
|
out.writeUTF("try-unlock");
|
|
out.writeUTF(uuid.toString());
|
|
Bukkit.getServer().sendPluginMessage(VillagerUI.getInstance(),
|
|
"villagerui:player-data",
|
|
out.toByteArray());
|
|
}
|
|
}.runTaskAsynchronously(VillagerUI.getInstance());
|
|
}
|
|
}
|