@Override public boolean isConnected() { return offplayer.isOnline(); } @Override
@Override public boolean isOnline() { return offplayer.isOnline(); } @Override
@Override public boolean isOnline() { return op.isOnline(); }
@Override public boolean isOnline(String name) { return Bukkit.getOfflinePlayer(name).isOnline(); }
/** * Remove transient permission from a player. * This implementation can be used by any subclass which implements a "pure" superperms plugin, i.e. * one that only needs the built-in Bukkit API to remove transient permissions from a player. Any subclass * implementing a plugin which provides its own API for this needs to override this method. * * @param player OfflinePlayer * @param permission Permission node * @return Success or Failure */ public boolean playerRemoveTransient(OfflinePlayer player, String permission) { if (player.isOnline()) { return playerRemoveTransient((Player) player, permission); } else { return false; } }
public static boolean isOffline(CommandSender sender, OfflinePlayer player) { if (player.isOnline()) { return false; } sender.sendMessage(LocaleLoader.getString("Commands.Offline")); return true; }
@Override public void sendMessage(String message) { if (accountHolder.isOnline()) { accountHolder.getPlayer().sendMessage(message); } }
/** * Add transient permission to a player. * This implementation can be used by any subclass which implements a "pure" superperms plugin, i.e. * one that only needs the built-in Bukkit API to add transient permissions to a player. * * @param player to add to * @param permission Permission node * @return Success or Failure */ public boolean playerAddTransient(OfflinePlayer player, String permission) throws UnsupportedOperationException { if (player.isOnline()) { return playerAddTransient((Player) player, permission); } throw new UnsupportedOperationException(getName() + " does not support offline player transient permissions!"); }
/** * called when a placeholder value is requested from this hook * * @param p {@link OfflinePlayer} to request the placeholder value for, null if not needed for a * player * @param params String passed to the hook to determine what value to return * @return value for the requested player and params */ public String onRequest(OfflinePlayer p, String params) { if (p != null && p.isOnline()) { return onPlaceholderRequest((Player) p, params); } return onPlaceholderRequest(null, params); }
/** * Get the max size vault a player is allowed to have. * * @param player that is having his permissions checked. * @return max size as integer. If no max size is set then it will default to 54. */ public static int getMaxVaultSize(OfflinePlayer player) { if (player == null || !player.isOnline()) { return 54; } for (int i = 6; i != 0; i--) { if (player.getPlayer().hasPermission("playervaults.size." + i)) { return i * 9; } } return 54; }
@Override public void run() { HashMap<OfflinePlayer, Party> toRemove = new HashMap<OfflinePlayer, Party>(); List<UUID> processedPlayers = new ArrayList<UUID>(); long currentTime = System.currentTimeMillis(); for (Party party : PartyManager.getParties()) { for (UUID memberUniqueId : party.getMembers().keySet()) { OfflinePlayer member = mcMMO.p.getServer().getOfflinePlayer(memberUniqueId); boolean isProcessed = processedPlayers.contains(memberUniqueId); if ((!member.isOnline() && (currentTime - member.getLastPlayed() > KICK_TIME)) || isProcessed) { toRemove.put(member, party); } if (!isProcessed) { processedPlayers.add(memberUniqueId); } } } for (Entry<OfflinePlayer, Party> entry : toRemove.entrySet()) { PartyManager.removeFromParty(entry.getKey(), entry.getValue()); } } }
public String getIp(OfflinePlayer player) { if (player.isOnline()) { return Ips.getIp(player.getPlayer()); } final PlayerData entry = getData(player.getName()); return (entry == null ? null : entry.getIps().iterator().next()); }
static String lookupPlayerName(UUID playerID) { //parameter validation if(playerID == null) return "somebody"; //check the cache OfflinePlayer player = GriefPrevention.instance.getServer().getOfflinePlayer(playerID); if(player.hasPlayedBefore() || player.isOnline()) { return player.getName(); } else { return "someone(" + playerID.toString() + ")"; } }
/** * Remove a player from a party. * * @param player The player to remove * @param party The party */ public static void removeFromParty(OfflinePlayer player, Party party) { LinkedHashMap<UUID, String> members = party.getMembers(); String playerName = player.getName(); members.remove(player.getUniqueId()); if (player.isOnline()) { party.getOnlineMembers().remove(player.getPlayer()); } if (members.isEmpty()) { parties.remove(party); } else { // If the leaving player was the party leader, appoint a new leader from the party members if (party.getLeader().getUniqueId().equals(player.getUniqueId())) { setPartyLeader(members.keySet().iterator().next(), party); } informPartyMembersQuit(party, playerName); } }
/** * 获取玩家数据 * * @param player * @return */ public static FileConfiguration getPlayerData(OfflinePlayer player) { if (!player.isOnline()) { return null; } if (getUsernameType() == UsernameType.UUID) { return getPlayerData(player.getUniqueId().toString(), false); } else { return getPlayerData(player.getName(), false); } }
void setIgnoreStatus(OfflinePlayer ignorer, OfflinePlayer ignoree, IgnoreMode mode) { PlayerData playerData = this.dataStore.getPlayerData(ignorer.getUniqueId()); if(mode == IgnoreMode.None) { playerData.ignoredPlayers.remove(ignoree.getUniqueId()); } else { playerData.ignoredPlayers.put(ignoree.getUniqueId(), mode == IgnoreMode.StandardIgnore ? false : true); } playerData.ignoreListChanged = true; if(!ignorer.isOnline()) { this.dataStore.savePlayerData(ignorer.getUniqueId(), playerData); this.dataStore.clearCachedPlayerData(ignorer.getUniqueId()); } }
@Override public boolean playerHas(String world, String player, String permission) { OfflinePlayer op = Bukkit.getOfflinePlayer(player); if (op.isOnline()) { Player p = (Player) op; if (p.getWorld().getName().equalsIgnoreCase(world)) { return p.hasPermission(permission); } } GroupSet set = perms.getGroupManager().getWorldSet(Bukkit.getWorld(world)); Group user = set.getUser(op); return user.hasPermission(permission, true); }
/** * Initialize this serializable offline player from another player. * @param offline - another player. */ public SerializedOfflinePlayer(OfflinePlayer offline) { this.name = offline.getName(); this.uuid = offline.getUniqueId(); this.firstPlayed = offline.getFirstPlayed(); this.lastPlayed = offline.getLastPlayed(); this.operator = offline.isOp(); this.banned = offline.isBanned(); this.playedBefore = offline.hasPlayedBefore(); this.online = offline.isOnline(); this.whitelisted = offline.isWhitelisted(); }
@Override public void run() { //get the data PlayerData ownerData = GriefPrevention.instance.dataStore.getPlayerDataFromStorage(claim.ownerID); OfflinePlayer ownerInfo = Bukkit.getServer().getOfflinePlayer(claim.ownerID); //expiration code uses last logout timestamp to decide whether to expire claims //don't expire claims for online players if(ownerInfo.isOnline()) return; GriefPrevention.AddLogEntry("Looking for expired claims. Checking data for " + claim.ownerID.toString(), CustomLogEntryTypes.Debug, true); //skip claims belonging to exempted players based on block totals in config int bonusBlocks = ownerData.getBonusClaimBlocks(); if(bonusBlocks >= GriefPrevention.instance.config_claims_expirationExemptionBonusBlocks || bonusBlocks + ownerData.getAccruedClaimBlocks() >= GriefPrevention.instance.config_claims_expirationExemptionTotalBlocks) { GriefPrevention.AddLogEntry("Player exempt from claim expiration based on claim block counts vs. config file settings.", CustomLogEntryTypes.Debug, true); return; } //pass it back to the main server thread, where it's safe to delete a claim if needed Bukkit.getScheduler().scheduleSyncDelayedTask(GriefPrevention.instance, new CleanupUnusedClaimTask(claim, ownerData, ownerInfo), 1L); } }
/** * Add a player to the team * * @param player to add */ public void addPlayer(OfflinePlayer player) { players.add(player.getName()); if(this.sendToAll) { for(Player p : Bukkit.getServer().getOnlinePlayers()) PacketUtil.sendPacket(p, this.getPacket(3)); } else { if(player != null && player.isOnline()) { PacketUtil.sendPacket((Player) player, this.getPacket(0)); } for(String user : players) { Player p = Bukkit.getPlayer(user); if(p != null && p.isOnline()) { PacketUtil.sendPacket(p, this.getPacket(3)); } } } }