diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/TileEntityRecordPlayer.java')
-rw-r--r-- | src/main/java/net/minecraft/server/TileEntityRecordPlayer.java | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/net/minecraft/server/TileEntityRecordPlayer.java b/src/main/java/net/minecraft/server/TileEntityRecordPlayer.java new file mode 100644 index 00000000..48a435ac --- /dev/null +++ b/src/main/java/net/minecraft/server/TileEntityRecordPlayer.java @@ -0,0 +1,40 @@ +package net.minecraft.server; + +public class TileEntityRecordPlayer extends TileEntity { + + private ItemStack record; + + public TileEntityRecordPlayer() {} + + public void a(NBTTagCompound nbttagcompound) { + super.a(nbttagcompound); + if (nbttagcompound.hasKey("RecordItem")) { + this.setRecord(ItemStack.createStack(nbttagcompound.getCompound("RecordItem"))); + } else if (nbttagcompound.getInt("Record") > 0) { + this.setRecord(new ItemStack(nbttagcompound.getInt("Record"), 1, 0)); + } + } + + public void b(NBTTagCompound nbttagcompound) { + super.b(nbttagcompound); + if (this.getRecord() != null) { + nbttagcompound.setCompound("RecordItem", this.getRecord().save(new NBTTagCompound())); + nbttagcompound.setInt("Record", this.getRecord().id); + } + } + + public ItemStack getRecord() { + return this.record; + } + + public void setRecord(ItemStack itemstack) { + // CraftBukkit start - There can only be one + if (itemstack != null) { + itemstack.count = 1; + } + // CraftBukkit end + + this.record = itemstack; + this.update(); + } +} |