mirror of
https://github.com/BentoBoxWorld/BentoBox.git
synced 2024-11-01 00:10:40 +01:00
Puts a null check on player UUID
It's possible for fake players to have null UUIDs apparently. So this check avoids an NPE.
This commit is contained in:
parent
c4e28b7937
commit
f0564b7c78
@ -55,7 +55,7 @@ public class JoinLeaveListener implements Listener {
|
||||
if (!players.isKnown(playerUUID)) {
|
||||
firstTime(user);
|
||||
}
|
||||
|
||||
|
||||
// Make sure the player is loaded into the cache or create the player if they don't exist
|
||||
players.addPlayer(playerUUID);
|
||||
|
||||
@ -121,7 +121,7 @@ public class JoinLeaveListener implements Listener {
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -142,10 +142,11 @@ public class JoinLeaveListener implements Listener {
|
||||
* @param user Targeted user.
|
||||
*/
|
||||
private void clearPlayersInventory(World world, @NonNull User user) {
|
||||
if (user.getUniqueId() == null) return;
|
||||
// Clear inventory if required
|
||||
Players playerData = players.getPlayer(user.getUniqueId());
|
||||
|
||||
if (playerData.getPendingKicks().contains(world.getName())) {
|
||||
if (playerData != null && playerData.getPendingKicks().contains(world.getName())) {
|
||||
if (plugin.getIWM().isOnLeaveResetEnderChest(world)) {
|
||||
user.getPlayer().getEnderChest().clear();
|
||||
}
|
||||
@ -214,13 +215,13 @@ public class JoinLeaveListener implements Listener {
|
||||
|
||||
// Call Protection Range Change event. Does not support cancelling.
|
||||
IslandEvent.builder()
|
||||
.island(island)
|
||||
.location(island.getCenter())
|
||||
.reason(IslandEvent.Reason.RANGE_CHANGE)
|
||||
.involvedPlayer(user.getUniqueId())
|
||||
.admin(true)
|
||||
.protectionRange(range, oldRange)
|
||||
.build();
|
||||
.island(island)
|
||||
.location(island.getCenter())
|
||||
.reason(IslandEvent.Reason.RANGE_CHANGE)
|
||||
.involvedPlayer(user.getUniqueId())
|
||||
.admin(true)
|
||||
.protectionRange(range, oldRange)
|
||||
.build();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -103,8 +103,9 @@ public class PlayersManager {
|
||||
/**
|
||||
* Get player by UUID. Adds player to cache if not in there already
|
||||
* @param uuid of player
|
||||
* @return player object or null if it does not exist
|
||||
* @return player object or null if it does not exist, for example the UUID is null
|
||||
*/
|
||||
@Nullable
|
||||
public Players getPlayer(UUID uuid){
|
||||
if (!playerCache.containsKey(uuid)) {
|
||||
addPlayer(uuid);
|
||||
|
Loading…
Reference in New Issue
Block a user