protect lock data from being overwritten

This commit is contained in:
payonel 2018-11-06 00:56:13 -08:00
parent 2611ecb265
commit 2256adf30c

View File

@ -89,14 +89,17 @@ object PacketHandler extends CommonPacketHandler {
def onDriveLock(p: PacketParser) = p.player match {
case player: EntityPlayerMP =>
Delegator.subItem(player.getHeldItem) match {
val heldItem = player.getHeldItem
Delegator.subItem(heldItem) match {
case Some(drive: FileSystemLike) =>
val data = new DriveData(player.getHeldItem)
val data = new DriveData(heldItem)
if (!data.isLocked) {
data.lockInfo = player.getDisplayName match {
case name: String if name != null && !name.isEmpty => name
case _ => "notch" // meaning: "unknown"
}
data.save(player.getHeldItem)
data.save(heldItem)
}
case _ => // Invalid packet
}
case _ => // Invalid Packet