Despite having a solid cobblestone base, levers use wood for their placement, breaking and co. sounds, which does not seem right. Shouldn't they be using stone's sounds instead?
Steps to Reproduce:
Place down a lever.
→ ❌ Notice how the lever produces a wood sound upon being placed.
Break the lever.
→ ❌ Notice how the lever produces a wood sound upon being destroyed.
Expected Behavior:
The expected behavior would be that levers would produce stone sounds as they are mostly constructed and crafted with stone.
Related issues
Attachments
Comments


Relates to MC-182820
Can confirm in 1.16.5.
Can confirm in 21w11a.
Can confirm in 21w13a.
Can confirm in 21w15a.
Can confirm in 21w17a.
Can confirm in 1.17.
Can confirm in 1.17.1.
Can also confirm in 21w37a. Here are some additional details regarding this issue.
The Bug:
Levers produce wood sounds despite mostly being constructed of stone.
Steps to Reproduce:
Place down a lever.
→ ❌ Notice how the lever produces a wood sound upon being placed.
Break the lever.
→ ❌ Notice how the lever produces a wood sound upon being destroyed.
Expected Behavior:
The expected behavior would be that levers would produce stone sounds as they are mostly constructed and crafted with stone.
I can confirm this behavior in 1.18 Release Candidate 3.
Here's a code analysis along with a potential fix regarding this issue. The following is based on a decompiled version of Minecraft 1.17.1 using MCP-Reborn.
Code Analysis:
net.minecraft.world.level.block.Blocks.java
public class Blocks {
...
public static final Block LEVER = register("lever", new LeverBlock(BlockBehaviour.Properties.of(Material.DECORATION).noCollission().strength(0.5F).sound(SoundType.WOOD)));
...
If we look at the above class, we can see that levers utilize the .sound(SoundType.WOOD)
method which is used for determining whether a block should produce wood sounds.
Potential Fix:
Simply replacing the .sound(SoundType.WOOD)
method with .sound(SoundType.STONE)
within this line of code should resolve this problem, as levers are predominantly constructed of stone. The correct line of code within its class should look something like the following:
net.minecraft.world.level.block.Blocks.java
public class Blocks {
...
public static final Block LEVER = register("lever", new LeverBlock(BlockBehaviour.Properties.of(Material.DECORATION).noCollission().strength(0.5F).sound(SoundType.STONE)));
...
Can confirm in 1.18.
Can confirm in 1.18.1.
Can confirm in 1.18.2.
Can confirm in 1.19 and 22w24a.
Can confirm in 1.19.2.

Can confirm in 23w07a.

Can confirm in 23w32a