#716: Fix barrel open API playing sound twice

This commit is contained in:
jameslfc19 2020-08-27 11:16:27 +10:00 committed by md_5
parent 74b6982b03
commit 8408de02d2
No known key found for this signature in database
GPG key ID: E8E901AC7C617C11

View file

@ -1,5 +1,6 @@
package org.bukkit.craftbukkit.block; package org.bukkit.craftbukkit.block;
import net.minecraft.server.BlockBarrel;
import net.minecraft.server.IBlockData; import net.minecraft.server.IBlockData;
import net.minecraft.server.SoundEffects; import net.minecraft.server.SoundEffects;
import net.minecraft.server.TileEntityBarrel; import net.minecraft.server.TileEntityBarrel;
@ -38,9 +39,13 @@ public class CraftBarrel extends CraftLootable<TileEntityBarrel> implements Barr
requirePlaced(); requirePlaced();
if (!getTileEntity().opened) { if (!getTileEntity().opened) {
IBlockData blockData = getTileEntity().getBlock(); IBlockData blockData = getTileEntity().getBlock();
boolean open = blockData.get(BlockBarrel.b);
if (!open) {
getTileEntity().setOpenFlag(blockData, true); getTileEntity().setOpenFlag(blockData, true);
getTileEntity().playOpenSound(blockData, SoundEffects.BLOCK_BARREL_OPEN); getTileEntity().playOpenSound(blockData, SoundEffects.BLOCK_BARREL_OPEN);
} }
}
getTileEntity().opened = true; getTileEntity().opened = true;
} }