From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: simpleauthority Date: Tue, 28 May 2019 03:48:51 -0700 Subject: [PATCH] Implement CraftBlockSoundGroup diff --git a/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java b/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java new file mode 100644 index 0000000000000000000000000000000000000000..34b3b858f616c4a1f877e6e58d315de2d8ff0720 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java @@ -0,0 +1,38 @@ +package com.destroystokyo.paper.block; + +import net.minecraft.world.level.block.SoundEffectType; +import org.bukkit.Sound; +import org.bukkit.craftbukkit.CraftSound; + +public class CraftBlockSoundGroup implements BlockSoundGroup { + private final SoundEffectType soundEffectType; + + public CraftBlockSoundGroup(SoundEffectType soundEffectType) { + this.soundEffectType = soundEffectType; + } + + @Override + public Sound getBreakSound() { + return CraftSound.getBukkit(soundEffectType.getBreakSound()); + } + + @Override + public Sound getStepSound() { + return CraftSound.getBukkit(soundEffectType.getStepSound()); + } + + @Override + public Sound getPlaceSound() { + return CraftSound.getBukkit(soundEffectType.getPlaceSound()); + } + + @Override + public Sound getHitSound() { + return CraftSound.getBukkit(soundEffectType.getHitSound()); + } + + @Override + public Sound getFallSound() { + return CraftSound.getBukkit(soundEffectType.getFallSound()); + } +} diff --git a/src/main/java/net/minecraft/world/level/block/SoundEffectType.java b/src/main/java/net/minecraft/world/level/block/SoundEffectType.java index 0987b25ac586d5d7b7954256c740fdf736498dae..b2a52c6bad5a83f34188b8f3db18c61ff9f52869 100644 --- a/src/main/java/net/minecraft/world/level/block/SoundEffectType.java +++ b/src/main/java/net/minecraft/world/level/block/SoundEffectType.java @@ -54,10 +54,10 @@ public class SoundEffectType { public static final SoundEffectType U = new SoundEffectType(1.0F, 1.0F, SoundEffects.BLOCK_GILDED_BLACKSTONE_BREAK, SoundEffects.BLOCK_GILDED_BLACKSTONE_STEP, SoundEffects.BLOCK_GILDED_BLACKSTONE_PLACE, SoundEffects.BLOCK_GILDED_BLACKSTONE_HIT, SoundEffects.BLOCK_GILDED_BLACKSTONE_FALL); public final float volume; public final float pitch; - public final SoundEffect breakSound; + public final SoundEffect breakSound; public final SoundEffect getBreakSound() { return this.breakSound; } // Paper - OBFHELPER // PAIL private -> public, rename breakSound private final SoundEffect stepSound; private final SoundEffect placeSound; - public final SoundEffect hitSound; + public final SoundEffect hitSound; public final SoundEffect getHitSound() { return this.hitSound; } // Paper - OBFHELPER // PAIL private -> public, rename hitSound private final SoundEffect fallSound; public SoundEffectType(float f, float f1, SoundEffect soundeffect, SoundEffect soundeffect1, SoundEffect soundeffect2, SoundEffect soundeffect3, SoundEffect soundeffect4) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java index 8a6d8f21937ce7e2ac4623a3083421ed5ef9aa63..724b230259b1b44bc9fdde6c4fcbcdde5f690e05 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -750,4 +750,11 @@ public class CraftBlock implements Block { AxisAlignedBB aabb = shape.getBoundingBox(); return new BoundingBox(getX() + aabb.minX, getY() + aabb.minY, getZ() + aabb.minZ, getX() + aabb.maxX, getY() + aabb.maxY, getZ() + aabb.maxZ); } + + // Paper start + @Override + public com.destroystokyo.paper.block.BlockSoundGroup getSoundGroup() { + return new com.destroystokyo.paper.block.CraftBlockSoundGroup(getNMSBlock().getBlockData().getStepSound()); + } + // Paper end }