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

Quand les commands blocks rejoint la programmation ...

Discussion dans 'Tutoriels' créé par WTCYoStunt, 3 Sept 2014.

  1. WTCYoStunt

    WTCYoStunt Bûcheron

    Inscrit:
    31 Jan 2014
    Messages:
    174
    Points:
    56
    Sexe:
    Homme

    AAhhh, après 2 bon mois de vacances, j'ai bien envie de me pencher sur ce que devient Minecraft. J'ai vite compris que les commandes ~= programmation :). Ici, je vais vous montrer les bases de la programmation et son équivalent dans Minecraft (le code que je vais utiliser sera le Basic qui semble pour moi le programme le plus proche des commandes de Minecraft)

    LE PROGRAMME
    D'abord définissons un programme. Un programme a pour but de marcher, simplement. Mais ! un programme est aussi une suite d'actions bien définies. On inverse 2 actions PAF on a un mauvais résultat !

    Exemple :
    Ici, je fais 2 actions :
    Code (cpp):
    Téleporter-le-joueur-en(1,2,3);
    Téleporter-le-joueur-en(5,6,7);
    Le joueur se téléporte en 1, 2, 3 puis en 5, 6, 7. Si on inverse ces 2 actions :
    Code (cpp):
    Téleporter-le-joueur-en(5,6,7);
    Téleporter-le-joueur-en(1,2,3);
    Le résultat sera différent : Il sera téléporté en 5, 6, 7 puis en 1, 2, 3.

    LES VALEURS
    Minecraft, depuis l'ajout des scoreboard, permet de manipuler les valeurs.
    Pour pouvoir les manipuler, il faut créer une "liste" -> le scoreboard.
    On fait :
    Code (cpp):
    /scoreboard objectives add <nom de votre liste> dummy
    Ensuite, pour pouvoir créer une valeur, il faut écrire :
    Code (cpp):
    /scoreboard players set <le nom de la valeur> <le nom du scoreboard créé> <la valeur initiale>
    VOUS NE POUVEZ SPÉCIFIER QUE DES NOMBRES ENTIERS POSITIFS OU NÉGATIFS !
    LES VALEURS DANS MINECRAFT SONT TOUJOURS ENTIERES. EN CAS D’OPÉRATION QUI INCLUS UN RÉSULTAT DÉCIMAL, MINECRAFT L'ARRONDIRA .

    Et son équivalent en B :
    Code (cpp):
    var <le nom de la valeur> = <la valeur initiale>
    Astuce : Pour pouvoir bien utiliser des valeurs, pensez à créer plusieurs listes.
    Les opérateurs
    Dans Minecraft c'est un peu plus compliqué de modifier une valeur.
    Par comparaison, si vous voulez créer une valeur égale à 4, ajouter 2, enlever 8, multiplier par 2 et diviser par 5. Sur Minecraft c'est un peu plus long.
    Ce code en B :
    Code (cpp):
    var valeur=4;
    valeur = valeur + 2;
    valeur = valeur - 8;
    valeur = valeur * 2;
    valeur = valeur / 5;
    valeur vaudra -0.6
    Dans Minecraft, il est possible d'ajouter ou d'enlever à une valeur un nombre (+ et - / add et remove). Mais pour les divisions et les multiplications, il faudra utiliser une commande de la 1.8 : /scoreboard players operation en utilisant les valeurs d'une autre liste.
    Sur Minecraft, les actions seront :
    Code (cpp):
    /scoreboard objectives add Liste dummy
    /scoreboard objectives add Aide dummy
    /scoreboard players set aideMult Aide 2
    /scoreboard players set aideDiv Aide 5
    /scoreboard players set valeur Liste 4
    /scoreboard players add valeur Liste 2
    /scoreboard players remove valeur Liste 8
    /scoreboard players operation valeur Liste *= aideMult Aide
    /scoreboard players operation valeur Liste /= aideDiv Aide
    valeur dans Liste vaudra -1 (voir au dessus)
    La partie que vous venez de lire est pour les valeurs que vous choisissez.
    Si ce sont des valeurs qui ont des valeurs changeantes, vous devrez écrire :
    Code (cpp):
    /scoreboard players operation valeur Liste += ou -= <la valeur à ajouter ou à soustraire>


    LES CONDITIONS
    Maintenant, on va parler des conditions. Juste de "if" car "else" est l'inverse de "if".
    Code (cpp):
    if (valeur1 == valeur2) {
    --Actions--
    }
    La commande à utiliser pour la condition sera :
    Code (cpp):
    Pour {valeur1} > {valeur2}  /scoreboard players test <valeur> <liste> 1
    Pour {valeur1} => {valeur2} /scoreboard players test <valeur> <liste> 0
    Pour {valeur1} < {valeur2}  /scoreboard players test <valeur> <liste> -2147483648 -1
    Pour {valeur1} =< {valeur2} /scoreboard players test <valeur> <liste> -2147483648 0
    Pour {valeur1} == {valeur2} /scoreboard players test <valeur> <liste> 0 0
    Donc pour pouvoir faire une condition, il faudra donc créer une valeur "temporaire" qui sera égale à la première valeur, soustraire la première valeur à la seconde comme suit puis mettre sa condition.
    Code (cpp):
    /scoreboard players operation {temp} = {valeur1}
    /scoreboard players operation {valeur1} -= {valeur2}
    --La condition--
    /scoreboard players operation {valeur1} = {temp}
    Et voili, voilou ;)

    Ce topic est une ébauche et n'est pas terminé. Si vous avez des conseils/questions/problèmes/avis, répondez simplement à ce topic.
     
    • Utile Utile x 3
    #1 WTCYoStunt, 3 Sept 2014
    Dernière édition: 4 Sept 2014
  2. damien941

    damien941 Enter the World

    Inscrit:
    2 Sept 2014
    Messages:
    39
    Points:
    20
    Sexe:
    Homme
    Merci beaucoup pour cet article ! :)
    étant moi-même en quelques sortes "un noob" en commands blocs.cet article m'aidera beaucoup.
    Merci beaucoup de vous engager dans le bien de la communauté pour venir en aide aux nouveaux joueurs.
    bravo !
     
  3. Jodge

    Jodge Explorateur

    Inscrit:
    13 Oct 2013
    Messages:
    65
    Points:
    89
    Sexe:
    Homme
    Honnêtement, les commande block, c'est vraiment le bordel, et qu quelqu'un s'y penche faire "un tuto" entre guillemet, c'es super ! Si tu pouvais rajouter des screen du rendu ig, ca pourrai égayer un peu. Par contre t'es sur qu'il n'y a pas de moyen de faire de multiplication avant 1.8 ? Il fallais juste utilise "x" au lieu de "*" ?

    Juste un conseille : change le titre (ou ajoute "commande block" quelque part), parce que "Quand minecraft rejoint la programmation", on s'attend plus a un tuto sur le modding que sur les commandes block, et c'est dommage parce que beaucoup de gens vont passer a coté ...

    Ha et un dernier détaille, (pour le moment du moins) la "programmation" que tu a faite... Bha c'est plus du "Basic" (celui utilisé pour les calculette Lycée) adapté a la sauce Minecraft
     
  4. WTCYoStunt

    WTCYoStunt Bûcheron

    Inscrit:
    31 Jan 2014
    Messages:
    174
    Points:
    56
    Sexe:
    Homme
    Merci de ta réponse, je vais changer le titre et ajouter des images dès que je pourrais
     
  5. Zouzaka

    Zouzaka Enter the World

    Inscrit:
    15 Mar 2013
    Messages:
    18
    Points:
    57
    Sexe:
    Homme
    Merci beaucoup pour ce tutoriel =D
     

Partager cette page