0 Usuarios y 1 Visitante están viendo este tema.

*

    Conectado sircripers

  • *
  • 147
  • Sexo: Masculino
  • ñeñeñe? ⎝(。◁゚)⎠
[Aportación] Todo sobre el comando /testfor (1.12)
« en: Febrero 14, 2017, 06:55:53 pm »
IMPORTANTE
\/ Información sobre la 1.13 y el comando /testfor \/
Spoiler para ocultar:
Es posible que debido a las nuevas funciones del comando /execute en la futura 1.13 el /testfor sea eliminado a partir de esa versión, por lo que, los comandos que enseño en este post serán solo funcionales desde la 1.8-1.12 (tened en cuenta que los comandos han tenido cambios entre esas versiones y puede que algo que enseñe en el post, que está centrado en la 1.12, no funcione en alguna versión anterior).
En caso de que finalmente en la 1.13 se elimine el /testfor (y si no se me adelanta alguien e,e) haré un post explicando brevemente como sería el equivalente en execute al testfor, o incluso quizás un post mas completo explicando todas sus nuevas funciones.


En esta aportación intentare aclarar las dudas que podáis tener con el comando /testfor usando varios ejemplos (Al menos sobre lo que sé) Dividiré el post en: Entidades, Jugadores y Varios. Todos ellos con pequeños apartados que trataran cosas concretas.
(Me limitaré solo a dar ejemplos del /testfor y no a hablar sobre el /testforblocks)

Antes que nada una pequeña explicación de que es el comando /testfor y cuales son sus utilidades.
Código: [Seleccionar]
/testfor @pSiendo esta su sintaxis más básica sirve para detectar, en este caso al jugador más cercano a quien ejecute el comando, es decir, si un jugador utiliza este comando este se detectara a si mismo al ser el jugador más cercano, si el comando se ejecuta en un command block, entonces detectará al jugador que este más cerca de él.

Este comando tal cual podría servir para saber cual es el jugador más cercano por ejemplo a un lugar concreto.

Por si andaís un poco perdidos con los selectores de objetivos en la gamepedia se explican perfectamente: http://minecraft.gamepedia.com/Commands#Target_selectors

Entidades
Spoiler para ocultar:
Cómo detectar entidades con un nombre específico o items.

¿Quieres probar estos comandos? Puedes utilizar esta página para generar comandos, después de varios años de intentonas de hacer mapas puedo decir que es sin duda la mejor para generar mobs.
   


-------------------- Detectar un Mob -------------------


-Comando básico:
Código: [Seleccionar]
/testfor @eDetectar una entidad puede ser útil para saber si hay un mob en el mundo, si esta en un lugar en específico, si esta a x distancia del jugador etc...
La manera más simple de saber si un jugador ha eliminado todos los zombies de una zona por ejemplo, sería colocando el siguiente comando debajo de esa zona:
Código: [Seleccionar]
/testfor @e[type=Zombie,r=20]o también detectar a un mob en un radio de unas coordenadas específicas.
Código: [Seleccionar]
/testfor @e[type=Zombie,x=333,y=50,z=474,r=5]
Con un comparador dando señal a un bloque con una antorcha de redstone si el bloque de comandos deja de detectar que hay zombies en la zona apagara la señal del comparador encendiendo así la antorcha y a los comandos que tenga a su lado.

-Detectar a un mob con nombre específico:
Código: [Seleccionar]
/testfor @e[type=Zombie,name=Guardian]
-Detectar cuando un mob esta a x distancia de un jugador:
Código: [Seleccionar]
/execute @a ~ ~ ~ /testfor @e[type=Zombie,name=Guardian,r=5]
-Detectar un mob con un item en la mano:
Código: [Seleccionar]
/testfor @e[type=Zombie,name=guardian] {HandItems:[0:{id:"minecraft:stone_sword"}]}

-------------------- Detectar un item --------------------


Detectar items en el suelo utilizando /testfor no siempre tiene utilidades, ya que la mayoría de sistemas que usan la detección de items en el suelo lo hacen con el comando execute (recordemos que el comando testfor es limitado y solo nos sirve como mecanismo para detectar algo y en base a eso mediante otro bloque de comandos realizar una acción) Pero si es cierto que el execute no permite el uso de nbt tags.

