aboutsummaryrefslogtreecommitdiffhomepage
path: root/patch-remap/og/net/minecraft/world/item/ItemEgg.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patch-remap/og/net/minecraft/world/item/ItemEgg.patch')
-rw-r--r--patch-remap/og/net/minecraft/world/item/ItemEgg.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/patch-remap/og/net/minecraft/world/item/ItemEgg.patch b/patch-remap/og/net/minecraft/world/item/ItemEgg.patch
new file mode 100644
index 0000000000..40f4faa8e8
--- /dev/null
+++ b/patch-remap/og/net/minecraft/world/item/ItemEgg.patch
@@ -0,0 +1,27 @@
+--- a/net/minecraft/world/item/ItemEgg.java
++++ b/net/minecraft/world/item/ItemEgg.java
+@@ -19,14 +19,22 @@
+ public InteractionResultWrapper<ItemStack> use(World world, EntityHuman entityhuman, EnumHand enumhand) {
+ ItemStack itemstack = entityhuman.getItemInHand(enumhand);
+
+- world.playSound((EntityHuman) null, entityhuman.getX(), entityhuman.getY(), entityhuman.getZ(), SoundEffects.EGG_THROW, SoundCategory.PLAYERS, 0.5F, 0.4F / (world.getRandom().nextFloat() * 0.4F + 0.8F));
++ // world.playSound((EntityHuman) null, entityhuman.getX(), entityhuman.getY(), entityhuman.getZ(), SoundEffects.EGG_THROW, SoundCategory.PLAYERS, 0.5F, 0.4F / (world.getRandom().nextFloat() * 0.4F + 0.8F)); // CraftBukkit - moved down
+ if (!world.isClientSide) {
+ EntityEgg entityegg = new EntityEgg(world, entityhuman);
+
+ entityegg.setItem(itemstack);
+ entityegg.shootFromRotation(entityhuman, entityhuman.getXRot(), entityhuman.getYRot(), 0.0F, 1.5F, 1.0F);
+- world.addFreshEntity(entityegg);
++ // CraftBukkit start
++ if (!world.addFreshEntity(entityegg)) {
++ if (entityhuman instanceof net.minecraft.server.level.EntityPlayer) {
++ ((net.minecraft.server.level.EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
++ }
++ return InteractionResultWrapper.fail(itemstack);
++ }
++ // CraftBukkit end
+ }
++ world.playSound((EntityHuman) null, entityhuman.getX(), entityhuman.getY(), entityhuman.getZ(), SoundEffects.EGG_THROW, SoundCategory.PLAYERS, 0.5F, 0.4F / (world.getRandom().nextFloat() * 0.4F + 0.8F));
+
+ entityhuman.awardStat(StatisticList.ITEM_USED.get(this));
+ if (!entityhuman.getAbilities().instabuild) {