Publicité
Vous avez toujours voulu apprendre à coder mais vous ne saviez pas par où commencer? Apprenez à contrôler Minecraft sur le Raspberry Pi en utilisant Python et quelques composants électroniques simples. Voici le résultat final:
Vous aurez besoin d'un Pi 2 ou plus récent pour ce projet, et bien que vous puissiez effectuer la plupart de ces tâches via la ligne de commande via Secure Shell (SSH), ce didacticiel se concentrera sur le codage directement sur le Pi.
Nouveau sur Minecraft? Ne vous inquiétez pas, voici notre Guide du débutant Minecraft Le (retardataire) Guide du débutant de MinecraftSi vous êtes en retard à la fête, ne vous inquiétez pas - ce guide complet pour débutant vous couvre. Lire la suite .
Introduction à Minecraft Pi

Minecraft pour le Raspberry Pi a été développé pour l'apprentissage et le bricolage (et c'est gratuit). Il est livré avec une interface de programmation d'application (API) qui permet au code de parler facilement à Minecraft. C'est génial pour apprendre à coder en Python, ainsi que
se lancer dans l'électronique Électronique pour débutants: 10 compétences que vous devez savoirBeaucoup d'entre nous n'ont même jamais touché un fer à souder - mais faire des choses peut être incroyablement gratifiant. Voici dix des compétences en électronique de bricolage les plus élémentaires pour vous aider à démarrer. Lire la suite .Qu'est-ce que Python?
Python est un langage de programmation. Il est interprété, ce qui signifie que lorsque vous exécutez un fichier ou un programme Python, l'ordinateur doit d'abord effectuer un petit travail sur le fichier. L'inconvénient est qu'il peut être considéré comme lent par rapport à langues compilées.
Les avantages des langages interprétés sont la vitesse de codage et leur convivialité. Vous n'avez pas besoin de le dire à l'ordinateur quoi les données que vous souhaitez stocker, juste que vous voulez stocker quelque chose et l'ordinateur saura quoi faire. Il y a des exceptions, bien sûr, et c'est une vue quelque peu simplifiée, mais la programmation devrait être amusante! Si vous commencez à creuser dans les détails techniques complexes, cela peut devenir un peu laborieux.
Python est sensible à la casse. Ceci est important à savoir, car Python ne reconnaîtra pas les objets même s'ils sont correctement orthographiés si l'affaire est fausse. «Dosomething ()» ne fonctionnera pas si la méthode est réellement appelée «DoSomething ()». Python utilise également l'indentation. D'autres langages de programmation peuvent ne pas se soucier du nombre de retraits de votre code, tandis que Python Est-ce que se soucier. Les retraits sont utilisés pour indiquer à Python où appartient le code. D'autres langages peuvent utiliser des «accolades» ({}) pour grouper le code - Python ne les utilise pas. Python utilise un hachage (#) pour les commentaires, et les commentaires sont utilisés pour dire aux autres développeurs ou personnes qui consultent le code ce qu'une partie particulière fait, ou pourquoi elle est nécessaire. Python ignore tout après un hachage.
Enfin, il existe deux versions principales de Python - Python 2.7.x et Python 3.x. Il existe quelques différences entre les deux (quelles sont les différences?). Ce tutoriel utilisera Python 3.
La configuration initiale
Fournir votre Pi est déjà configuration et exécution de Raspbian Comment installer un système d'exploitation sur un Raspberry PiVoici comment installer un système d'exploitation sur votre Raspberry Pi et comment cloner votre configuration parfaite pour une reprise après sinistre rapide. Lire la suite , il n'y a pas beaucoup de configuration initiale nécessaire.
Terminal ouvert (Menu> Accessoires> Terminal) et exécutez cette commande. Il est toujours recommandé de maintenir la liste des référentiels à jour, et cela téléchargera la dernière liste des programmes (il ne téléchargera pas les programmes eux-mêmes, cela aide le Pi à savoir quels programmes sont appelés et où les trouver leur).
mise à jour sudo apt-get.
Maintenant, mettez à jour le Pi (cela peut prendre un certain temps):
mise à niveau sudo apt-get.
Python et Minecraft Pi sont déjà installés, mais si Minecraft Pi n'est pas installé pour une raison quelconque, c'est simple à installer 5 façons d'installer un logiciel sur Raspberry PiPour faire quoi que ce soit avec un Raspberry Pi, vous aurez besoin de savoir comment installer un système d'exploitation et un logiciel pour l'exécuter. Si vous débutez avec Linux, cela peut être intimidant. Lire la suite :
sudo apt-get install minecraft-pi
Accédez aux documents et créez un nouveau dossier appelé «Minecraft»:
cd Documents / mkdir Minecraft
Vous pouvez afficher le contenu de ce nouveau dossier:
ls
Voici un conseil: si vous commencez à taper et à appuyer sur la touche TAB, la ligne de commande tentera de compléter automatiquement l'instruction pour vous.
Vous pouvez examiner le chemin d'accès au répertoire actuel à l'aide de pwd, qui signifie Print Working Directory:
pwd
Démarrez Minecraft en allant sur Menu> Jeux> Minecraft Pi. Vous en aurez besoin, mais vous y reviendrez plus tard.
Ouvrez Python 3 à partir de Menu> Programmation> Python 3 (IDLE). Ce programme vous permet d'exécuter des commandes Python et d'écrire des programmes.
Vous pouvez maintenant taper vos commandes Python ici, mais ce n'est pas très pratique. Aller à Fichier> Nouveau fichier puis Fichier> Enregistrer et enregistrez-le dans le dossier que vous avez créé précédemment. (Documents> Minecraft). Appelons cela "hello_world.py“. Vous n'êtes pas obligé d'utiliser l'extension .py, elle sera ajoutée automatiquement, mais c'est une bonne pratique.
Si vous revenez au terminal et naviguez dans le dossier Minecraft, vous devriez voir le fichier que vous venez de créer:
cd Minecraft / ls
Vous pouvez exécuter ce fichier comme ceci:
python hello_world
Remarquez comment «python» est tout en minuscules. Cela doit être avant le nom du fichier, car il indique au Pi que le fichier suivant est Python, il doit donc être exécuté en tant que tel.
Revenez à l'éditeur Python et tapez:
imprimer "Bonjour tout le monde!"
Enregistrez ce fichier et exécutez-le à nouveau - vous devriez maintenant voir "Bonjour, monde!" apparaître dans la ligne de commande - soigné! La commande print indique simplement à Python de sortir le texte suivant entre guillemets. C'est bien, mais pas terriblement utile pour Minecraft, relions-le:
à partir de mcpi.minecraft importation Minecraft mc = Minecraft.create () mc.postToChat ("Bonjour tout le monde!")
Maintenant, si vous enregistrez et exécutez ce fichier, vous devriez voir "Hello, World!" apparaissent dans le jeu Minecraft. Décomposons le code:
depuis mcpi.minecraft, importez Minecraft
Cette ligne indique à Python que vous souhaitez utiliser le code d'un autre fichier. Ce fichier mcpi.minecraft a été développé pour permettre un contrôle facile de Minecraft.
mc = Minecraft.create ()
Cette ligne crée un objet appelé «mc» (Minecraft). Vous devez créer cela pour permettre la communication avec le jeu Minecraft - il ne suffit pas d'inclure le fichier.
mc.postToChat ("Bonjour tout le monde!")
Enfin, cette ligne indique à Minecraft d'écrire du texte dans le chat. Essayez de changer "Bonjour, monde!" à autre chose et voyez ce qui se passe, mais n'oubliez pas d'inclure les deux guillemets. Si vous rencontrez des problèmes logiciels, voici quelques erreurs Python et Minecraft Pi courantes:
- AttributeError - c'est une faute de frappe, comme pint ou prnt au lieu de print
- NameError: le nom ‘Minecraft’ n’est pas défini - pensez à importer les modules dont vous avez besoin
- NameError: le nom «true» n'est pas défini - Python est sensible à la casse, changez en «True»
- socket.error: [Errno 111] Connexion refusée - Assurez-vous que Minecraft est en cours d'exécution
Projets
Maintenant que vous connaissez les bases de Python et Minecraft, réalisons quelques projets sympas. Tous les codecs peuvent être téléchargés depuis Github.
Constructeur de ponts automatisé

