diff options
Diffstat (limited to 'src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt')
-rw-r--r-- | src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt b/src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt index 10fbbbb..b93dec2 100644 --- a/src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt +++ b/src/main/kotlin/io/dico/parcels2/util/UUIDUtil.kt @@ -6,21 +6,21 @@ import java.nio.ByteBuffer import java.util.* @Suppress("UsePropertyAccessSyntax") -fun getPlayerName(uuid: UUID?, ifUnknown: String? = null): String { - return uuid?.let { Bukkit.getOfflinePlayer(uuid)?.takeIf { it.isValid }?.name } +fun getPlayerNameOrDefault(uuid: UUID?, ifUnknown: String? = null): String { + return uuid + ?.let { getPlayerName(it) } ?: ifUnknown ?: ":unknown_name:" } -@Contract("null -> null; !null -> !null", pure = true) -fun UUID?.toByteArray(): ByteArray? = this?.let { +fun getPlayerName(uuid: UUID): String? { + return Bukkit.getOfflinePlayer(uuid)?.takeIf { it.isValid }?.name +} + +fun UUID.toByteArray(): ByteArray = ByteBuffer.allocate(16).apply { putLong(mostSignificantBits) putLong(leastSignificantBits) }.array() -} -@Contract("null -> null; !null -> !null", pure = true) -fun ByteArray?.toUUID(): UUID? = this?.let { - ByteBuffer.wrap(it).run { UUID(long, long) } -}
\ No newline at end of file +fun ByteArray.toUUID(): UUID = ByteBuffer.wrap(this).run { UUID(long, long) } |