In 1.21.5, mojang split the `onRemove` logic in `LevelChunk#setBlockState` to 3 steps,
`preRemoveSideEffects`, then remove block entity, then do `affectNeighborsAfterRemoval`.
beacon deactive call event should move to step 1 instead 3, to keep ollow the original fix logic.
Also always call deactive event on everytime beacon gets removed, to follow the Paper's behavior.