Ce programme construira efficacement un pont au-dessus de l'eau. Lorsque le joueur s'approche d'une étendue d'eau, le programme convertit plusieurs blocs en pierre. Comme Minecraft utilise un système de coordonnées, il est très facile d'obtenir l'emplacement du joueur, ainsi que le type de blocs autour du joueur. Minecraft Pi est légèrement limité, il n'est donc pas possible de mettre à jour plusieurs blocs différents en bloc. Cependant, vous pouvez facilement coder ce comportement vous-même.
Créez un nouveau fichier (Fichier> Nouveau fichier) et enregistrez-le sous "bridge_builder.py“.
depuis mcpi.minecraft, importez Minecraft. mc = Minecraft.create () # créer un objet Minecraft tandis que True: x, y, z = mc.player.getPos () # stocker la position du joueur # stocker les blocs environnants a = mc.getBlock (x, y - 1, z + 1) b = mc.getBlock (x, y - 1, z - 1) c = mc.getBlock (x - 1, y - 1, z) d = mc.getBlock (x + 1, y - 1, z) si a == 8 ou a == 9 ou b == 8 ou b == 9 ou c == 8 ou c == 9 ou d == 8 ou d == 9: # 8 ou 9 est l'eau. Définissez les blocs environnants sur le sol sur un solide (pierre) si de l'eau est trouvée mc.setBlocks (x, y - 1, z, x + 1, y - 1, z + 1, 1) mc.setBlocks (x, y - 1, z, x - 1, y - 1, z - 1, 1) mc.setBlocks (x, y - 1, z, x - 1, y - 1, z + 1, 1) mc .setBlocks (x, y - 1, z, x + 1, y - 1, z - 1, 1)
Remarquez comment la valeur y regarde réellement y - 1. Ceci est le niveau du sol. Si la valeur de y était utilisée, le script rechercherait des blocs à peu près au niveau du genou - cela ne fonctionnerait pas très bien! Mc.getBlock () renvoie l'id d'un bloc pour les coordonnées données. Comme x, y et z sont les coordonnées du joueur, vous pouvez en ajouter ou en soustraire pour obtenir des positions autour du joueur. Vous n'avez pas besoin d'utiliser les valeurs x, y et z, vous pouvez utiliser n'importe quel nombre, mais vous ne savez peut-être pas comment ce bloc particulier se rapporte au joueur - il est préférable d'utiliser des valeurs relatives au joueur. Exécutez ce fichier à partir de la ligne de commande et voyez ce qui se passe.
Vous devriez voir qu'une petite zone de sol se transforme en pierre une fois que le joueur atteint un plan d'eau. Ce n’est pas génial - vous pouvez marcher assez vite pour causer un problème. Vous pouvez résoudre ce problème en convertissant un plus grand volume d'eau en terre. La dernière partie de la méthode mc.setBlocks () est l'ID de bloc. L'un est l'identifiant du bloc pour la pierre. Vous pouvez changer cela en bois, en herbe ou quoi que ce soit. Si vous le souhaitez, vous pouvez facilement le convertir en un design complexe - peut-être un pont suspendu!
Bouton Super Mining

