Adds block protection for all BM world interaction#2136
Adds block protection for all BM world interaction#2136wrincewind merged 1 commit intoWayofTime:1.20.1from
Conversation
Implemented block protection to prevent unauthorized block breaking and placing in protected chunks. Introduces a BlockProtectionHelper class with methods to fire BlockEvent.BreakEvent and BlockEvent.EntityPlaceEvent before block modifications. This allows protection mods like FTB Chunks or Xaeros Parties to prevent unauthorized operations by rituals, sigils, projectiles and other automated systems. Adds owner tracking to explosive charges to allow protection against griefing.
| growCrystal(world, corrosivePos, EnumDemonWillType.CORROSIVE, corrosiveCrystals); | ||
| growCrystal(world, steadfastPos, EnumDemonWillType.STEADFAST, steadfastCrystals); | ||
| growCrystal(world, destructivePos, EnumDemonWillType.DESTRUCTIVE, destructiveCrystals); | ||
| UUID ownerUUID = masterRitualStone.getOwner(); |
There was a problem hiding this comment.
Do we want to protect crystal growth? not exactly griefing anyone
There was a problem hiding this comment.
Yeah I was thinking of some weird case where you ritual tinker over and make someones crystals grow faster to mess with their will setup but I guess its enough of a niche thing its probably a non issue. Those crystals are going to grow regardless
There was a problem hiding this comment.
This ritual doesnt have ranges to reconfigure.
https://github.com/WayofTime/BloodMagic/blob/1.20.1/src/main/java/wayoftime/bloodmagic/ritual/types/RitualCrystalSplit.java#L21-L24
also the way to stop that from happening should be to check if the player can build in that chunk and if they cant stop the tinkerer from working
There was a problem hiding this comment.
yeah might be nice to have something special for the tinkerer itself at some point
dphaldes
left a comment
There was a problem hiding this comment.
Looks good! Dont see any major problems!
Yet to test in game but should work fine!
|
Game launches and didn't run into any issues when testing. I'm not sure how exactly to go about testing in singleplayer - we may have to keep an eye out for reports from people running multiplayer servers about permissions issues. |
Fixes #2024 Implemented block protection to prevent unauthorized block breaking and placing in protected chunks.
Introduces a BlockProtectionHelper class with methods to fire BlockEvent.BreakEvent and BlockEvent.EntityPlaceEvent before block modifications.
This allows protection mods like FTB Chunks or Xaeros Parties to prevent unauthorized operations by rituals, sigils, projectiles and other automated systems.
Adds owner tracking to explosive charges to allow protection against griefing.