Résolu Problème pour détecter un mob en FEU 1.10

Cyb631

• Vel'Toz •
26 Juillet 2016
3
0
2
26
Bonjour à tous
J'ai mal à ma redstone...
Enfin plus à mes command_blocks plutôt ^^

Le problème étant que je n'arrive pas à détecter si un mob est en feu ou pas
le système étant le suivant :
Tirer une flèche depuis une source de lave (J'ai vérifié la flèche est bien feu) sur un Silverfish sans IA (Intelligence Artificielle)
Je voudrais que le système détecte si le Silverfish qui est totalement inactif (NO IA) est en feu, si oui il meurs
Mais...
J'arrive pas du tout à le détécter

J'ai testé plusieurs commandes :

/testfor @e[type=Silverfish,r=5] {Fire=-1s}
/testfor @e[type=Silverfish,r=5] {Fire=0s}
/testfor @e[type=Silverfish,r=5] {Fire=200s}
/testfor @e[type=Silverfish,r=5] {InData:51b}
Rien n'y fait ça ne marche pas
Le Silverfish des fois est détecté, en feu, il l'est aussi
Enfin bref..

AIDEZ MOI JE BLOQUE !
 
Bonjour,

Tu ne pas détecté d'entité en feu car tu ne sais pas exactement combien de temps il va encore bruler. J'aurais essayer de passer par le contraire. Une entité non enflammé possède la tag {Fire:-1s} sauf l'ArmorStand qui possède {Fire:0s} (je ne sais pas pourquoi !). Il te faut juste créer un scoreboard dans lequel tu définie un score de 1 sur une clock rapide par exemple, à toute les entités. Ensuite plus loin dans cette clock tu reset toutes les entités avec le tag {Fire:-1s} ou {Fire:0s} (si c'est un ArmorStand). Ainsi toutes les entités en feu posséderons un score de 1.

J'espère t'avoir aider !
 
  • J'aime
Reactions: Cyb631
Ah ouais merci à toi pour ton aide

Tu peux juste me mettre la commande si tu l'as steuplé je la trouve pas x)
 
Avec un scoreboard dummy du nom de "Fire":
scoreboard players set @e Fire 1
scoreboard players reset @e {Fire:-1s}
kill @e[type=Silverfish,score_Fire_min=1,score_Fire=1]

Puisque que tu es en 1.10 tu peux aussi utiliser les tags :
scoreboard players tag @e add Fire
scoreboard players tag @e remove Fire {Fire:-1s}
kill @e[type=Silverfish,tag=Fire]
 
Dernière édition:
Une entité non enflammé possède la tag {Fire:-1s}
Dans ce cas, une entité dont le Fire n'est pas de -1s est en feu, on peut donc la détecter avec
/testfor @e[type=Silverfish,r=5,Fire=!-1s]
plutôt qu'avec les tableaux de score.
 
Bonjour,

Hélas ce que tu propose n'est pas correct, tu ne peux pas mettre dans les conditions d'une l'entité [Fire=-1s] car ce paramètre n'est disponible seulement en tant que dataTag comme on peut le trouver avec les commandes suivantes : entitydata @e {Frire:-1s} ou scoreboard players set @e Test 1 {Fire:-1s}
Nous sommes donc obligé d'utiliser un scoreboard !
 
Bonjour,

Hélas ce que tu propose n'est pas correct, tu ne peux pas mettre dans les conditions d'une l'entité [Fire=-1s] car ce paramètre n'est disponible seulement en tant que dataTag comme on peut le trouver avec les commandes suivantes : entitydata @e {Frire:-1s} ou scoreboard players set @e Test 1 {Fire:-1s}
Nous sommes donc obligé d'utiliser un scoreboard !
Je ne comprends pas, les conditions d'un /testfor sont bien des data tags, non ?
 
Non, ce sont deux choses différentes par exemple tu ne pas mettre : entitydata @e {r=5} ou tp @e[ench:[{id:0,lvl:3}]]
Les conditions du sélecteur (@e[r=5,type=Zombie]) permette de sélectionner un échantillon précis parmi plusieurs entités. On le reconnaît car il se trouve entre crochets et possède le signe égal ( = ). Voir http://minecraft.fr/forum/threads/tutoriel-complet-les-sélecteurs-1-8-et.181328/
Tandis que les dataTags ({NoAI:1b}) sont des données qui permette de changer une entité et qui se trouve donc entre accolades et qui s'écrivent avec deux points ( : ). Voir http://minecraft.gamepedia.com/Tutorials/Command_NBT_tags
Voilà en espérant que tu ais bien compris la différence !