Einzelnen Beitrag anzeigen

fox67

Registriert seit: 6. Okt 2010
Ort: 72661 Grafenberg
181 Beiträge
 
Turbo Delphi für Win32
 
#17

AW: Tetris mit Canvas funktioniert nicht wie es soll

  Alt 16. Feb 2013, 23:40
Kumpel, du machst mich echt fertig.

Block[high(Block) - 3].fPosition.Y Das ist sehr unsauber (und geht auch nur, weil TBlock in der selben unit steht). Spendier' TBlock mal eine property X und Y, wie ich‘s dir letztens gezeigt habe.

Deine Schleife wird so auch etwas lesbarer. Was soll die eigentlich machen?
Delphi-Quellcode:
  n := high(Block);
  for i := 0 to n do
    if (i <> n - 3) and (i <> n - 2) and (i <> n - 1) and (i <> n - 0) then
      if (Block[n - 3].y + 1 <> Block[i].y) and (Block[n - 3].y + 1 <> 0) then
        if (Block[n - 2].y + 1 <> Block[i].y) and (Block[n - 2].y + 1 <> 0) then
          if (Block[n - 1].y + 1 <> Block[i].y) and (Block[n - 1].y + 1 <> 0) then
            if (Block[n - 0].y + 1 <> Block[i].y) and (Block[n - 0].y + 1 <> 0) then
               kannbewegen := true;
Ja deine Berbesserungsvorschläge hab ich noch nicht umgestetzt da ich erst mal das gröbst zum laufen bringen wollte und dann mir den Code noch einmal anschauen und verbessern.
  Mit Zitat antworten Zitat