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 comment detecter un joueur qui prend des degats ?

Discussion dans 'Commands blocks & Redstone' créé par diabloxe, 26 Jan 2018.

  1. diabloxe

    diabloxe Nouveau

    Inscrit:
    26 Jan 2018
    Messages:
    2
    Points:
    10
    Sexe:
    Homme
    Bonjour,
    je cherche depuis ce matin mais je suis pas très douer niveau bloc de commande ! j'aimerais de l'aide pour pouvoir crée ces actions avec des blocs de commande : ( pour l'exemple imaginons ici que l'on parle de l’équipe " rouge " constituer de deux joueurs avec des rôles prédéfini )
    les commandes doivent détecter si le joueur 1 perd des vies. Si il en perd, le joueur 2 doit perdre le même nombre de vie. ( la commande ne doit pas être exécutable dans l'autre sens, si le joueur 2 perd de la vie le joueur 1 n en perd pas )

    merci de vos réponses futur et dsl pour l’orthographe :love:
     
  2. Lighar

    Lighar Explorateur

    Inscrit:
    15 Nov 2014
    Messages:
    74
    Points:
    78
    Sexe:
    Homme
    Salut,

    Ici, on peut le score damage Taken, premièrement tu créer un score :
    /scoreboard objectives add Dégats stat.damageTaken

    Je sais pas si tu as donné des scores ou des teams à tes joueurs mais je vais dire qu'ici ils sont dans une team

    Chaque fois qu'un joueur prends un demi cœur son score augmente de 10

    Là, tu peux faire une chaine de commande block avec en première commande un commande block en répétition :

    /execute @e[team=Joueur1,score_Dégats_min=10,score_Dégats=10] ~ ~ ~ effect @a[team=Joueur2] minecraft:wither 1 1 true

    Ici si le joueur de la team Joueur1 prends 1 demi cœur sois 10 dans le score il inflige à celui de la team Joueur2 un effet de wither qui enlève 1 demi cœur, il faut faire ça avec les autres dommages reçus ensuite :

    /execute @e[team=Joueur1,score_Dégats_min=20,score_Dégats=20] ~ ~ ~ effect @a[team=Joueur2] minecraft:wither 1 2 true


    Tu répète l'action pour tous les dommages

    Pour finir tu mets une commande qui remets le score de tous les Joueur1 à 0 qui évite une répétition de l'effet :
    /scoreboard players reset @a[team=Joueur1] Dégats

    L’idéal serrait de mettre toutes les commandes dans une fonction si tu les maîtrise car celle-ci créer moins de lag

    En espérant avoir pu t'aider
     
  3. diabloxe

    diabloxe Nouveau

    Inscrit:
    26 Jan 2018
    Messages:
    2
    Points:
    10
    Sexe:
    Homme
    ha !! merci bcp :)
     
  4. Lighar

    Lighar Explorateur

    Inscrit:
    15 Nov 2014
    Messages:
    74
    Points:
    78
    Sexe:
    Homme
    Content d'avoir pu aider :)
     

Partager cette page