-Detectar item en el suelo:
Código: [Seleccionar]
/testfor @e[type=Item]
-Detectar un item en concreto:
Código: [Seleccionar]
/testfor @e[type=Item] {Item:{id:"minecraft:torch"}}
-Detectar item renombrado:
Código: [Seleccionar]
testfor @e[type=Item] {Item:{id:"minecraft:torch",tag:{display:{Name:"antorcha cálida"}}}}

------------------ Detectar items en item frame ------------------


-Detectar un item en un item frame:
Código: [Seleccionar]
/testfor @e[type=item_frame] {Item:{id:"minecraft:torch",Damage:0s,Count:1b},ItemRotation:0b}
Jugadores
Spoiler para ocultar:
Detectar a un jugador con items, en coordenadas o cerca de otras entidades
Las utilidades del testfor en jugadores son básicamente saber cuando un jugador sostiene un item, lo tiene en el inventario, si esta en un lugar en específico etc...
Aunque solo detectar a un jugador o un mob no sirve mucho mas que para saber algo sobre estos. Para abrir una puerta o hacer tp a un jugador por ejemplo, cuando estos tienen un item en la mano hay que utilizar un bloque de comandos en modo cadena o utilizar un comparador que active el siguiente comando.


------------------ Detectar items en el inventario ------------------


Detectar items en el inventario del jugador es una de las cosas más útiles para el mapmaking, desde abrir una puerta al tener una llave en el inventario o detectar que el jugador ha recogido un item específico y muchísimas más cosas.

Si queréis probar estos comandos aquí tenéis uno para conseguir la antorcha:
Código: [Seleccionar]
/give @p minecraft:torch 1 0 {display:{Name:"antorcha cálida",Lore:["Emite una cálida luz que que protege de las más bajas temperaturas."]}}También os recomiendo este give generator, es bastante útil y ahorra mucho tiempo: https://ezekielelin.com/give/


-Detectar item en el inventario:
Código: [Seleccionar]
/testfor @a {Inventory:[{id:"minecraft:torch"}]}
-Detectar item seleccionado en cualquier slot:
Código: [Seleccionar]
/testfor @a {SelectedItem:{id:"minecraft:torch"}}
-Detectar un item seleccionado en el primer slot de la hotbar:
Código: [Seleccionar]
/testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:torch"}]}
-Detectar item renombrado seleccionado en primer slot:
Código: [Seleccionar]
/testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:torch"},{tag:{display:{Name:"antorcha cálida"}}}]}
-Detectar item renombrado y con lore seleccionado
Código: [Seleccionar]
/testfor @a {SelectedItem:{id:"minecraft:torch",tag:{display:{Name:"antorcha cálida",Lore:["Emite una cálida luz que que protege de las más bajas temperaturas."]}}}}

---- Detectar jugadores (coordenadas, cercanía, etc...) ----


Detectar jugador en un radio respecto a un bloque de comandos
Código: [Seleccionar]
/testfor @a[r=5]
-Detectar jugador en un radio respecto a otra entidad
Código: [Seleccionar]
/execute @e[type=Zombie] ~ ~ ~ /testfor @p[r=5]
-Detectar a un jugador en un radio respecto a unas coordenadas
Código: [Seleccionar]
/testfor @a[x=0,y=50,z=0,r=3]

-------- Detectar jugadores con efectos de poción --------


Detectar efectos de poción de jugadores puede ser muy útil, tanto como detectar items en el inventario, siempre que la situación requiera usarlo claro.


Aquí tienéis una lista con todas las id de los efectos de poción:
http://minecraft.gamepedia.com/Status_effect#Summary_of_effects

-Detectar efecto de poción (Comando básico)
Código: [Seleccionar]
/testfor @a {ActiveEffects:[{Id:1b}]}
-Detectar efecto de poción (nivel)
Código: [Seleccionar]
/testfor @a {ActiveEffects:[{Id:1b,Amplifier:0b}]}
 
Varios
Spoiler para ocultar:

---- Detectar jugadores en un team o con un scoreboard. ----


Aunque útil para saber por ejemplo si hay un jugador con cierto score o si esta en un team, debo decir que en este caso el testfor sería un comando transitorio, que serviría para dar señal al siguiente comando. La mayoría de veces en mapas o minijuegos se utiliza el /execute aplicando los mismos selectores de objetivo que utilizare en los siguientes comandos:

