Étape 10 : Programmation - les fonctions d’esquisse
Le sketch s’est attaché à cette étape. Il est assez peu commenté, mais les noms de variable et fonction devraient être assez explicites et je pense que c’est assez simple alors n’hésitez pour l’adapter au besoin. S’il vous plaît garder à l’esprit que je ne reçois que s’étend d’autour de 20-30 minutes à la fois sur mon trajet pour écrire des sketches n’est probablement pas le plus élégant ou systématique des morceau de code. Il fonctionne très bien, mais utilisez-le à vos risques et périls !
En général, les fonctions principales du code procédez comme suit :
void setup() :
Simplement, cela lance l’écran LCD et définit le pinMode pour les commutateurs etc.. Il jouerait un « Bonjour » sonore si l'on est définie, affiche la tension de la batterie actuelle et teste brièvement le rétro-éclairage. Il lit les meilleurs scores, luminosité et volume sonore de l’EEPROM et initialise l’EEPROM si cette puce n’a pas servie pour le match avant.
void loop() :
Chaque fonction de la console a un type de « jeu ». Cela comprend le menu principal et le menu paramètres. La boucle principale nous ordonne simplement à la sous-routine appropriée. Lors de son retour d’une sous-routine nous devons définir le type de jeu correct (p. ex. type de jeu = 0 pour le menu principal).
Sub pong() :
Il lit la position de la chauve-souris de joueur 1 et position manuelle ou automatique de chauve-souris du joueur 2. Ensuite, il vérifie la position de la balle, vérifie combien de temps le jeu a été joué (en augmentant la vitesse toutes les 30 s) et met à jour l’écran. La variable frameDelay contient la période en ms entre les cadres et après la mise à l’écran, il attend que ce délai expire avant de commencer à nouveau.
Sub invaders () :
Semblable au jeu Pong, cela cycles rond lire la position de la chauve-souris (joueur), vérification de l’état des coups de feu et bombes, mise à jour de vie, vérifier si le jeu devrait accélérer, déplaçant les étrangers et l’actualisation de l’écran. Les aliens déplacent pixel partout à la fois, mais qu’ils animent uniquement tous les 4 pixels, donc ils ne simplement flou et le mieux ressembler à du jeu original. Comme décrit dans la dernière étape, les étrangers sont détenus et affichés comme des caractères, ainsi que le score et la vie de rechange. La chauve-souris et l’OVNI sont dessinés avec des lignes. L’OVNI s’inscrit dans l’espace de 3 pixels au-dessus de la rangée supérieure des étrangers, qui nous a gagné en définissant une police très petite pour le score.
Sub checkBatt() :
Il surveille la tension de la batterie et invite l’utilisateur à éteindre et recharger si la tension est inférieure à 3.6V.