Cet exemple rendra l'exploitation minière courte. Il se compose d'un bouton physique qui, une fois enfoncé, extraira 10 cubes en cubes. Commençons par le bouton. Semblable aux boutons de l'Arduino, vous aurez besoin d'une petite quantité d'électronique, qui devraient toutes être trouvées dans un kit de démarrage de base Que contient votre kit de démarrage Arduino? [Débutants Arduino]Face à une boîte pleine de composants électroniques, il est facile de se laisser submerger. Voici un guide pour savoir exactement ce que vous trouverez dans votre kit. Lire la suite :
- 1 x planche à pain
- 1 x interrupteur momentané
- 1 résistance de 220 ohms
- Câbles de saut femelle> mâle
- Mâle> Câbles de saut mâle
Voici le circuit:

Cette résistance est appelée une résistance «pull down». Cela aide à s'assurer que ce que pense le Pi est le bouton pressé, c'est vraiment le bouton pressé. Vous n'êtes pas obligé de l'utiliser, mais il est recommandé, car vous pouvez trouver beaucoup de bruit et de fausses lectures sans cela.
Le bouton est connecté à la broche 14 de sortie d'entrée à usage général (GPIO). Vous pouvez utiliser n'importe quelle broche GPIO, mais regardez le brochage tout d'abord, car ils ne sont pas tous contrôlables à partir du Pi et varient légèrement entre les modèles.
Maintenant que le bouton est connecté, il est temps de le tester. Créez un nouveau fichier et enregistrez-le sous "button_test.py“. Ajoutez ce code, enregistrez-le puis exécutez-le dans Terminal.
importer RPi. GPIO comme GPIO. import time GPIO.setmode (GPIO.BCM) # indique au Pi quels en-têtes utiliser. GPIO.setup (14, GPIO.IN) # indique au Pi que cette broche est une entrée alors que True: si GPIO.input (14) == True: # recherchez le bouton, appuyez sur "BUTTON WORKS!" # log result time.sleep (0.5) # wait 0.5 seconds.
presse Contrôle + C pour arrêter le script. Si tout fonctionne correctement, vous devriez voir "BOUTONS FONCTIONNE!" dans le terminal. Remarquez comment, comme le module Minecraft, ce test utilise le RPi. GPIO et modules de temps. Ceux-ci permettent au Pi d'accéder aux broches matérielles et fournissent des fonctions de synchronisation utiles.
Permet maintenant de terminer le reste du code. Créez un nouveau fichier appelé "super_mine.py“. Voici le code:
importer RPi. GPIO comme GPIO. temps d'importation. depuis mcpi.minecraft importez Minecraft mc = Minecraft.create () # créez un objet Minecraft GPIO.setmode (GPIO.BCM) # dites au Pi quels en-têtes utiliser. GPIO.setup (14, GPIO.IN) # indique au Pi que cette broche est une entrée alors que True: si GPIO.input (14) == True: # recherchez le bouton, appuyez sur x, y, z = mc.player.getPos ( ) # lire le lecteur position mc.setBlocks (x, y, z, x + 10, y + 10, z + 10, 0) # mine 10 blocs mc.setBlocks (x, y, z, x - 10, y + 10, z - 10, 0) # mine 10 blocs time.sleep (0.5) # wait 0.5 secondes.
mc.player.getPos () renvoie les coordonnées actuelles des joueurs, qui sont ensuite stockées dans x, y et z. le setBlocks () indique à Minecraft de remplir tous les blocs entre le début et la fin avec le bloc suivant. Zero est l'identifiant de bloc pour l'air. Vous pouvez changer cela en un autre bloc-id pour remplir solidement une zone. Vous pouvez également changer les coordonnées en blocs +100 ou même +1000, mais le Pi peut commencer à avoir du mal si vous devenez trop fou. Remarquez comment y + 10 est le même pour les deux lignes. Vous pouvez changer cela en y - 10 si vous souhaitez supprimer les blocs souterrains.
Téléportation

