Das Array ist doch nur ein Spiegel desselben Array, das im Grid existiert. Du kannst das Array genauso ansprechen wie das Grid:
Delphi-Quellcode:
// kopiert ein Wort in das Array
Procedure WortInArrayKopieren(Const Wort, Benutzer : String; Const Horizontal : Boolean; Const Zeile,Spalte : Integer);
Var
i,
L, // Wortlänge
vL : Integer; // verfügbare Länge
begin
L := Length(Wort);
If Horizontal
Then
vL := 10 - Spalte
Else
vL := 10 - Zeile;
If vL < L // wenn der verfügbare Platz kleiner ist als die Wortlänge
Then
ShowMessage('Der verfügbare Platz reicht nicht aus')
Else
Begin
i := 0;
If Horizontal Then
Begin
Inc(i);
For L := Spalte To 0 Do
Begin
Spiel[L,Zeile].Buchstabe := Wort[i]
Spiel[L,Zeile].Benutzer := Benutzer;
End;
End Else
Begin
Inc(i);
For L := Spalte To 0 Do
Begin
Spiel[Spalte,L].Buchstabe := Wort[i]
Spiel[Spalte,L].Benutzer := Benutzer;
End;
End;
End;
end;
Wieder ungetestet, aber so ungefähr mußt du dir das vorstellen.
Ich würde mir an deiner Stelle erst einmal auf einem Blatt Papier notieren, wie das Spiel genau funktionieren soll. Es genügt meist nicht, sich das ungefähr im Kopf vorzustellen, weil man dabei gerne mal wichtige Einzelheiten vergißt. Spiel das Spiel auf einem Blatt Papier ein paarmal durch, du kannst dir ja am Computer ein Gitter zeichnen und dann mehrfach ausdrucken, so daß du ein paar Blätter sozusagen als Vorlagenformular hast. Und beim Herumprobieren auf dem Papier überlegst du nebenher, welche Variablen du da brauchst, um das rein datenmäßig darzustellen, noch ganz ohne Anzeige. Die Anzeige selber ist dann ein Pappenstiel