Is there a way to prevent water from being placed in front of an observer?
Please note: I am not looking for a server plugin resolution, I want to know if the question in the title is achievable.
I am playing on a small server with a couple friends, with everyone settling in different areas. We have a claim chunk plugin for factions, however my visitors can still interact with buttons, pressure plates and due to a plugin issue, they can also put down water and lava from buckets.
I have built a safe room in my basement which can only be opened from outside, by placing a block in front of the observer. The redstone circuit is an on/off switch which results in the door opening if a block is present, and the door closing if there is no block in front of it. Or that's at least how it was meant to be used by faction members.
The below is a mock version:
Since the observer does accept lava/water as a block change, players can currently open the safe room by placing water down in front of the observer, due to the aforementioned plugin problem.
Given the space I am limited to (3x3x3), is there a way to prevent water/lava from being placed in front of the observer, without taking away my ability to place blocks in front of it?
You may be able to block off access to the observer by placing blocks around it without activating it. This way, as long as they can't break blocks, they can't reach the observer and won't be able to get in. All you have to do is break a block or two and activate the observer to open the door.
Sorry if my answer doesn't work/doesn't make sense, I don't use redstone often. Hope this helped anyways.
Are you allowed to use commands? If so, you could use /fill to get rid of all lava and water in the specific space.
/setblock <x> <y> <z> minecraft:air
According to my own testing, this should work in a Repeating command block because the red stone signal doesn't make it to the repeater in time.
If it's a plugin error, you could also clear all water and lava from players with specific names or simply every player.
/clear @a[name=!(name not to be cleared)] water_bucket
/clear @a water_bucket
/clear @a lava_bucket
Make sure to put all of these on Repeating command blocks with Always Active set to on.