mojira.dev
MC-269260

Pistons breaking blocks yields no drops

Steps to reproduce:

Create a setup like in fig1.png

Run /tick freeze

Break the redstone block followed by the piston head (the order is important)

Place a piston against the oak planks so it faces downwards

Compare your setup to fig2.png

Run /tick unfreeze

Compare your setup to fig3.png

 

Observed behavior:

The block below the piston breaks but doesn't drop anything

 

Expected behavior:

The block below the piston breaks and drops a block according to the rules of /setblock <coordinates> air destroy

 

Suggested fix:

On a piston retraction if the block in front of the base is a minecraft:pison_head do nothing and continue to retraction logic,

Otherwise, break the block in front of the base rather than setting it to air

 

Java-like pseudocode:

public class PistonBase {
    public void onRetract() {
        // If the block is a piston head, do nothing
        if(this.getBlockInFront() instanceof PistonHead)
            this.getBlockInFront().getLocation().getBlock(AIR);
        // If the block is not a piston head, break it
        else
            this.getBlockInFront().getLocation().destroy();
        // The rest of the logic in this function
    }
}

Attachments

Comments 3

Based off of other similarly resolved issues, this seems to be the same behavior as MC-27056, but using /tick instead of TNT to destroy the piston in the same game tick the placed piston is powered. See the video in MC-227170 (which was a dupe of MC-27056) that shows the described behavior in action.

Since the issue describes behavior of blocks drops and does not exactly match MC-27056 entirely, I can confirm.

Thank you for your report!
After consideration, the issue is being closed as Invalid.

This report does not describe a bug.

Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki

Player_X_YT

(Unassigned)

Community Consensus

(Unassigned)

24w10a

Retrieved