AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Schulprojekt: Spiel "Domino" programmieren!
Thema durchsuchen
Ansicht
Themen-Optionen

Schulprojekt: Spiel "Domino" programmieren!

Ein Thema von He4dnut · begonnen am 25. Jan 2010 · letzter Beitrag vom 8. Feb 2010
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
He4dnut

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

Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 16:23
Hallo zusammen!
Ich habe mich ganz frisch angemeldet, da aktuell die Projektarbeit unseres Informatikkurses beginnt. Diese geht über ca. 5 Wochen. Ziel des Projektes ist es eben, eigenständig ein Programm, bzw. Spiel, zu programmieren. Wir haben uns jetzt für das Spiel "Domino" entschieden, ja, das mit den bekannten Dominosteinen

Kurz zu dem Spiel:
Es gibt eine bestimmte Anzahl von den Dominosteinen. Diese Dominosteine haben zwei Seiten, mit jeweils Augenzahlen von 0 bis 4 (für den Anfang). Die Steine werden unter den beiden Spielern aufgeteilt, jedoch nicht alle! Ein Stein wird als Anfangsstein vor die Spieler gelegt. Ein Spieler beginnt und legt einen passenden Stein an eine Seite des Anfangssteines. Ein Stein passt, wenn er auf einer hälfte die selbe Augenzahl wie eine hälfte des Anfangssteines hat. Mit dieser Seite wird der Stein darangelegt. Der nächste Spieler ist an der Reihe. Wenn ein Spieler keinen passenden Stein hat, muss er einen unverteilten Stein ziehen, oder aussetzten, wenn diese bereits alle weg sind. Ein Spieler hat gewonnen, wenn er all seine Steine angelegt hat.

Ich stehe jetzt noch ganz am Anfang. Wir hatten vor, ganz geplant an die Sache ran zugehen. Also dass wir im Vornherein Sachen wie Variablenzuordnung etc bereits bestimmen.
Meine Frage an euch bezieht sich jetzt darauf, wie ich genau anfangen soll. Ich kann mir bisher noch überhaupt nicht konkret vorstellen, wie ich das Spiel programmieren soll. Fakt ist, wir brauchen "2-Seitige" dominosteine. Welches Objekt wähle ich für diese Steine ansich am Besten aus? Buttons? Und dann könnte man diese ja mit zwei Variablen x und y meinetwegen benutzen. Jedem Stein werden diese Variablen zugeordnet. Für einen Stein mit den Augenzahlen 1 und 4 würde man dementsprechend seine Variablen zuordnen. Aber wie kann man einem "Stein" überhaupt Variablen zuordnen? Dann stelle ich mir das so vor, dass der Stein, an den man anlegen muss, bzw die Steinkette ja auch zwei Enden mit x und y hat. Also müsste das Programm überprüfen, ob ein x- oder y-Wert mit dem vom Spieler ausgewählten Stein übereinstimmt, also ob sie die gleiche Augenzahl haben. Ist dieses der Fall kann der Stein angelegt werden. Also wenn man z.B. die 1er Seite eines Steines anlegt, und dieser Stein auf der anderen Seite die Zahl 4 hat, so ist die neue Zahl 4, für die der andere Spieler einen passenden Stein haben muss. Also: wie kriege ich dieses Abgleichen hin, und das "Anlegen" ansich?

Ich bin mir sicher, ich werde noch auf mehrere Fragen stoßen. Leider bin ich noch sehr unerfahren im Programmieren und habe so gut wie keine Ahnung über diese endlos vielen Möglichkeiten. Allgemeine Ahnung vom Programmieren habe ich allerdings schon. Also haben wir z.B. einen Taschenrechner und Umrechnungs-hilfen programmiert im Unterricht.

Ich hoffe ihr könnt mir helfen!
MfG Philip
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 16:57
Erstmal herzlich willkommen in der DP

Ich bin mir sicher, daß Du hier richtig aufgehoben bist und Hilfe bekommst!
Wenn Du mit Deinen Grundüberlegungen fertig bist, zeige uns 'mal ein bißchen
Code und Stellen, wo es zu haken beginnt.

Grüß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#3

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 19:06
Für die Steine könntest du eine eigene Klasse erstellen die von TObject abgeleitet ist.
Eventuell könntest du die Steine selber zeichnen mit GDI oder mit der G32 Lib.
eigenlich müsstest du nur die Punkte jeweils zeichnen weil der Stein ist ja immer gleich.
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 20:25
Hallo,

TStringGrid mit Grid.Cells[Col,Row]:= '1' .. '4'

Im OnDrawCell wird dann je nach Nummer ein bestimmtes Bild gemalt.


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 20:31
Dann wäre vielleicht ein TDrawGrid noch besser
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 20:37
Hallo,

da fehlt aber das Cells,
d.h. die Datenhaltung muss man selbst machen
(OK, muss man eh ).


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 20:38
Die Visualisierung erfolgt eh in einer der späteren Phasen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 20:43
Als erstes würde ich empfehlen: "Nicht alles auf einmal machen!"

Teile das Projekt ein:
- Objekte
- Eingabe
- Logik
- Ausgabe

Die Objekte solltet ihr gemeinsam erstellen (so hattest du ja auch geschrieben), denn diese bilden die Basis für eure weiteren Arbeiten, die dann aufgeteilt werden können.

Stellt erst mal zusammen, was ihr alles braucht:

- Dominosteine
- Spielfeld
- Spieler
- etc.

und dann was diese einzelnen Teile für Eigenschaften aufweisen müssen/sollen.

Erst dann sollte das Objekt-Grundgerüst erstellt werden.

Und dann geht man an die weiteren Aufgaben.
Dann kommen erst die Fragen nach "Wie zeichne ich das?"
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
He4dnut

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

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 21:02
Hallo, erstmal danke für die schnellen Antworten, doch leider muss ich Sie soweit enttäuschen, dass ich mit Begriffen wie DrawGrid etc. nichts anfangen kann

An Sir Rufo:
Deine Herangehensweise halte ich für richtig. Nur auch dazu Fragen: Was genau verstehst du unter Objekten, Eingabe, Logik und Ausgabe?

Die Dominosteine habe ich bereits in Paint gezeichnet und spaßhalber mit TImage in die Form eingefügt. Ob mir das was bringt, weiß ich noch nicht.

Ich muss jetzt leider ganz schnell weg. Vielen Dank nochmal und bis morgen hoffentlich

MfG Philip
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

Re: Schulprojekt: Spiel "Domino" programmieren!

  Alt 25. Jan 2010, 21:35
Objekte: Dominosteine, Spieler, Spielfeld, etc.
Eingabe: ja, die Eingabe von Daten halt , sonst spielt das Programm nur mit sich selbst
Logik: Was ist erlaubt uns was nicht, darf Spieler 1 jetzt seinen Zug machen, darf DER Dominostein dahin gelegt werden
Ausgabe: Die grafische Aufarbeitung des Ganzen

Meines Erachtens bringt es nix wenn ihr jetzt schon lustig versucht irgendwelche Sachen auf den Bildschirm zu bringen. Das ist zwar kurzweilig, hilft euch für das Projekt nur sehr bedingt weiter.

Für die ersten Schritte braucht ihr keinen Computer, sondern nur Papier und Stift und lustiges Brainstorming.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz