Sie sind hier � 45
Richtigen Code schreiben
Der allgemeine Spielverlauf
Wir werden Variablen brauchen – und Zahlen und
Strings und if-Anweisungen und Bedingungsabfragen und
Schleifen … aber wie viele? Und wie passt nachher alles
zusammen? Um diese Fragen zu beantworten, brauchen
wir Informationen über die Funktionen des Spiels.
Als Erstes müssen wir den allgemeinen Spielverlauf
bestimmen. Das geht etwa so:
1
Der Benutzer startet das Spiel.
2
Das Spiel beginnt.
Folgende Schritte wiederholen, bis
das Schiff versenkt ist:
A
A
Spiel platziert ein Schiff an
einer zufälligen Rasterposition.
Benutzer zum ersten Rateversuch
auffordern (»2«, »0«, usw.).
B
Benutzereingabe mit
der Position des Schiffs
vergleichen, um zu sehen, ob
wir einen Treffer haben.
3
Das Spiel endet.
Basierend auf der Anzahl der
Versuche erhält der Benutzer
eine Bewertung.
Start
Spiel vorbereitet
Rateversuch
Rate-
versuch
überprüfen
getroffen
daneben
Schiff als
getroffen
markieren
versenkt
Schiff als
versenkt
markieren
Spielstand/
Bewertung
anzeigen
Game
over!
Wow! Ein echtes
Flussdiagramm.
Damit haben wir eine grundsätzliche Vorstellung
von den Aufgaben des Programms. Jetzt brauchen
wir noch ein paar Details zu den einzelnen
Schritten.
1
A
2
A
B
3
Ein Kreis bedeutet
Start oder Ende.
Das Rechteck
bezeichnet eine
Aktion
Rauten bezeichnen
Entscheidungsschritte.
46 Kapitel 2
Das Spiel entwickeln
Interaktionsbeispiel
1
Das Spiel startet damit, ein Schiff zu
erzeugen und diesem drei Felder in unserer
Zeile aus sieben Zellen zuzuweisen.
Die Positionen sind schlichte Integer-Werte.
In diesem Bild entsprechen die Positionen
beispielsweise den Werten 1, 2 und 3.
2
Das Spiel beginnt. Benutzer zur Eingabe
auffordern:
3
Das Spiel ist zu Ende, wenn alle drei Zellen
»getroffen« wurden und wir drei Treffer
registriert haben. Der Benutzer wird über
die Anzahl der Versuche informiert.
Überprüfen, ob die Eingabe sich mit einer der
Zellen des Schiffs deckt. Mitverfolgen, wie
viele Treffer die Variable bereits enthält.
0 1 2 3 4 5 6
Durch unsere Analyse des allgemeinen
Spielverlaufs und das professionell aussehende
Flussdiagramm wissen wir schon ziemlich gut,
wie das Spiel funktionieren soll. Bevor wir mit
dem Programmieren anfangen, sollten wir
aber noch ein paar Details klären.
Schiffe darstellen
Wie soll das Schiff auf dem Raster dargestellt
werden? Vergessen Sie nicht: Das virtuelle
Raster ist nur virtuell. Es wird nicht in unse-
rem Programm abgebildet. Solange das Spiel
und der Benutzer wissen, dass ein Schiff in
drei von sieben aufeinanderfolgenden Zellen
(beginnend bei 0) versteckt ist, muss die Zeile
selbst auch gar nicht dargestellt werden. Sie
könnten jetzt versuchen, etwas mit allen sieben
Positionen zu bauen, um das Schiff dann dort
zu platzieren. Das ist aber gar nicht nötig. Wir
müssen nur die Zellen kennen, auf denen sich
das Schiff tatsächlich befindet, zum Beispiel
die Zellen 1, 2 und 3.
Benutzereingaben
entgegennehmen
Wie sollen wir die Benutzereingaben entgegen-
nehmen? Hierfür gibt es die Funktion prompt.
Wann immer der Benutzer eine Position
angeben soll, benutzen wir prompt, um eine
Nachricht auszugeben und die Eingabe (eine
Zahl zwischen 0 und 6) einzulesen.
Ergebnisse anzeigen
Was ist mit den Ausgaben? Momentan be-
nutzen wir weiter alert, um die Ausgaben des
Spiels anzuzeigen. Das ist zwar ein bisschen
plump, aber es funktioniert. (Für das richtige
Spiel, später im Buch, werden wir stattdessen
die Webseite selbst aktualisieren. Bevor wir so
weit sind, haben wir aber noch viel zu tun.)
Ein paar mehr Details …
A
B
Get JavaScript-Programmierung von Kopf bis Fuß now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.