コラム / テトリスぽいもの / 19



procedure TForm1.InitPST;
var i,j,k:integer;
begin
   //Falseは先に全部いれちゃう
   For i:=0 to 6 do begin
       For j:=0 to 3 do begin
           For k:=0 to 3 do begin
               PieceShapeTables[i,j,k]:=False;
           end;
       end;
   end;

   // ■
   // ■
   // ■
   // ■
   PieceShapeTables[0,0,1]:=True;
   PieceShapeTables[0,1,1]:=True;
   PieceShapeTables[0,2,1]:=True;
   PieceShapeTables[0,3,1]:=True;

   // ■
   // ■
   // ■■
   PieceShapeTables[1,0,1]:=True;
   PieceShapeTables[1,1,1]:=True;
   PieceShapeTables[1,2,1]:=True;
   PieceShapeTables[1,2,2]:=True;

   //  ■
   //  ■
   // ■■
   PieceShapeTables[2,0,2]:=True;
   PieceShapeTables[2,1,2]:=True;
   PieceShapeTables[2,2,2]:=True;
   PieceShapeTables[2,2,1]:=True;

   // ■
   // ■■
   //  ■
   PieceShapeTables[3,0,1]:=True;
   PieceShapeTables[3,1,1]:=True;
   PieceShapeTables[3,1,2]:=True;
   PieceShapeTables[3,2,2]:=True;

   //  ■
   // ■■
   // ■
   PieceShapeTables[4,0,2]:=True;
   PieceShapeTables[4,1,2]:=True;
   PieceShapeTables[4,1,1]:=True;
   PieceShapeTables[4,2,1]:=True;

   // ■
   // ■■
   // ■
   PieceShapeTables[5,0,1]:=True;
   PieceShapeTables[5,1,2]:=True;
   PieceShapeTables[5,1,1]:=True;
   PieceShapeTables[5,2,1]:=True;

   // ■■
   // ■■
   PieceShapeTables[6,1,1]:=True;
   PieceShapeTables[6,1,2]:=True;
   PieceShapeTables[6,2,1]:=True;
   PieceShapeTables[6,2,2]:=True;

   // orz........

end;
うっぷす