Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#4

AW: Überschreitung des Maximums (-1) im stringgrid

  Alt 20. Dez 2013, 09:58
Ein bischen Trennung hilft schon:
Delphi-Quellcode:
function CheckPosition(x, y: Integer): Boolean;
begin
  Result := (y >= 0) and (y <= 9) and (y >= 0) and (y <= 9);
end;

function GetPosition(x, y: Integer): string;
begin
  if CheckPosition(x, y) then
    Result := Form1.stringgrid1.cells[x, y]
  else
    Result := '#'; // außerhalb des Spielfelds
end;

function SetPosition(x, y: Integer; AValue: string);
begin
  if CheckPosition(x, y) then
    Form1.stringgrid1.cells[x, y] := AValue;
end;

{ob der Ablauf so richtig ist...}
  if GetPosition(Globala, Globalb) = '1then
  begin
    SetPosition(Globala, Globalb) := '3';
    s := GetPosition(Globala + Globala1, Globalb + Globalb1);
    if (s = '2') or (s = '4') or (s = '#') then
    begin
      s := GetPosition(Globalx - Globala1, Globaly - Globalb1);
      if (s = '2') or (s = '4') or (s = '#') then
      begin
        versenkt:=1;
        showmessage('Schiff Versenkt');
        counter:=counter-1;
        flaute:=0;
        zugbeginn;
      end
      else
      begin
        showmessage('Ich habe dein Schiff getroffen' + inttostr(globalx)+'/'+ inttostr(globaly));
        treffer2;
      end;
    end
    else
    begin
      treffer2;
    end;
  end
  else
  begin
    SetPosition(Globala, Globalb) := '5';
    Flaute:=0;
  end;

Geändert von Blup (20. Dez 2013 um 10:33 Uhr)
  Mit Zitat antworten Zitat