Einzelnen Beitrag anzeigen

Benutzerbild von cruiser
cruiser

Registriert seit: 23. Dez 2003
Ort: Königsbrück/Sachsen
455 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Zählsystem für Tennis entwickeln

  Alt 23. Sep 2007, 05:08
Vieles würde sich erschlagen, wenn du wie ich oben schon schrieb, eine Enumeration nimmst:

Delphi-Quellcode:
type
  Te_points = (tp0, tp15, tp30, tp40, tp40a);

{...}

var
  pnt_a: Te_points; // kein integer... dadurch bläht es so auf!

{...}

pnt_a := tp0; // initialisieren

Inc(pnt_a); // pnt_a hat jetzt den Status tp15

pnt_a := tp40a; // initialisieren

Dec(pnt_a); // pnt_a hat jetzt den Status tp40
Was das A angeht, würde ich ein constantes Array mit den Ausgabewerten definieren:

Delphi-Quellcode:
const
  _tearr_points : array of string = ('0', '15', '30', '40', 'A');

{...}

Zugriff über z.B.:
string_a := _tearr_points[ord(pnt_a)];
zu 4.: Wenn ein Spieler bei tp40a oder tp40 steht und einen Punkt bekommt ist das Spiel abgeschlossen. Entsprechend kannst du guten gewissens die werte wieder auf tp0 setzen und der in der Logik nächst höheren Klasse (Satz) mitteilen, wer denn denn das Spiel gutgeschrieben bekommt. Wichtig ist, dass du dir merkst, wer im Ballbesitz ist!

zu 3.: Ich würde eine Zeichenklasse baun, die das auf ein Canvas(oder was auch immer) ausgibt. Diese Klasse kannst du ja beim erzeugen der Instanzen an jene jeweils immer weiter geben. Somit gibt jede Logik-Klasse der Zeichenklasse die Infos, was sich denn geändert hat.

Edit: mh... ich hab mal den Anfang gemacht und das ein wenig strukturiert... mit bisschen Struktur wird es immer weniger aufgebläht Siehe Anhang. Evtl. kannst du darauf ja aufbaun
Angehängte Dateien
Dateityp: pas tennis_435.pas (2,4 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat