@EventHandler public void onPlayerPreLogin(final AsyncPlayerPreLoginEvent event) { getUserSubjects().get(event.getUniqueId().toString()).exceptionally(e -> { logger.warn(t("Error while loading data for user %s/%s during prelogin: %s", event.getName(), event.getUniqueId().toString(), e.getMessage()), e); return null; }); }
@EventHandler(priority = EventPriority.HIGHEST) public void playerPreLogin(AsyncPlayerPreLoginEvent event) { // if player was kicked, don't load the data if (event.getLoginResult() != Result.ALLOWED) { return; } String playerID = event.getUniqueId().toString(); BetonQuest plugin = BetonQuest.getInstance(); plugin.putPlayerData(playerID, new PlayerData(playerID)); }
@EventHandler(priority = EventPriority.HIGHEST) public void handle0(AsyncPlayerPreLoginEvent e) { for (Player all : Bukkit.getOnlinePlayers()) if (all.getUniqueId().equals(e.getUniqueId())) { e.disallow(AsyncPlayerPreLoginEvent.Result.KICK_BANNED, ChatColor.translateAlternateColorCodes('&', CloudAPI.getInstance().getCloudNetwork().getMessages().getString("server-kick-proxy-disallow"))); return; } CloudServer.getInstance().getPlayerAndCache(e.getUniqueId()); }
/** * Ensure a PlayerData instance exists for later use. * * @param event */ private void onAsyncPlayerPreLogin(final AsyncPlayerPreLoginEvent event) { final UUID playerId = event.getUniqueId(); // Treat carefully :). if (playerData.containsKey(playerId)) { // Skip if a PlayerData instance already exists. return; } else { // Create with default world data. getPlayerData(playerId, event.getName(), true, worldDataManager.getDefaultWorldData()).addTag(PlayerData.TAG_OPTIMISTIC_CREATE); } }
@EventHandler(priority = EventPriority.HIGHEST) public void onPreLogin(AsyncPlayerPreLoginEvent preLoginEvent) { if (preLoginEvent.getLoginResult() != Result.ALLOWED) { //in this event isCancelled option in the annotation doesn't work return; } UUID playerUuid = preLoginEvent.getUniqueId(); String playerName = preLoginEvent.getName(); UserPreference preferences = core.getStorage().getPreferences(playerUuid); if (preferences == null) { return; } plugin.startSession(playerUuid, preferences); Optional<SkinModel> optSkin = preferences.getTargetSkin(); if (optSkin.isPresent()) { SkinModel targetSkin = optSkin.get(); if (!preferences.isKeepSkin()) { targetSkin = core.checkAutoUpdate(targetSkin); } preferences.setTargetSkin(targetSkin); save(preferences); } else if (core.getConfig().getBoolean("restoreSkins")) { refetchSkin(playerName, preferences); } if (!preferences.getTargetSkin().isPresent()) { getRandomSkin().ifPresent(preferences::setTargetSkin); } }
.filter(e -> this.ensureJoinedViaQueue) .handler(e -> { Response response = this.expectedPlayers.remove(e.getUniqueId()); if (response == null || !response.isAllowed()) { e.disallow(AsyncPlayerPreLoginEvent.Result.KICK_WHITELIST, Text.colorize("&cSorry! The server is unable to process your login at this time. (queue error)"));