Download BASIC mit dem Z1013
Transcript
Zeilen 140 bis 170 Der Variablen Y wird die zufällig ausgewählte Flughöhe der Ente zugewiesen. Die Variable Z beinhaltet die Zeilenposition des Geschosses, und die Variable F fungiert als Flag, das zunächst nicht gesetzt ist (F = 0). Die Zeile 160 besorgt bei den späteren Programmdurchläufen die "Armkorrektur", und die Zeile 170 enthält die aus insgesamt vier Pseudografikzeichen zusammengesetzte Ente. Soll die Ente aus anderen Zeichen erzeugt werden, so sind die Zeilen 170, 200 und 210 gleichermaßen zu ändern. Zeilen 180 bis 210 Die Laufvariable I kennzeichnet den Entenflug von rechts nach links über den Bildschirm. Die Darstellung des Fluges erfolgt durch Löschung der beiden rechten Positionen der Ente in Zeile 190 und deren erneutes Setzen auf den Bildschirm in den Zeilen 200 und 210. Damit täuscht der Z 1013 eine Bewegung vor. Zeilen 220 bis 320 Die Bedingung in Zeile 230 sorgt dafür, daß die Schußtaste G bei einem Durchlauf nur ein einziges Mal gedrückt werden kann. Unser Jäger verfügt also nicht über eine ZwilIings- oder Drillingsflinte. Sobald nämlich das Geschoß abgefeuert wurde, ist der ZeiIenzähler Z für das Geschoß kleiner als 27. Bei Auslösung des Schusses erhält das Flag den Wert 1. Damit wird die in Zeile 260 eingebaute Zeitverzögerung außer Kraft gesetzt. Der Sinn des Ganzen besteht darin, daß mit und ohne Geschoß auf dem Bildschirm ein Entenflug mit gleichem Tempo gewährleistet ist. Das Geschoß selbst besteht aus dem Pseudografikzeichen mit der Codezahl 209. Es bewegt sich stets nur senkrecht nach oben. Die Trefferüberprüfung erfolgt in Zeile 280. Dabei werden nur die beiden unteren Zeichen, aus denen die Ente zusarnmengesetzt ist, als Treffer akzeptiert, FIügeIschüsse also nicht. Im Trefferfall wird das Unterprogramm ab Zeile 500 aufgerufen. Wurde kein Treffer erzielt, dann rückt das Geschoß um eine ZeiIenposition weiter nach oben. Bei Erreichung des oberen Bildschirmrandes sorgt die Programmzeile 290 für das Löschen des Geschosses vom Bildschirm. Zeilen 330 bis 370 In Zeile 330 wird gefragt, ob die Ente schon 50 Durchflüge absolviert hat. Ist dies nicht der Fall, wird der Durchlaufzähler um Eins erhöht, der Inhalt der Variablen D auf dem Bildschirm angezeigt und mit Sprung zur Programmzeile 150 ein neuer Durchlauf eingeleitet. Durch Verwendung der LEN- und STR$-Funktion wird in Zeile 350 eine rechtsbündige Darstellung erreicht. Zeilen 500 bis 560 Dieses Unterprogramm tritt bei erfolgreichem Schuß in Aktion. Dazu wird zunächst der Trefferzähler P um Eins erhöht und die Gesamtzahl der Treffer auf dem Bildschirm angezeigt. Auf die Darstellung fliegender Federn und einer herabstürzenden Ente haben wir verzichtet und auf die vier Zeichenpositionen nur einfache Sternchen gesetzt. Mit etwas Phantasie und Programmieraufwand könnte natürlich auch der Hund des Jägers die 108