Fix null player on removeWarp (#100)

This commit is contained in:
Huynh Tien 2021-12-31 23:25:05 +07:00 committed by GitHub
parent 9290503be3
commit 6cfaa0e9c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 5 deletions

View File

@ -25,6 +25,7 @@ import org.bukkit.World;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.block.BlockFace; import org.bukkit.block.BlockFace;
import org.bukkit.block.Sign; import org.bukkit.block.Sign;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.permissions.PermissionAttachmentInfo; import org.bukkit.permissions.PermissionAttachmentInfo;
import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.NonNull;
@ -241,11 +242,9 @@ public class WarpSignsManager {
Entry<UUID, Location> en = it.next(); Entry<UUID, Location> en = it.next();
if (en.getValue().equals(loc)) { if (en.getValue().equals(loc)) {
// Inform player // Inform player
User user = User.getInstance(addon.getServer().getPlayer(en.getKey())); Optional.ofNullable(addon.getServer().getPlayer(en.getKey()))
if (user != null) { .map(User::getInstance)
// Inform the player .ifPresent(user -> user.sendMessage("warps.sign-removed"));
user.sendMessage("warps.sign-removed");
}
// Remove sign from warp panel cache // Remove sign from warp panel cache
addon.getWarpPanelManager().removeWarp(loc.getWorld(), en.getKey()); addon.getWarpPanelManager().removeWarp(loc.getWorld(), en.getKey());
it.remove(); it.remove();