Une autre utilisation simple de ce bouton pourrait être de «se téléporter». Le Minecraft Pi Api fournit un moyen de définir la position du joueur. Le code suivant «téléportera» le lecteur vers un emplacement prédéfini:
mc.player.setPos (0, 0, 0)
Notez que sa méthode accepte trois paramètres; x, y et z - vous pouvez donc les régler sur n'importe quoi pour téléporter instantanément le joueur à cet endroit.
Créez une copie du fichier super_mine (Fichier> Enregistrer la copie sous) et modifiez-le en remplaçant l'if par ce qui suit:
si GPIO.input (14) == Vrai: # recherchez le bouton, appuyez sur mc.player.setPos (0, 0, 0) # téléportez le joueur time.sleep (0.5) # attendez 0,5 seconde.
Ce fichier devrait maintenant ressembler à ceci:
importer RPi. GPIO comme GPIO. depuis mcpi.minecraft, importez Minecraft. import time mc = Minecraft.create () # create Minecraft Object GPIO.setmode (GPIO.BCM) # indique au Pi quels en-têtes utiliser. GPIO.setup (14, GPIO.IN) # indique au Pi que cette broche est une entrée alors que True: si GPIO.input (14) == True: # rechercher le bouton appuyer sur mc.player.setPos (0, 0, 0) # téléporter le joueur time.sleep (0.5) # attendre 0.5 secondes.
Enregistrez-le sous "teleport.py" et courir.
Vous pouvez constater que le joueur est coincé à l'intérieur de certains blocs lors de son utilisation, auquel cas vous devrez ajuster les coordonnées à un espace ouvert connu (le coin supérieur gauche de l'écran montre votre emplacement).
Construire une maison

