"> Foro - Detectar vida de un mob especifíco (con nombre) en Bloques de comandos - Page 1 of 1
Junio 16, 2024, 08:01:05 pm
Visitante

Autor Tema:  Detectar vida de un mob especifíco (con nombre)  (Leído 4038 veces)

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

Mayo 14, 2016, 08:10:35 pm

zizau




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan las neveras
  • Actividad

  • 0%
  • Logros

Más información

Hola, estoy haciendo un mob, y que con nombre y me gustaría que según el nivel de vida (como si fuera el scoreboard de health, pero con mobs en vez de jugadores), pueda hacer unas cosas u otras.
Por ejemplo: Tengo un cerdo que se llama Ricardo y tiene 100 puntos de vida (50 corazones). Me gustaría que cuando spawnease no tuviese ningún efecto y que después de golpearlo unas cuantas veces, al llegar a 50 de vida, obtuviese el efecto de resistencia.

Espero que alguien lo sepa hacer c:

Un saludo  :)

Linkback: https://minecraftmin.net/index.php?topic=12987.0


Respuesta #1 Mayo 14, 2016, 10:26:30 pm

Zekdax




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    100% personalizado
  • Actividad

  • 0%
  • Logros

Más información

Se puede hacer de dos formas, yo te voy explicar una y la otra te voy a dejar un link que la explican muy bien (aunque esta en inglés). Bueno nada más que decir, empecemos:
  • Con la NTB tag {Health:0.0f}
Como dice el título, se puede detectar la vida de un mob. Ahora para empezar necesitamos un scoreboard de tipo dummy que nos va a ayudar bastante con la ejecución de comandos. Yo lo llame "Vida" y quedaría de la siguiente manera:

Código: [Seleccionar]
/scoreboard objectives add Vida dummy
Ahora con el ejemplo que me dejaste del cerdo "Ricardo", vamos a detectar la vida de Ricardo cuando tenga 50 puntos de vida, sería de esta manera:

Código: [Seleccionar]
/scoreboard players set @e[type=Pig] Vida 1 {CustomName:"Ricardo",Health:50.0f}Pero esto tiene demasiado problemas en la 1.9, ya que a veces las vidas quedan 50.161512 por ejemplo. No tiene un mínimo ni máximo para detectar.

Cuando detecte que tenga esa cantidad de vida entonces le damos el efecto de resistencia al cerdo:

Código: [Seleccionar]
/effect @e[score_Vida_min=1] minecraft:resistance 10 4
  • Con el scoreboard stat.damageDealt
Con este scoreboard, detecta la cantidad de daño que hemos hecho, pero en este caso te voy a dejar un link donde explica muy bien este método (esta en inglés): https://hypixel.net/threads/detect-mob-health.258978/#post-3043405

Eso es todo, cualquier otra duda, con mucho gusto te ayudo.
|| Usuario de MinecraftMin || Científico de comandos y constructor de mapas ||
|| La creatividad no tiene limites ||



Respuesta #2 Diciembre 19, 2017, 09:00:49 pm

Baati




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Redstoner y me encantan los CTM`s,creo minijuegos.
  • Actividad

  • 0%
  • Logros

Más información

Se puede hacer de dos formas, yo te voy explicar una y la otra te voy a dejar un link que la explican muy bien (aunque esta en inglés). Bueno nada más que decir, empecemos:
  • Con la NTB tag {Health:0.0f}
Como dice el título, se puede detectar la vida de un mob. Ahora para empezar necesitamos un scoreboard de tipo dummy que nos va a ayudar bastante con la ejecución de comandos. Yo lo llame "Vida" y quedaría de la siguiente manera:

Código: [Seleccionar]
/scoreboard objectives add Vida dummy
Ahora con el ejemplo que me dejaste del cerdo "Ricardo", vamos a detectar la vida de Ricardo cuando tenga 50 puntos de vida, sería de esta manera:

Código: [Seleccionar]
/scoreboard players set @e[type=Pig] Vida 1 {CustomName:"Ricardo",Health:50.0f}Pero esto tiene demasiado problemas en la 1.9, ya que a veces las vidas quedan 50.161512 por ejemplo. No tiene un mínimo ni máximo para detectar.

Cuando detecte que tenga esa cantidad de vida entonces le damos el efecto de resistencia al cerdo:

Código: [Seleccionar]
/effect @e[score_Vida_min=1] minecraft:resistance 10 4
  • Con el scoreboard stat.damageDealt
Con este scoreboard, detecta la cantidad de daño que hemos hecho, pero en este caso te voy a dejar un link donde explica muy bien este método (esta en inglés): https://hypixel.net/threads/detect-mob-health.258978/#post-3043405

Eso es todo, cualquier otra duda, con mucho gusto te ayudo.

Con respecto al segundo método, el que pusiste del link, no detecta la vida de un mob en ESPECIFICO, (como lo pidió el del post) porque el scoreboard damagedealt detecta cuánto daño le haces a cualquier mob, entonces le va a restar el puntaje de scoreboard al mob que quieres detectarle la vida un golpe A CUALQUIER MOB, no necesariamente a ese. ¿Y si alguien está en un jefe donde hay muchos mobs, sin embargo por pegarles a los demás se le modifica el score de vida al armor stand? (debido a que en la página spwneó un armor stand para guardar el scoreboard dummy de vida).

En cuanto al primer método, no sirve de nada porque nunca le dejarás la vida justa que pones en el comando para detectarla, debe ser 1 entre 100 casos, pero la pregunta era que detecte a partir de un valor de vida hacia abajo.
« Última modificación: Diciembre 19, 2017, 09:17:40 pm por Baati »




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
Detectar un item en la mano con un nombre en especifico ?

Iniciado por EndoPlay

4 Respuestas
2826 Vistas
Último mensaje Enero 07, 2017, 01:02:41 pm
por sircripers
question
Cómo detectar items con nombre específico en el suelo

Iniciado por MinePixel44

2 Respuestas
3630 Vistas
Último mensaje Enero 22, 2016, 08:01:58 pm
por MinePixel44
sad
¿Como detectar un objeto "ESPECIFICO" en la cabeza y detectar aire en el mismo?

Iniciado por Limongr

2 Respuestas
2585 Vistas
Último mensaje Julio 09, 2018, 04:44:17 am
por Limongr
question
Detectar a un jugador específico

Iniciado por Mixteriox

11 Respuestas
7401 Vistas
Último mensaje Mayo 20, 2014, 10:02:33 pm
por Mixteriox