summaryrefslogtreecommitdiff
path: root/src/main/kotlin/io/dico/parcels2/PlayerProfile.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/io/dico/parcels2/PlayerProfile.kt')
-rw-r--r--src/main/kotlin/io/dico/parcels2/PlayerProfile.kt4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/main/kotlin/io/dico/parcels2/PlayerProfile.kt b/src/main/kotlin/io/dico/parcels2/PlayerProfile.kt
index 2e543dc..b096665 100644
--- a/src/main/kotlin/io/dico/parcels2/PlayerProfile.kt
+++ b/src/main/kotlin/io/dico/parcels2/PlayerProfile.kt
@@ -16,6 +16,7 @@ import java.util.UUID
interface PlayerProfile {
val uuid: UUID? get() = null
val name: String?
+ val nameOrBukkitName: String?
val notNullName: String
val isStar: Boolean get() = false
val exists: Boolean get() = this is RealImpl
@@ -75,6 +76,8 @@ interface PlayerProfile {
interface Real : PlayerProfile {
override val uuid: UUID
+ override val nameOrBukkitName: String?
+ get() = name ?: Bukkit.getOfflinePlayer(uuid).takeIf { it.isValid }?.name
override val notNullName: String
get() = name ?: getPlayerNameOrDefault(uuid)
@@ -121,6 +124,7 @@ interface PlayerProfile {
abstract class NameOnly(override val name: String) : BaseImpl() {
override val notNullName get() = name
+ override val nameOrBukkitName: String get() = name
override fun matches(player: OfflinePlayer, allowNameMatch: Boolean): Boolean {
return allowNameMatch && player.name == name