Si los jugadores están en Supervivencia normalmente, puedes ponerlos en modo Aventura. Si están en Creativo normalmente, puedes ponerlos en modo Espectador. Yo, por ejemplo, daría una etiqueta a todos los que puedan construir en una determinada zona, y cambiaría el modo de juego de todos los que no tengan esa etiqueta. En este ejemplo utilizo el modo Creativo y Espectador.
Inicialización: Dar a cada jugador que debe ser capaz de construir en la parcela de x=200,z=300 a x=300,z=400 la etiqueta canBuild2_3
:
/tag ExamplePlayer add canBuild2_3
Bucle:
execute as @a[gamemode=creative,tag=!canBuild2_3] at @s run gamemode spectator @s[x=200,z=300,dx=100,dz=100]
execute as @a[gamemode=spectator,tag=!canBuild2_3] at @s unless entity @s[x=200,z=300,dx=100,dz=100] run gamemode creative
Los jugadores pueden seguir estando fuera de la parcela y colocar/romper bloques en las zonas de las esquinas dentro de la parcela, pero se puede hacer la zona un poco más grande. Para más parcelas, sólo tienes que copiar todo lo anterior para ello. Puedes dejar que se ejecute uno tras otro (todos los comandos para una parcela, luego todos los comandos para la siguiente parcela, etc.).
(Por cierto, si estás en una parcela en la que se te permite construir y simultáneamente en otra, superpuesta, en la que no se te permite construir, entonces la parcela que viene en último lugar en el orden de ejecución decide si estás en Creativo o en Espectador).
He actualizado esto a 1.14 y lo he hecho en general mucho más inteligente y mejor para el rendimiento. Ahora sólo utiliza la etiqueta única (si se le permite construir allí) y no añade y elimina constantemente una etiqueta temporal a / de usted. Además, no hace absolutamente nada para la gente que no debería verse afectada por ello y funciona en todas las alturas, incluso por debajo de 0 y por encima de 256.