Hola, para empezar creo que no se pueden bloquear puertas de madera (Si se pudiera hacer que alguien me corrija por favor) Así que te diré como hacerlo o bien con puerta de hierro o con un /fill.
Para el sistema que te diré necesitaras colocar un armor stand debajo de la puerta en cuestión.
/summon ArmorStand ~ ~1 ~ {CustomName:"puerta",NoGravity:1b,Invisible:1,Invulnerable:1,PersistenceRequired:1}
![](http://i.imgur.com/D7PvQ8b.png)
(Si estas en las snapshot de la 1.11 para summonear un armorstand tienes que poner armor_stand en vez de ArmorStand, no preguntes por qué, yo aun sigo buscandole la lógica a ese estúpido cambio)
El armor stand será el encargado de abrir las puertas que te diré, ya sea de hierro o con fill.
Puerta de hierro:para esta tendrás que colocar un bloque en donde estaría la base del armor stand.
/execute @e[type=ArmorStand,name=puerta] ~ ~ ~ /setblock ~ ~ ~ quartz_block
este bloque servirá de apoyo para la antorcha de redstone que abrirá la puerta.
Ahora lo que necesitas es un reloj de comandos o bien un repeater block que detecte que el jugador tiene el item en cuestión en la mano:
/testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:prismarine_shard"}],Inventory:[{tag:{display:{Name:"llave"}}}]}
(Este en específico detecta el item en el slot 0, también puedes dar mas libertad al jugador haciendo que baste con que lo tenga seleccionado en cualquier slot para activar la puerta.
/testfor @a {SelectedItem:{id:"minecraft:prismarine_shard"},Inventory:[{tag:{display:{Name:"llave"}}}]}
Del bloque de comandos que ejecute el testfor tienes que sacar un comparador y hacer lo que verás en la imagen.
![](http://i.imgur.com/maOcnbI.png)
en el bloque de comandos normal de abajo tienes que poner esto:
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=3] ~ ~ ~ /setblock ~ ~1 ~ redstone_torch
y en el que esta arriba de la antorcha de redstone este:
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=3] ~ ~ ~ /setblock ~ ~1 ~ air
En la 1.11 por algún motivo no puedes hacer esto con setblock y tienes que usar /fill...... creo que a medida que respondo tu post odio mas profundamente la 1.11........)
Ese sería con una puerta de hierro, ahora el fill que te comento es simplemente que elijas algún bloque que pege con lo que estés construyendo para asemejarse a una puerta y lo mismo de antes pero con todos los bloques de comandos en repeating, en caso de que estés en la 1.8 seguirá funcionando sin esto pero tendrá algunos fallos el sistema.
![](http://i.imgur.com/hBxzSmn.png)
en el bloque de comandos de arriba:
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=3] ~ ~ ~ /fill ~ ~3 ~ ~ ~4 ~ quartz_block 2
y en el de abajo:
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=7] ~ ~ ~ /fill ~ ~3 ~ ~ ~4 ~ air
![](http://i.imgur.com/hBxzSmn.png)
Esto sería todo ^^ espero que te sea de ayuda.
EDITO:
Lo siento, me acabo de dar cuenta tras releer tu post que no querías que se cerraran las puertas, no me di cuenta antes
![Llorando T_T](http://minecraftmin.net/Smileys/slime/slime_llorando.png)
Para hacer lo que quieres con lo que te dije usando una puerta de hierro debes dejar solamente el bloque de comandos que coloca la antorcha de redstone.
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=3] ~ ~ ~ /setblock ~ ~1 ~ redstone_torch
Y para la puerta de bloques solo tienes que poner el execute con el /fill air y colocar tu los bloques de la puerta.
/execute @a ~ ~ ~ /execute @e[type=ArmorStand,name=puerta,r=3] ~ ~ ~ /fill ~ ~3 ~ ~ ~4 ~ air
aprovecho para decir que como esto es "universal" y afecta a todas las puertas en las que coloques un armor stand renombrado como "puerta" solo debes colocar el sistema una vez en los spawnchunk y todas las puertas con armor stand (puerta) se abrirán al tener ese item en la mano.