Une dernière tâche pour ce bouton est de construire une maison. Tout comme l'exemple d'extraction rapide ci-dessus, cela remplacera simplement les blocs entourant le joueur pour faire une maison. Différents identifiants de bloc seront utilisés pour différents matériaux (fenêtre, murs, etc.). Pour rendre les choses plus faciles à coder, un bloc solide sera créé, puis l'intérieur retiré (définir le bloc à l'air), cela créera une coquille creuse. Vous pouvez ajouter des extras comme un lit ou une porte, mais le projet Minecraft Pi est un peu incomplet, et bien que ces objets fonctionnent lorsqu'ils sont placés par le joueur, ils ne sont pas brillants lors de l'utilisation de Python.
depuis mcpi.minecraft, importez Minecraft. importer RPi. GPIO comme GPIO. import time mc = Minecraft.create () # create Minecraft Object GPIO.setmode (GPIO.BCM) # indique au Pi quels en-têtes utiliser. GPIO.setup (14, GPIO.IN) # indique au Pi que cette broche est une entrée alors que True: si GPIO.input (14) == True: x, y, z = mc.player.getPos () mc.setBlocks ( x + 2, y - 1, z + 2, x + 7, y + 3, z + 8, 5) # make shell mc.setBlocks (x + 3, y, z + 3, x + 6, y + 2, z + 7, 0) # supprimer l'intérieur mc.setBlocks (x + 2, y, z + 5, x + 2, y + 1, z + 5, 0) # faire porte mc.setBlocks (x + 4, y + 1, z + 8, x + 5, y + 1, z + 8, 102) # créer une fenêtre 1 mc.setBlocks (x + 4, y + 1, z + 2, x + 5, y + 1, z + 2, 102) # créer une fenêtre 2 mc.setBlocks (x + 7, y + 1, z + 4, x + 7, y + 1, z + 6, 102) # créer une fenêtre 3.
Enregistrez-le sous "house.py" et courir. Tout va bien, vous devriez voir apparaître une petite maison (vous devrez peut-être vous retourner pour la trouver). C’est très simple, une ouverture et quelques fenêtres. En théorie, il n'y a pas de limite à la taille ou à la complexité d'un bâtiment que vous pourriez construire.
Créez un mini-jeu

Ensuite, faisons un mini-jeu! Ce sera assez simple, lorsque le joueur marche sur un bloc de sable, il se transforme en lave après une durée aléatoire. C'est un bon jeu à faire, car vous pouvez concevoir vos propres niveaux ou le modifier pour rendre les choses plus difficiles. Vous n'aurez pas besoin du bouton pour cet exemple.
Créez un nouveau fichier et enregistrez-le sous "mini_game.py“. Voici le code:
depuis mcpi.minecraft, importez Minecraft. importation aléatoire. import time mc = Minecraft.create () # create Minecraft Object while True: x, y, z = mc.player.getPos () block_under_player = mc.getBlock (x, y - 1, z) if block_under_player == 12: # joueur debout sur le sable, lancez le chronomètre random_time = random.uniform (0.1, 2.5) # générer un nombre aléatoire time.sleep (random_time); # attendez mc.setBlock (x, y - 1, z, 11) # transformez-le en lave.
Ce code est une bonne entrée en matière Aléatoire() une fonction: random.uniform (0,1, 2,5) générera un nombre aléatoire compris entre 0,1 (1 / 10e de seconde) et 2,5 (2 1/2 secondes). L'augmentation de ces chiffres facilitera le jeu.
Essaye le! Tenez-vous sur un bloc de sable et il se transformera sous peu en lave. Cela pourrait être la base d'un jeu plus complexe.
Faire un autre mini-jeu

