SPIGOT-4314: Ability to change item in frame without playing sound

This commit is contained in:
simpleauthority authored and md_5 committed 2018-09-11 20:39:58 +10:00
1 parent b6bf6aa3ba
commit 953e1d601a
2 files changed
+27 -1

No files matched your search

+22
View File
@@ -12,3 +12,25 @@
this.b(damagesource.getEntity(), false);
this.a(SoundEffects.ENTITY_ITEM_FRAME_REMOVE_ITEM, 1.0F, 1.0F);
}
@@ -170,6 +175,12 @@
}
private void setItem(ItemStack itemstack, boolean flag) {
+ // CraftBukkit start
+ this.setItem(itemstack, flag, true);
+ }
+
+ public void setItem(ItemStack itemstack, boolean flag, boolean playSound) {
+ // CraftBukkit end
if (!itemstack.isEmpty()) {
itemstack = itemstack.cloneItemStack();
itemstack.setCount(1);
@@ -177,7 +188,7 @@
}
this.getDataWatcher().set(EntityItemFrame.e, itemstack);
- if (!itemstack.isEmpty()) {
+ if (!itemstack.isEmpty() && playSound) { // CraftBukkit
this.a(SoundEffects.ENTITY_ITEM_FRAME_ADD_ITEM, 1.0F, 1.0F);
}
@@ -57,7 +57,11 @@ public class CraftItemFrame extends CraftHanging implements ItemFrame {
}
public void setItem(org.bukkit.inventory.ItemStack item) {
getHandle().setItem(CraftItemStack.asNMSCopy(item));
setItem(item, true);
}
public void setItem(org.bukkit.inventory.ItemStack item, boolean playSound) {
getHandle().setItem(CraftItemStack.asNMSCopy(item), true, playSound);
}
public org.bukkit.inventory.ItemStack getItem() {