Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package org.bukkit.block;

import org.bukkit.inventory.BlockInventoryHolder;
import org.bukkit.inventory.ChiseledBookshelfInventory;
import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,14 @@
public static final String SONG_ITEM_TAG_ID = "RecordItem";
public static final String TICKS_SINCE_SONG_STARTED_TAG_ID = "ticks_since_song_started";
private ItemStack item = ItemStack.EMPTY;
@@ -114,6 +_,7 @@
@Override
public void setTheItem(ItemStack item) {
this.item = item;
+ if (this.level == null) return; // Paper - for unplaced block state
boolean flag = !this.item.isEmpty();
Optional<Holder<JukeboxSong>> optional = JukeboxSong.fromStack(this.level.registryAccess(), this.item);
this.notifyItemChangedInJukebox(flag);
@@ -133,7 +_,7 @@

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,11 @@
import net.minecraft.world.level.block.entity.ChiseledBookShelfBlockEntity;
import org.bukkit.block.ChiseledBookshelf;
import org.bukkit.inventory.ChiseledBookshelfInventory;
import org.bukkit.inventory.ItemStack;

public class CraftInventoryChiseledBookshelf extends CraftInventory implements ChiseledBookshelfInventory {

public CraftInventoryChiseledBookshelf(ChiseledBookShelfBlockEntity inventory) {
super(inventory);

}

@Override
public void setItem(int index, ItemStack item) {
net.minecraft.world.item.ItemStack nms = CraftItemStack.asNMSCopy(item);

if (nms.isEmpty()) {
this.getInventory().removeItemNoUpdate(index);
} else {
this.getInventory().setItem(index, nms);
}
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,23 +1,19 @@
package org.bukkit.craftbukkit.inventory;

import net.minecraft.world.Container;
import net.minecraft.world.level.block.entity.JukeboxBlockEntity;
import org.bukkit.block.Jukebox;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.JukeboxInventory;

public class CraftInventoryJukebox extends CraftInventory implements JukeboxInventory {

public CraftInventoryJukebox(Container inventory) {
public CraftInventoryJukebox(JukeboxBlockEntity inventory) {
super(inventory);
}

@Override
public void setRecord(ItemStack item) {
if (item == null) {
this.inventory.removeItem(0, 0);
} else {
this.setItem(0, item);
}
this.setItem(0, item);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import net.minecraft.world.level.block.entity.ShelfBlockEntity;
import org.bukkit.block.Shelf;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.ShelfInventory;

public class CraftInventoryShelf extends CraftInventory implements ShelfInventory {
Expand All @@ -11,17 +10,6 @@ public CraftInventoryShelf(ShelfBlockEntity inventory) {
super(inventory);
}

@Override
public void setItem(int index, ItemStack item) {
net.minecraft.world.item.ItemStack nms = CraftItemStack.asNMSCopy(item);

if (nms.isEmpty()) {
this.getInventory().removeItemNoUpdate(index);
} else {
this.getInventory().setItem(index, nms);
}
}

@Override
public Shelf getHolder() {
return (Shelf) this.inventory.getOwner();
Expand Down
Loading