-Detectar jugador en un team:
Código: [Seleccionar]
/testfor @p[team=Red]Tanto en este comando como en los demás utilizaré como ejemplo el team "Red"
y el scoreboard: "Muertes"

-Detectar jugador de un team en ciertas coordenadas:
Código: [Seleccionar]
/testfor @a[team=Red,x=0,y=50,z=0,r=3]
-Detectar un jugador de un team con score mínimo:
Código: [Seleccionar]
/testfor @a[team=Red,score_Muertes_min=3]
-Detectar un jugador de un team con puntuación exacta:
Código: [Seleccionar]
/testfor @a[team=Red,score_Muertes=3,score_Muertes_min=3]

-Si dais ideas de ejemplos con /testfor que no encajen en ningún otro apartado los añadiré aquí  ;)


Si tenéis alguna duda, sobre un comando en concreto relacionado con el /testfor, podéis preguntarlo en este mismo post :)
En cambio si tenéis algún consejo, para mejorarlo o añadir algo, prefiero que me lo digáis directamente por mensaje privado, para dejar los comentarios exclusivamente para dudas u otras cosas.

Espero sinceramente que os haya servido de ayuda este post si teníais alguna duda y que os haya gustado  :D :D ya que ha sido bastante tedioso de hacer <3


Linkback: http://minecraftmin.net/index.php?topic=14382.0
« Última modificación: Noviembre 10, 2017, 10:45:06 am por sircripers »
(∩ ͡° ͜ʖ ͡°)⊃━☆゚.*・。゚copy pastus magicae

*
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #1 en: Febrero 14, 2017, 07:02:49 pm »
Gran aportación sir, la verdad ayudaras a mucha gente (incluyéndome :v) que no tenga tanta experiencia con estos comandos
Dejo Mi Wendingo!
*
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #2 en: Febrero 25, 2017, 05:24:07 pm »
Soy nuevo en los comandos, me sirvió  mucho gracias por la ayuda por ahora el mapa necesita estos comando...
*

    Desconectado Kevin190

  • *
  • 46
  • Sexo: Masculino
  • MinecraftMin, soy el mejor toro Español!
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #3 en: Mayo 26, 2017, 06:53:24 pm »
¡Wow, muy currado!
Me encantaría que pusieras para qué versión son estos comandos.  :D
*

    Conectado sircripers

  • *
  • 147
  • Sexo: Masculino
  • ñeñeñe? ⎝(。◁゚)⎠
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #4 en: Mayo 27, 2017, 04:10:03 pm »
¡Wow, muy currado!
Me encantaría que pusieras para qué versión son estos comandos.  :D
Menos uno o dos todos deberían poder usarse a partir de la 1.8, por ejemplo:

Detectar coordenadas en la 1.11
Código: [Seleccionar]
/testfor @a[x=0,y=50,z=0,r=3]en la 1.8 - 1.10 era así:
Código: [Seleccionar]
/testfor @a[0,50,0,r=3]
« Última modificación: Mayo 27, 2017, 04:15:58 pm por sircripers »
*
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #5 en: Septiembre 18, 2017, 10:37:14 pm »
esto sirve en la version 1.12.2  ??
ola k ase
*

    Conectado sircripers

  • *
  • 147
  • Sexo: Masculino
  • ñeñeñe? ⎝(。◁゚)⎠
Re:[Aportación] Todo sobre el comando /testfor
« Respuesta #6 en: Septiembre 18, 2017, 11:25:41 pm »

Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

xx
Todo sobre el comando /replaceitem

Iniciado por KaliNuska

5 Respuestas
4349 Vistas
Último mensaje Septiembre 25, 2014, 03:43:42 pm
por Grovyle
smiley
[Tutorial] Todo sobre el comando /tellraw

Iniciado por CreepyPandi

0 Respuestas
797 Vistas
Último mensaje Junio 26, 2016, 02:28:19 pm
por CreepyPandi
question
AYUDA SOBRE TESTFOR U OTROS COMANDOS

Iniciado por Lexiont12

2 Respuestas
915 Vistas
Último mensaje Junio 28, 2014, 06:34:26 am
por thecalin
xx
Ayuda con el comando Testfor

Iniciado por Juands7

3 Respuestas
845 Vistas
Último mensaje Marzo 07, 2015, 04:11:24 am
por xXDerpyTrollerXx