Python coding for Minecraft (4 / 15 étapes)

Étape 6: Simple axée sur la tortue dessin

Un moyen particulièrement simple pour dessiner dans Minecraft est d’utiliser un système de tortue. J’ai fait une classe très simple tortue (inspirée par MinecraftTurtle classe, mais conçu pour une utilisation autonome de Martin O'Hanlon) que j’ai l’intention d’utiliser cet été pour présenter middle - et -lycéens de script python de Minecraft.

Démarre un monde Minecraft en mode créatif et rendre votre lecteur voler (espace double-clic). Initialiser le script avec :

(J’ai enveloppé tout le code de connexion de Minecraft à l’intérieur de la classe de tortue et elle apporte aussi des mathématiques dans l’espace de noms pour plus de commodité). Vous pouvez maintenant faire des choses comme t.go(15) pour dessiner une ligne tout en mouvement vers l’avant, 15 blocs t.right(45) pour faire pivoter de 45 degrés vers la droite, t.down(30) pour faire pivoter de 30 degrés vers le bas et ainsi faire des dessins simples.

Vous vous déplacez avec la tortue car elle s’inspire, qui est amusant, et la tortue commence où le joueur est, pointant horizontalement.

Par exemple, vous pouvez tracer un carrΘ horizontal avec :

Vous faites une étoile 7-face en faisant :

sept fois. Ou juste une fois dans une boucle :

Vous pouvez modifier les matériaux avec penblock(). Par exemple, une étoile dorée verticale :

Et vous pouvez modifier la largeur du stylet avec penwidth(x). Par exemple, cela dessine un beignet de verre très simple (en fait, un 90-gon épaissie, mais qui peut faire la différence?) :

Voici toutes les méthodes disponibles :

  • go(x) : passer x blocs vers l’avant (dessin si le stylo est en panne)
  • back(x) : move x blocs vers l’arrière (dessin si le stylo est en panne)
  • penup() : reprendre la pause dessin dessin
  • left(angle) : faire pivoter à gauche de l’angle (en degrés)
  • right(angle) : tourner à droite en angle (en degrés)
  • up(angle) : faire pivoter vers le haut de l’angle (en degrés) ; les débutants ne devraient pas mélanger la gauche/droite et haut/bas rotations ou ils peuvent obtenir des résultats inattendus (note technique : le même que pitch(angle))
  • down(angle) : faire pivoter vers le bas par l’angle (en degrés) (note technique : le même que pitch(-angle))
  • pendelay(x) : chaque mouvement ou la rotation de la tortue est retardée de x secondes ; valeur par défaut est de 0,05 ; la valeur zéro pour beaucoup dessin plus rapide (le joueur se déplace toujours avec chaque ligne tracée, mais instantanément de bout en bout)
  • angle(x) : set angle horizontal à x (dans le sens horaire en degrés; 0 = Sud, 90 = Ouest, 180 = Nord, 270 = East) ; réinitialise l’angle de roulis
  • verticalangle(x) : x la valeur angle vertical (en degrés ; vers le haut est positif ; 90 = verticalement vers le haut ; -90 = verticalement vers le bas) ; réinitialise l’angle de roulis
  • angles(compass,vertical,roll) : régler Compas, verticale et rouler les angles ; les arguments omis sont pris à zéro
  • penblock(x) : matériel pour le dessin de bloquer la valeur x ; pour obtenir la liste des blocs prédéfinis, consultez mcpi/block.py
  • goto(x,y,z) : sur la position du crayon (x, y, z) ; vous pouvez également accéder à la position de t.position.x, t.position.y et t.position.z
  • follow() : le joueur suit la tortue
  • nofollow() : le joueur ne suit pas la tortue
  • turtle(x) : si x est joueur, c’est le même que follow(), et si x n’est rien, c’est le même que nofollow(). Si vous utilisez le Mod de confiture de framboise, vous pouvez également utiliser d’autres entités que vous-même comme la tortue. Par exemple, turtle(HORSE) engendre un cheval à utiliser comme une tortue (toutes les entités disponibles sont répertoriées dans mcpi/entity.py, mais la vie sont meilleures que d’autres sont incapables de faire de la lévitation ; et le Dragon de Ender ne peuvent être contrôlé). L’entité reste une fois le script terminé. Pour la faire disparaître, composez le turtle(None) ou turtle(PLAYER).
  • penwidth(x) : x la largeur du trait : valeur (par défaut est 1; plus larges traits ralentissent le dessin et si suivre mode est activé, vous pouvez vous retrouver pris au piège à l’intérieur de la course, donc à la fin, vous devez appeler penup() et retour sur le dessin)
  • Pitch(x), yaw(x) et roll(x): faire pivoter la tortue par les angles de lacet/tangage/roulis (voir étape suivante de Instructable)
  • startface() et endface(): départ et arrivée à dessiner un polygone convexe rempli
  • push() et pop(): enregistrer et restaurer l’état de dessin (direction, matériel, statut de visage, épaisseur ; mais pas de vitesse ou tortue de type) ; utile pour les L-systèmes
  • gridalign(): aligner la direction actuelle de position et de la tortue à la grille (la meilleure approximation de la direction actuelle de la tortue est choisie)

Le mod de mcpiapi, à la différence de mon Mod de confiture de framboise, ne supporte pas définir l’orientation du joueur. Cela signifie que le joueur ne connaîtra pas le même sens que la tortue. (Et il y a des chances d’autres problèmes avec les scripts de la tortue).

Note technique : Si vous avez déjà un objet de Minecraft mc, initialiser avec t = Turtle(mc). Si vous omettez l’objet Minecraft lors de l’initialisation de la tortue, il est créé pour vous, et dans les deux cas, vous pouvez accéder à l’objet de Minecraft via t.mc.

Bonus pour les utilisateurs de Raspberry Jam Mod 0,10 :

Vous pouvez également jouer avec du code python pour le contrôle de la tortue à droite de la fenêtre de chat de Minecraft. (Pas actuellement pris en charge par mcpiapi mod.)

Dans Minecraft, exécutez le script turtleconsole.py en tapant : /py turtleconsole [entrer].

Ensuite chaque ligne python, que vous entrez dans le tchat sera exécuté par l’interpréteur python. Pour ajouter une ligne de chat, appuyez sur T, tapez la ligne et appuyez sur [enter]. Pour quitter le turtleconsole, il suffit de taper /py [entrer] ou entrez quit() [entrer] dans chat.

Le contexte inclut une variable locale t initialisée avec un objet Turtle(), donc vous n’avez pas besoin d’exécuter un code d’initialisation, juste des choses comme :

Il y a aussi une console pour les non - tortue API complète : console.py (qui inclut une variable locale pré-initialisé mc ). (Juste ne pas mettre dans tous les appels postToChat(), ou ils seront confondent l’interprète).

Articles Liés

Python codant pour Android Minecraft PE

Python codant pour Android Minecraft PE

La version de Raspberry PI de Minecraft permet vous script en Python, faire des dessins de fractale, dessins, graphiques de la tortue, jeux simples, etc.. La même chose peut être faite sur une version de bureau avec mon Mod de confiture de framboise
Real World Minecraft

Real World Minecraft

Nous avons tous savoir Minecraft est un jeu génial et Raspberry Pi rend plus impressionnant. Avec l'API de Minecraft nous pouvons maintenant écrire des scripts python simple interface lire les capteurs du monde et des boutons pour le monde de Minecra
Smart Garage alimenté par pcDuino

Smart Garage alimenté par pcDuino

vous combien de fois avez chassés de la maison et je me demandais si vous avez fermé votre garage ou pas ?Ici, nous présenterons un garage smart, propulsé par pcDuino. Le garage vous avertit par courrier si la porte du garage est ouverte. Si vous l'e
IRToWebThingy : Télécommande pour adaptateur WiFi IR avec ESP8266

IRToWebThingy : Télécommande pour adaptateur WiFi IR avec ESP8266

J'ai fait un IRToWebThingy qui lit les codes de la télécommande infrarouge de la commune (et certains pas si fréquent) et les rend disponibles pour tous les périphériques sur le réseau WiFi local donc vous pouvez scripts diverses choses. Par exemple,
Spidering un site Ajax avec un formulaire de connexion asynchrone

Spidering un site Ajax avec un formulaire de connexion asynchrone

le problème : Spidering outils ne permettent pas l'authentification AJAX login.Cette instructable va vous montrer comment se connecter à travers un formulaire AJAX en utilisant Python et un module appelé Mechanize.Les araignées sont des programmes d'
Indicateur de giration de vélos du couvercle de sac à dos

Indicateur de giration de vélos du couvercle de sac à dos

Ce projet a été créé au cours du CCA roue bien Design Sprint qui visait à rendre les cyclistes plus visibles pour les véhicules sur la route. J'ai utilisé un matériau que j'ai déjà eu ce qui était une housse de pluie sac à dos. Le post complet sur le
Raspberry Pi et un peu à ce sujet

Raspberry Pi et un peu à ce sujet

Dans ce instructable je vais vous expliquer ce qu'un pi framboise est et un peu à ce sujet. Aussi quels projets vous pouvez faire à ce sujet.Étape 1: Ce qui est un Pi de framboise ?Le Raspberry Pi est un coût bas, ordinateur qui se branche sur un écr
Cours camp d’été sur le codage de Python avec Minecraft

Cours camp d’été sur le codage de Python avec Minecraft

L'été dernier, j'ai enseigné un mini-cours camp été 1.5-heures par jour 5 jours sur programmation Python avec Minecraft pour enfants doués dans le cadre de l'Université de Baylor for Young People. La plupart des enfants étaient une partie du projet d
Star Wars et Star Trek dans Minecraft avec Raspberry Jam Mod

Star Wars et Star Trek dans Minecraft avec Raspberry Jam Mod

Je vais vous expliquer comment restituer a facilement Star Wars et Star Trek (et autres) de modèles 3D dans Minecraft et (b) voler un vaisseau spatial dans Minecraft (ou même une autre entité, comme une chauve-souris ou un zombie, il ont voler!), en
Création de mods serveur Minecraft Spigot

Création de mods serveur Minecraft Spigot

Serveurs de Minecraft sont impressionnantes. Ils vous permettent de construire des amis à travers le monde, parlent avec les gens et perdre son temps à tous le manchon de commandes tous les plugins qui sont disponibles à cette fin. Si vous souhaitez
Programmation Python : Partie 1 - bases

Programmation Python : Partie 1 - bases

Python est un langage de programmation généraliste, de haut niveau largement utilisé. Sa philosophie de conception met l'accent sur la lisibilité du code, et sa syntaxe permet aux programmeurs d'exprimer des concepts en moins de lignes de code que po
Modèle de Steve Minecraft ! w / poitrine Double Bonus !

Modèle de Steve Minecraft ! w / poitrine Double Bonus !

Mon petit frère est un grand fan de Minecraft et Noël est à venir, alors j'ai pensé au lieu d'acheter un Minecraft associé présent, pourquoi ne pas lui faire un cadeau de Minecraft ? Ma réponse a été de faire un modèle de Steve !Ce modèle est assez s
Arbre de 8 bits en carton - dans le style de MineCraft

Arbre de 8 bits en carton - dans le style de MineCraft

Arbres de MinecraftPlus tôt cette année deux passionnés de Minecraft merveilleusement créatives se sont mariés à la Game Developers Conference (GDC) et voulaient pleine tailles arbres de Minecraft-style de décoration. Je voulais partager avec vous to
Faire un toutou Wither de Minecraft

Faire un toutou Wither de Minecraft

est ce chanceux peu anniversaire garçon/Minecraft monstre tenant premier Wither toutou du monde ? Bien que très improbable, il est possible... Vous voulez savoir quoi d'autre est possible ? La possibilité de créer votre propre. Dans ce Instructable j