Hey,
in der Schule arbeiten wir gerade an einem Projekt, wobei ich Schiffe versenken programmiere. im großen und ganzen funktioniert das programm auch schon, nur noch ein fehler stört mich sehr.
wenn man seine schiffe setzt, klickt man auf das feld (string grid), aber auf dem feld soll natürlich nicht schon ein schiff sein und auch nicht auf den feldern drum herum (damit die nicht alle auf einem haufen sind). das funktioniert soweit ja auch, nur das problem ist (abgesehen vobn der länge meiner möglichkeit *g*), dass man in der ganz linken und ganz rechten spalte keine schiffe setzen kann.
hab schon vieles rumprobiert, funktioniert aber nur, wenn ich alles wieder rausnehme (man die schiffe also überall hinsetzen kann).
Code:
if radiobutton1.checked then
begin
if s4>0 then
begin
if StringGrid1.Cells[schuX-1,schuY+1]='' then
begin
if StringGrid1.Cells[schuX-1,schuY]='' then
begin
if StringGrid1.Cells[schuX-1,schuY-1]='' then
begin
if StringGrid1.Cells[schuX,schuY+1]='' then
begin
if StringGrid1.Cells[schuX,schuY]='' then
begin
if StringGrid1.Cells[schuX,schuY-1]='' then
begin
if StringGrid1.Cells[schuX+1,schuY+1]='' then
begin
if StringGrid1.Cells[schuX+1,schuY]='' then
begin
if StringGrid1.Cells[schuX+1,schuY-1]='' then
begin
StringGrid1.Cells[schuX,schuY]:=' X';
s4:=s4-1;
zahl:=zahl-1;
label5.caption:=inttostr(zahl);
label21.caption:=inttostr(s4);
end;
end;
end;
end;
end;
end;
end;
end;
end;
end;
end;
wäre echt toll, wenn irgendwer von euch da ne idee hätte!