Einzelnen Beitrag anzeigen

He4dnut

Registriert seit: 25. Jan 2010
9 Beiträge
 
Lazarus
 
#11

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 27. Jan 2010, 13:36
Wir haben einmal wie vorgeschlagen Brainstorming betrieben! Unser Ergebnis:


Objekte:
Dominosteine sind z.B. Bilder, 2 feste Variablen zugeordnet, stehen für die zwei Augenzahlen,
2 Spieler, die noch verfügbaren Steine des Spielers der an der Reihe ist werden angezeigt, Stapel der übrigen Steine, die man ziehen muss, wenn man nicht kann (->müssen verdeckt sein), Aktuelle Endsteine der Reihe oder Komplette Reihe muss angezeigt werden, Endsteine müssen immer aktualisiert werden (falls man nur die Endsteine anzeigen lässt, da diese ja nur von Bedeutung sind)


Eingabe:
Vor dem Spiel wird abgefragt die Spieleranzahl (zunächst 2, später mehrere Möglichkeiten), Spielernamen und die Anzahl der Steine (4-er Domino, 6er-Domino, etc.,-> entspricht Spieldauer), während des Spiels muss ein Stein ausgewählt werden (entweder darauf klicken, oder Radio Button o. Ä.)

Logik:
1) Mindestens eine Variable des ausgewählten Steins muss mit mindestens einer Variablen eines aktuellen Steines übereinstimmen, bei mehreren Anlegemöglichkeiten muss noch das genaue „Ziel“ gewählt werden.
2) man klickt auf eine Hälfte eines Steines und dann auf die Hälfte an der er angelegt werden soll, oder durch ziehen falls möglich,
wenn die Variablen übereinstimmen, soll der Stein angelegt werden, wenn nicht, kurze Fehlermeldung. Das eigentliche testen kann durch einfache Abfrage geklärt werden:„ if x1 = x2 do […Prozedur „Steinanlegen“…] else showmessage(‚Der ausgewählte Stein passt hier nicht hin!’)
Hierbei wären x1 und x2 jetzt die Variablen der zwei Hälften (=Augenzahl).
Variante 2) erscheint sinnvoller...
Der Spielzug ist zuende..
1. nach erfolgreichem Anlegen,
2. nach Ziehen eines Steines wenn man nicht anlegen konnte oder
3. wenn der Spieler aussetzen muss, da 1. und 2. nicht erfüllt werden konnten.

Ausgabe:
Noch unklar…

Fragen:

„Wie kann ich einem Objekt (Dominostein) zwei Feste Werte zuordnen, die vom Programm abgefragt werden können?“

Oder (falls man jede Hälfte einzeln betrachtet siehe Logik 2):

„Wie kann ich einem Objekt (Dominosteinhälfte) einen festen Wert zuordnen, der seiner Augenzahl entspricht? Und wie erreiche ich, dass zwei Hälften dann immer zusammengehören, d.h., dass wenn ich die eine Hälfte anlege, die andere Hälfte die aktuelle Augenzahl ist, an die angelegt werden muss?“

Ich hoffe ihr versteht was ich meine
  Mit Zitat antworten Zitat