La prémisse de ce jeu est simple - ne soyez pas debout sur le plancher en bois lorsque le temps est écoulé. Le joueur se téléporte dans une «arène». Ils sont obligés de rester immobiles jusqu'au début du jeu. Une fois démarré, le sol se transformera en eau une fois la minuterie épuisée. Le joueur doit se tenir dans la zone de sécurité (blocs de diamant) pour survivre. Chaque niveau réduit la minuterie d'une seconde. Après chaque niveau réussi, la zone de sécurité s'agrandit. Découvrez le code ci-dessous:
temps d'importation. importation aléatoire. depuis mcpi.minecraft importez Minecraft mc = Minecraft.create () # créez la zone claire de l'objet Minecraft #. mc.setBlocks (-10, 1, -10, 25, 5, 25, 0) # crée un shell d'arène. mc.setBlocks (0, 0, 0, 25, 10, 25, 17) # évider l'arène. mc.setBlocks (1, 1, 1, 24, 10, 24, 0) # déplace le joueur vers l'arène. mc.player.setPos (14, 25, 20) # téléporter le joueur # les faire rester sur place. # téléporter le joueur pour commencer sa position toutes les 1 / 10e de seconde. # faites ceci pendant 5 secondes puis démarrez le jeu. time.sleep (2) total_wait = 0. mc.postToChat ("En attente de démarrage") tandis que total_wait <5: mc.player.setPos (14, 1, 20) # téléporter le joueur time.sleep (0.1) total_wait + = 0.1 mc.postToChat ("BEGIN!") # 10 niveaux. pour le niveau dans la plage (10): x, y, z = mc.player.getPos () level_time = 10 - level # réduire le temps de 1 seconde pour chaque niveau mc.postToChat ("Level -" + str (niveau + 1) + "start") # build floor mc.setBlocks (0, 0, 0, 25, 0, 25, 17) # make area safe safe_area_start = random.uniform (0, 22) safe_area_end = random.uniform (0, 22) mc.setBlocks (safe_area_start, 0, safe_area_end, safe_area_start + level, 0, safe_area_end + level, 57) elapsed_time = 0 while elapsed_time <10: x, y, z = mc.player.getPos () time.sleep (0,25) elapsed_time + = 0,25 # le joueur de contrôle est toujours au sol si y <0,75: mc.postToChat ("Game Pendant les vacances; else: # supprimer le plancher mc.setBlocks (-10, 0, -10, 25, 0, 25, 8) # remettre la zone de sécurité mc.setBlocks (safe_area_start, 0, safe_area_end, safe_area_start + level, 0, safe_area_end + level, 57) time.sleep (2.5) continuez la pause.
Enregistrez-le sous "mini_game_2.py"Et essayez-le.
Le Pi 2 a des problèmes de performances lors de l'exécution de Minecraft. Le graphique d'utilisation de l'unité centrale de traitement (CPU) (le coin supérieur droit) ne montre jamais de charge lourde, donc cela doit être dû à une mauvaise conception et à des optimisations par les développeurs. Ces problèmes ne sont pas liés à l'exécution de code (car ils se poursuivent lorsque Python n'est pas en cours d'exécution), mais ils sont aggravés par ce mini-jeu. Si votre Pi a vraiment du mal, vous voudrez peut-être réduire la taille de l'arène ou overclocker votre Pi Pas assez de jus? Serrez votre Raspberry Pi par overclockingS'il y a du matériel sorti en 2012 dont vous risquez de tomber amoureux, c'est le Raspberry Pi sucré, un mini-ordinateur conçu et fabriqué au Royaume-Uni qui a été expédié tout autour du ... Lire la suite .
Détecteur de diamant

Faisons un autre circuit. Cela utilisera une diode électroluminescente (LED) pour s'allumer lorsqu'il y a des diamants en dessous (dans les 15 blocs). Voici ce dont vous avez besoin:
- 1 x planche à pain
- 1 x LED
- 1 résistance de 220 ohms
- Câbles de saut femelle> mâle
- Mâle> Câbles de saut mâle
Voici le circuit:

Connectez l'anode (jambe longue) à la broche 14 du GPIO. Cette broche agit comme + 5v. Connectez la cathode (jambe courte) à la terre.
J'ai utilisé un jouet de minerai bon marché et l'ai modifié en retirant le couvercle arrière et l'électronique, j'ai ensuite placé une LED en dessous. Vous pourriez facilement rendre ce permanent avec de la colle chaude ou quelque chose de similaire.

Enregistrez ce code sous "diamonds.py“:
importer RPi. GPIO comme GPIO. temps d'importation. depuis mcpi.minecraft importez Minecraft mc = Minecraft.create () # créez un objet Minecraft led_pin = 14 # stockez le numéro de broche GPIO GPIO.setmode (GPIO.BCM) # dites au Pi quels en-têtes utiliser. GPIO.setup (14, GPIO.OUT) # dire au Pi que cette broche est une sortie tandis que True: # répéter indéfiniment x, y, z = mc.player.getPos () pour i dans la plage (15): # regarder chaque bloquer jusqu'à bloc 15 si mc.getBlock (x, y - i, z) == 56: GPIO.output (led_pin, True) # allumer la LED sur time.sleep (0.25) # attendre GPIO.output (led_pin, False) # tourner la LED off time.sleep (0,25) # attendez.
Lorsqu'il y a un bloc de minerai de diamant sous le joueur (dans un rayon de 15 blocs), la lumière clignote.
Avez-vous fait quelque chose de cool avec Minecraft Pi? Faites-moi savoir dans les commentaires ce que vous avez fait ou jusqu'où vous avez réussi dans les jeux.
Joe est diplômé en informatique de l'Université de Lincoln, au Royaume-Uni. C'est un développeur de logiciels professionnel, et lorsqu'il ne pilote pas de drones ou n'écrit pas de musique, il peut souvent être trouvé en train de prendre des photos ou de produire des vidéos.