1. Le forum de Minecraft-France va définitivement fermer ses portes. Celui-ci restera en lecture seule mais vous ne pourrez plus y apporter de nouveaux topics. Nous vous invitons à nous rejoindre sur le Discord de Minecraft-France qui permet de présenter vos projets, discuter avec la communauté etc.. Merci à tous d'avoir fait vivre ce forum de nombreuses années. Pour nous rejoindre sur Discord, Cliquez ici

Résolu Je cherche à Immobiliser un mob mais seulement hors de porté d'aggro

Discussion dans 'Commands blocks & Redstone' créé par horrak51, 21 Oct 2018.

  1. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Bonjour tout est dans le titre, je fais actuellement un map aventure sur le theme de dark souls mais mon problème est que je voudrais immobiliser mon mob mais seulement hors de porté d'aggro car je ne veut pas qu'il se balade dans la map aléatoirement et donc juste retirer l'IA ne m'intérèsse pas car je veux qu'il continu à être agressif. Merci de vos réponses
     
    #1 horrak51, 21 Oct 2018
    Dernière édition: 21 Oct 2018
  2. ph1823

    ph1823 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    12
    Sexe:
    Homme
    Salut ! As-tu tenté un /effect @e[r=X] slowness (c'est pas exatement) qui est activer par un commande block qui détecte si le joueur regarde dans la direction du mob? (c'est possible que en 1.12/1.13 par contre il me semble)
     
  3. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Yo merci de ta réponse mais ducoup le joueur sera ralenti aussi après je ne sais pas si il y a une commande du style /effect @e [type=!player] [r=X] speed en ajoutant un effet de base de slwness sur tout mes mobs ce qui les rendra très lent si le joueur est loin. Je vais test et je te redis ;)
     
  4. rexmine05

    rexmine05 Explorateur

    Inscrit:
    21 Fev 2017
    Messages:
    56
    Points:
    82
    Salut, tu peux utiliser cette commande pour désactiver leur IA si il sont suffisamment loin des joueurs
    Code (cpp):
    /execute @a ~ ~ ~ /entitydata @e[rm=X] {NoAI:1b}
    Et celle là pour leur remettre
    Code (cpp):
    /execute @a ~ ~ ~ /entitydata @e[r=X] {NoAI:0b}
    Par contre je ne sais pas si ca fonctionne si ta map est en multi
     
  5. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Yo, ma map est en solo et merci pour ton idée mais je suis passé en 1.13 donc la j'essai de convertir tes commandes en 1.13 mais le entitydata a été supprimé.. ducoup pour linstant je suis a un truc du genre

    /execute as @e run data merge entity @p[distance=..X] {NoAI:1b}
    /execute as @e run data merge entity @p[distance=..X] {NoAI:0b}

    mais je sais pas ca ne marche pas -.-

    ducoup j'essaye encore de trouver je te redis
     
  6. rexmine05

    rexmine05 Explorateur

    Inscrit:
    21 Fev 2017
    Messages:
    56
    Points:
    82
    désolé je ne connais pas les commandes 1.13 mais dans celles que tu as fait en haut, j'ai mis en gras la correction que je te propose.
    /execute as @a run data merge entity @e[distance=..X] {NoAI:1b}
    /execute as @a run data merge entity @e[distance=..X] {NoAI:0b}

    Parce que c'est les joueurs qui exécutent la commande et parce qu'on veut que la commande s'applique a des mobs.

    Enfait je ne sais pas si le tag NoAI existe encore en 1.13 parce que moi non plus ca ne fonctionne pas
     
    #6 rexmine05, 26 Oct 2018
    Dernière édition: 26 Oct 2018
  7. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Merci mais je ne sais pas pourquoi mais après le data merge entity qui remplace le /entitydata la commande n'accepte que le @p et le @s ducoup j'essaye de voir comment faire
     
  8. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Ta commande marche nickel en 1.12
    /entitydata @e {NoAI:1b}
    /execute @a ~ ~ ~ /entitydata @e[r=15] {NoAI:0b}
    pour que les mobs regagnes leur IA quand le joueur est à 15blocks mais impossible de le faire en 1.13 je crois..
     
  9. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Bon j'ai trouvé une alternative comme j'avais dis avant je vais mettre un effet de slowness a tout mes mobs et
    rajouter en répétition :

    /execute at @a run effect give @e[distance=..X,type=!player] speed 5 X false

    Comme sa dès que le joueur s'approche des mobs ils récupèrent leur vitesse "normal", merci je met en résolu.
     
  10. rexmine05

    rexmine05 Explorateur

    Inscrit:
    21 Fev 2017
    Messages:
    56
    Points:
    82
    j'ai fait plusieurs test en 1.13 et j'ai remarqué deux choses

    - on ne peut pas faire un /data sur plusieurs entités donc, il n'y a qu'une seule entité qui est immobilisée
    - le sélecteur distance ne fonctionne pas

    je cherche un moyen de contourner le problème
     
  11. rexmine05

    rexmine05 Explorateur

    Inscrit:
    21 Fev 2017
    Messages:
    56
    Points:
    82
    ok tant pis pour l'autre moyen (pourquoi ils ont changés les commandes en 1.13:'()
     
  12. horrak51

    horrak51 Nouveau

    Inscrit:
    21 Oct 2018
    Messages:
    7
    Points:
    0
    Sexe:
    Homme
    Ouai je ne sais pas c'est super chiant -.- merci de ton aide !
     

Partager cette page