Paper/Spigot-Server-Patches/0367-Fix-sounds-when-item-frames-are-modified-MC-123450.patch

34 lines
1.8 KiB
Diff
Raw Normal View History

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2019-04-27 19:05:20 +00:00
From: Phoenix616 <mail@moep.tv>
Date: Sat, 27 Apr 2019 20:00:43 +0100
Subject: [PATCH] Fix sounds when item frames are modified (MC-123450)
This also fixes the adding sound playing when the item frame direction is changed.
diff --git a/src/main/java/net/minecraft/server/EntityItemFrame.java b/src/main/java/net/minecraft/server/EntityItemFrame.java
index 9b1e07452f9e7e9a6d069d6e62112a487ff288d4..f8a2f32f1d93e3cdbc7c40783beef05f5f05794f 100644
2019-04-27 19:05:20 +00:00
--- a/src/main/java/net/minecraft/server/EntityItemFrame.java
+++ b/src/main/java/net/minecraft/server/EntityItemFrame.java
@@ -224,7 +224,7 @@ public class EntityItemFrame extends EntityHanging {
2019-04-27 19:05:20 +00:00
}
2019-05-10 19:03:43 +00:00
this.getDataWatcher().set(EntityItemFrame.ITEM, itemstack);
2019-04-27 19:05:20 +00:00
- if (!itemstack.isEmpty() && playSound) { // CraftBukkit
+ if (!itemstack.isEmpty() && flag && playSound) { // CraftBukkit // Paper - only play sound when update flag is set
this.a(SoundEffects.ENTITY_ITEM_FRAME_ADD_ITEM, 1.0F, 1.0F);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItemFrame.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItemFrame.java
index 2873ff9d1f006b76c27f5d2a4b943e3fe3df7d9b..a3613edcbb538721bc850e04c8e8d27556a17aa6 100644
2019-04-27 19:05:20 +00:00
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItemFrame.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItemFrame.java
2019-05-10 19:03:43 +00:00
@@ -49,7 +49,7 @@ public class CraftItemFrame extends CraftHanging implements ItemFrame {
2019-04-27 19:05:20 +00:00
old.die();
EntityItemFrame frame = new EntityItemFrame(world, position, direction);
2019-04-27 19:05:20 +00:00
- frame.setItem(item);
+ frame.setItem(item, true, false); // Paper - fix itemframe sound
world.addEntity(frame);
this.entity = frame;
}