feat: Add DisableBlockUpdateFlag
Description
Challenge
Using the current disable-physics flag doesn't suit all needs.
I'm missing a flag that prevents blocks around one that I'm updating from being updated.
There are several examples:
- I put a flower on a block, I break the block, I want the flower to stay in place,
- I modify a wall with the debug stick, I break a block, I don't want the wall to update,
- I modify a stair with the debug stick, I break the block, I don't want the stair to change direction.
Resolution
In this PR, I've added the disable-block-update flag to disable block updating when blocks are updated. The default value is false because there shouldn't be any change in the update behaviour on a plot without a flag.
Two points:
- I haven't added the existing
disable-physicsflag because, as I see it, the two flags have their own responsibilities, one affecting the gravity of the blocks and the other the update. - the flag doesn't block the updating of a block when snow is placed on it so that the block is covered in snow. I thought it should remain vanilla.
Submitter Checklist
- [x] Make sure you are opening from a topic branch (/feature/fix/docs/ branch (right side)) and not your main branch.
- [x] Ensure that the pull request title represents the desired changelog entry.
- [x] New public fields and methods are annotated with
@since TODO. - [x] I read and followed the contribution guidelines.
I don't know if getting this specific with block physics should be in P2? I feel like the condition for not updating blocks is quite arbitrary, and doesn't really serve much of a purpose to the plot itself, and is rather something that should be player-specific based on that player's preferences
Hi @dordsor21, thanks for your response
I can understand your point of view in a context other than creative. This flag (which may or may not be activated) is of great interest in a creative context. However, what I don't understand is that PlotSquared already has a similar flag: disable-physics (related to gravity). Note that the proposal for the current flag does not contradict this element. After that, the principle of flag selection is closely linked to the choice of plot owner. It's a flag that was very much in demand in a creative context. At the moment, the flag is running well and is being used by players on a creative server with a snapshot version of PlotSquared, so the interest is there. It's useful for the plot because it blocks the updating of blocks that would otherwise remain static on builds