Thema: Delphi Spiel die zweite.

Einzelnen Beitrag anzeigen

MadMax

Registriert seit: 24. Mär 2003
46 Beiträge
 
#1

Spiel die zweite.

  Alt 6. Jun 2003, 09:56
Jetzt geht es darum das, dass Programm denn Gewinner bekannt geben soll.

Also, ihr kennt sicher das Spiel mit denn neun Feldern, mit dem Ziel 3 Kreise in eine reihe zu bringen (TikTakTo ist der Name glaube ich). Ist wahrscheinlich schon 100 mal programmiert werden aber was soll’s bekanntlich macht Übung den Meister.

Es gibt zwei Spieler Rot und Blau das funktioniert alles, es kann auch schon gegeneinander gespielt werden, nur ich will natürlich den Gewinner bekannt geben und das Spiel soll sich automatisch neu starten.

Hab mir das so gedacht.

Da es bei diesem Spiel nur 8 Kombinationen gibt um zu gewinnen hab ich diese Gewinn Möglichkeiten in einen Array mit 3 Dimensionen geschrieben und dazu eine procedure welche die gedrückten Tasten von rot und blau speichert.
win: array[1..3, 1..9] of Integer = ((97,100,1003,97,98,99,97,103,111),(98,101,104,100,101,102,101,101,111),(99,102,105,103,104,105,105,99,111)); Problem:
Ich weiß nicht ganz wie ich das lösen soll das, dass Programm die Kombinationen abfragt und somit den Gewinner bekannt gibt.

Irgendwie so?
Delphi-Quellcode:
procedure Tform1.Rotpress(key: word);
var counter: integer;
     counterD1: integer;
     counterD2: integer;
     counterD3: integer;
begin
 for counter := 1 to 9 do begin
   if RotKeyPres[counter] = 0 then begin
      RotKeyPres[counter] := Key;
      break;
   end;
 end;
 for counterD1 := 1 to 9 do begin
   if RotKeyPres[counterD1] = win[1,counterD1] then begin
    for counterD2 := 1 to 8 do begin
      if RotKeyPres[counterD2] = win[2,counterD2] then begin
       for counterD3 := 1 to 8 do begin
         if RotKeyPres[counterD3] = win[3,counterD3] then begin
            label10.Caption := 'ROT WIN';
            break;
         end;
       end;
      end;
     end;
    end;
   end;
end;
  Mit Zitat antworten Zitat