S
savetime
Unregistered / Unconfirmed
GUEST, unregistred user!
我用C曾定义如下数据(俄罗斯方块数据),现想用PASCAL写出相应代码
/* SQUARE Structions */
struct
{
int Data [4][4][4] ;
/* [direction][y][x] */
COLORREF Color ;
}
gShapes [7] =
{
0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 1,1,1,1, 0,0,0,0, 0,0,0,0,
0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 1,1,1,1, 0,0,0,0, 0,0,0,0,
RGB(255, 0, 0), /* "|" */
0,1,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,1, 0,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,0,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,0,1,0, 1,1,1,0, 0,0,0,0,
RGB(255, 0, 255), /* "L" */
0,1,1,0, 0,1,0,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,0,0, 0,1,1,1, 0,0,0,0,
0,0,1,0, 0,0,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 1,1,1,0, 0,0,1,0, 0,0,0,0,
RGB(255, 128, 64), /* "J" */
0,0,1,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 1,1,1,0, 0,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,0,0, 1,1,1,0, 0,0,0,0,
RGB(255, 255, 0), /* "JL" */
0,0,1,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,0,1,1, 0,0,0,0,
0,0,1,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,0,1,1, 0,0,0,0,
RGB( 0, 255, 255), /* "z" */
0,1,0,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 1,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 1,1,0,0, 0,0,0,0,
RGB( 0, 255, 0), /* "z" (R) */
0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0,
0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0,
RGB( 0, 128, 255) /* "88" */
} ;
用PASCAL定义如下记录:
type
TSquareData = record
Data: array[1..4, 1..4, 1..4] of Integer;
Color: TColor;
end;
想把数据初始化为全局常量,我实在不想用
const
SquareData: array[1..7] of TSquareData;
Square[1].Data[1,1,1] = 1;
Square[1].Data[1,1,2] = 0;
Square[1].Data[1,1,3] = 1;
.....
DELPHI有没有简单的Method(sorry, my computer's IME unexpected error, i can't input chinese now).
另外,为了精简内存,谁能将程序中的Integer0,1转换为Boolean方式表达而又使代码清晰?
深夜求救,明天还要上班,就看各位大侠的了。
/* SQUARE Structions */
struct
{
int Data [4][4][4] ;
/* [direction][y][x] */
COLORREF Color ;
}
gShapes [7] =
{
0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 1,1,1,1, 0,0,0,0, 0,0,0,0,
0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 1,1,1,1, 0,0,0,0, 0,0,0,0,
RGB(255, 0, 0), /* "|" */
0,1,1,0, 0,0,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,1, 0,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,0,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,0,1,0, 1,1,1,0, 0,0,0,0,
RGB(255, 0, 255), /* "L" */
0,1,1,0, 0,1,0,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,0,0, 0,1,1,1, 0,0,0,0,
0,0,1,0, 0,0,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 1,1,1,0, 0,0,1,0, 0,0,0,0,
RGB(255, 128, 64), /* "J" */
0,0,1,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 1,1,1,0, 0,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,0,0, 1,1,1,0, 0,0,0,0,
RGB(255, 255, 0), /* "JL" */
0,0,1,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,0,1,1, 0,0,0,0,
0,0,1,0, 0,1,1,0, 0,1,0,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,0,1,1, 0,0,0,0,
RGB( 0, 255, 255), /* "z" */
0,1,0,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 1,1,0,0, 0,0,0,0,
0,1,0,0, 0,1,1,0, 0,0,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 1,1,0,0, 0,0,0,0,
RGB( 0, 255, 0), /* "z" (R) */
0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0,
0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0, 0,1,1,0, 0,1,1,0, 0,0,0,0,
RGB( 0, 128, 255) /* "88" */
} ;
用PASCAL定义如下记录:
type
TSquareData = record
Data: array[1..4, 1..4, 1..4] of Integer;
Color: TColor;
end;
想把数据初始化为全局常量,我实在不想用
const
SquareData: array[1..7] of TSquareData;
Square[1].Data[1,1,1] = 1;
Square[1].Data[1,1,2] = 0;
Square[1].Data[1,1,3] = 1;
.....
DELPHI有没有简单的Method(sorry, my computer's IME unexpected error, i can't input chinese now).
另外,为了精简内存,谁能将程序中的Integer0,1转换为Boolean方式表达而又使代码清晰?
深夜求救,明天还要上班,就看各位大侠的了。