Delay player data load by @SakurajiKanade

This commit is contained in:
PikaMug 2022-03-29 22:53:31 -04:00
parent d382da8a42
commit d38d09f482
2 changed files with 42 additions and 47 deletions

View File

@ -57,7 +57,6 @@ import org.bukkit.event.player.PlayerFishEvent.State;
import org.bukkit.event.player.PlayerInteractEntityEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
@ -854,15 +853,25 @@ public class PlayerListener implements Listener {
}
@EventHandler
public void onPlayerLogin(final PlayerLoginEvent evt) {
public void onPlayerJoin(final PlayerJoinEvent evt) {
final Player player = evt.getPlayer();
// Cannot check Quests#canUseQuests until PlayerJoinEvent
if (player.hasPermission("quests.admin.update")) {
new UpdateChecker(plugin, 3711).getVersion(version -> {
if (!plugin.getDescription().getVersion().split("-")[0].equalsIgnoreCase(version)) {
evt.getPlayer().sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Quests" + ChatColor.GRAY
+ "] " + ChatColor.GREEN + Lang.get(player, "updateTo").replace("<version>",
version).replace("<url>", ChatColor.DARK_AQUA + "" + ChatColor.UNDERLINE
+ plugin.getDescription().getWebsite()));
}
});
}
if (plugin.canUseQuests(player.getUniqueId())) {
final IQuester noobCheck = new Quester(plugin, player.getUniqueId());
if (plugin.getSettings().canGenFilesOnJoin() && !noobCheck.hasData()) {
noobCheck.saveData();
}
plugin.getServer().getScheduler().runTaskAsynchronously(plugin, () -> {
plugin.getServer().getScheduler().runTaskLaterAsynchronously(plugin, () -> {
final CompletableFuture<IQuester> cf = plugin.getStorage().loadQuester(player.getUniqueId());
try {
final IQuester quester = cf.get();
@ -895,21 +904,7 @@ public class PlayerListener implements Listener {
} catch (final Exception e) {
e.printStackTrace();
}
});
}
@EventHandler
public void onPlayerJoin(final PlayerJoinEvent evt) {
final Player player = evt.getPlayer();
if (player.hasPermission("quests.admin.update")) {
new UpdateChecker(plugin, 3711).getVersion(version -> {
if (!plugin.getDescription().getVersion().split("-")[0].equalsIgnoreCase(version)) {
evt.getPlayer().sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Quests" + ChatColor.GRAY
+ "] " + ChatColor.GREEN + Lang.get(player, "updateTo").replace("<version>",
version).replace("<url>", ChatColor.DARK_AQUA + "" + ChatColor.UNDERLINE
+ plugin.getDescription().getWebsite()));
}
});
}, 20L);
}
}

View File

@ -27,7 +27,7 @@
<module>v1_8_R3</module>
<module>core</module>
<module>dist</module>
<module>bungee</module>
<!--<module>bungee</module>-->
</modules>
<repositories>