Schritt 10: Programmierfunktionen - die Skizze
Die Skizze selbst ist dieser Schritt beigefügt. Es ist ziemlich leicht kommentierte aber die Namen der Variablen und Funktion sollte ziemlich selbsterklärend sein und ich denke, es ist ziemlich Straight-Forward so fühlen sich frei nach Bedarf anzupassen. Bitte denken Sie daran, die ich nur bekommen erstreckt sich von herum 20-30 Minuten zu einem Zeitpunkt auf meinem pendeln, Skizzen zu schreiben, so ist es wahrscheinlich nicht elegant oder systematische Stück Code. Es funktioniert ziemlich gut, aber verwenden Sie es auf eigene Gefahr!
Die Hauptfunktionen des Codes in der Regel wie folgt vor:
void setup():
Dies einfach die LCD initiiert und setzt die PinMode für Schalter etc.. Es würde ein "Hallo" sound spielen, wenn man eingestellt ist, die aktuelle Batteriespannung zeigt und kurz die Hintergrundbeleuchtung testet. Es liest die Highscores, Hintergrundbeleuchtung-Helligkeit und Lautstärke aus EEPROM und das EEPROM initialisiert, wenn dieser Chip nicht für das Spiel vorher verwendet worden ist.
void loop():
Jede Funktion der Konsole verfügt über eine "GameType". Dazu gehören das Hauptmenü und das Menü "Einstellungen". Die Hauptschleife leitet uns einfach auf das entsprechende Unterprogramm. Bei der Rückkehr aus einem Unterprogramm müssen wir die richtigen GameType festgelegt (z. B. GameType = 0 für Hauptmenü).
void pong():
Das liest sich die Position der Spieler 1 Fledermaus und entweder manuell oder automatisch Position von Spieler 2 Bat. Danach überprüft die Position des Balles, prüft, wie lange das Spiel wird gespielt wird (Erhöhung der Geschwindigkeit alle 30 s) und wird der Bildschirm aktualisiert. Die Variable FrameDelay hält die Zeit in ms zwischen Rahmen und nach der Aktualisierung des Bildschirms, es wartet für diesen Zeitraum abläuft, bevor Sie wieder beginnen.
void Eindringlinge ():
Ähnlich wie das Pong-Spiel, das Zyklen Runde Leseposition der Fledermaus (Spieler), überprüfen des Status der Schüsse und Bomben, Leben, prüfen, ob das Spiel beschleunigen sollte, verschieben die Aliens und Aktualisierung des Bildschirms zu aktualisieren. Die Aliens ein Pixel über gleichzeitig bewegen, aber sie nur alle 4 Pixel zu animieren, so dass sie nicht einfach verwischen und besseren ähneln das originale-Spiel. Wie im letzten Schritt beschrieben, sind die Aliens gehalten und als Zeichen, wie das Ergebnis und das freien Leben sind angezeigt. Die Fledermaus und das UFO werden mit Linien gezeichnet. Das UFO passt in der 3-Pixel-Raum über der obersten Zeile der Außerirdischen, die wir durch die Definition einer sehr kleinen Schrift für die Punktzahl gewonnen.
void checkBatt():
Dies überwacht die Batteriespannung und fordert den Benutzer zu deaktivieren und wieder aufladen, wenn die Spannung unter 3.6v sinkt.