All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.chestmc.nbt.PlayerAdapter.kt Maven / Gradle / Ivy

package net.chestmc.nbt

import net.minecraft.server.NBTTagCompound
import org.bukkit.Bukkit
import org.bukkit.OfflinePlayer
import org.bukkit.entity.Player

/**
 * A tag adapter for adapting [Player].
 */
object PlayerAdapter : TagAdapter {
  override fun load(key: String, tag: NBTTagCompound): Player {
    return Bukkit.getPlayer(tag.getUUID(key))
  }

  override fun save(key: String, value: Player, tag: NBTTagCompound) {
    tag.setUUID(key, value.uniqueId)
  }
}

/**
 * A tag adapter for adapting [OfflinePlayer].
 */
object OfflinePlayerAdapter : TagAdapter {
  override fun load(key: String, tag: NBTTagCompound): OfflinePlayer {
    return Bukkit.getOfflinePlayer(tag.getUUID(key))
  }

  override fun save(key: String, value: OfflinePlayer, tag: NBTTagCompound) {
    tag.setUUID(key, value.uniqueId)
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy