From a7ced05411a5294bee686b9871e3874c57a15d3a Mon Sep 17 00:00:00 2001 From: Jon Date: Thu, 9 Jan 2025 01:06:59 -0800 Subject: [PATCH] make certain blocks PistonBreakable --- server/block/dragon_egg.go | 5 +++++ server/block/ladder.go | 5 +++++ server/block/leaves.go | 5 +++++ server/block/lit_pumpkin.go | 5 +++++ 4 files changed, 20 insertions(+) diff --git a/server/block/dragon_egg.go b/server/block/dragon_egg.go index 56b184f9a..11a7d42f3 100644 --- a/server/block/dragon_egg.go +++ b/server/block/dragon_egg.go @@ -27,6 +27,11 @@ func (d DragonEgg) SideClosed(cube.Pos, cube.Pos, *world.Tx) bool { return false } +// PistonBreakable ... +func (DragonEgg) PistonBreakable() bool { + return true +} + // teleport ... func (d DragonEgg) teleport(pos cube.Pos, tx *world.Tx) { for i := 0; i < 1000; i++ { diff --git a/server/block/ladder.go b/server/block/ladder.go index 91a520095..b3c62030f 100644 --- a/server/block/ladder.go +++ b/server/block/ladder.go @@ -66,6 +66,11 @@ func (l Ladder) SideClosed(cube.Pos, cube.Pos, *world.Tx) bool { return false } +// PistonBreakable ... +func (Ladder) PistonBreakable() bool { + return true +} + // BreakInfo ... func (l Ladder) BreakInfo() BreakInfo { return newBreakInfo(0.4, alwaysHarvestable, axeEffective, oneOf(l)) diff --git a/server/block/leaves.go b/server/block/leaves.go index 9fa236c22..e0eab0b64 100644 --- a/server/block/leaves.go +++ b/server/block/leaves.go @@ -135,6 +135,11 @@ func (Leaves) SideClosed(cube.Pos, cube.Pos, *world.Tx) bool { return false } +// PistonBreakable ... +func (Leaves) PistonBreakable() bool { + return true +} + // EncodeBlock ... func (l Leaves) EncodeBlock() (name string, properties map[string]any) { return "minecraft:" + l.Wood.String() + "_leaves", map[string]any{"persistent_bit": l.Persistent, "update_bit": l.ShouldUpdate} diff --git a/server/block/lit_pumpkin.go b/server/block/lit_pumpkin.go index 5cd7ac750..48a8d82f2 100644 --- a/server/block/lit_pumpkin.go +++ b/server/block/lit_pumpkin.go @@ -20,6 +20,11 @@ func (l LitPumpkin) LightEmissionLevel() uint8 { return 15 } +// PistonBreakable ... +func (LitPumpkin) PistonBreakable() bool { + return true +} + // UseOnBlock ... func (l LitPumpkin) UseOnBlock(pos cube.Pos, face cube.Face, _ mgl64.Vec3, tx *world.Tx, user item.User, ctx *item.UseContext) (used bool) { pos, _, used = firstReplaceable(tx, pos, face, l)