俄罗斯方块c++问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 16:55:52
谁能详细解释以下一段代码 关于俄罗斯方块的 非常感谢

const TBaseTetris::TTetrisUnits TBaseTetris::BaseUnits[NumUnits] =
{
{{{{0,0,0,0},{0,0,0,0},{1,1,1,1},{0,0,0,0}},
{{0,0,1,0},{0,0,1,0},{0,0,1,0},{0,0,1,0}},
{{0,0,0,0},{0,0,0,0},{1,1,1,1},{0,0,0,0}},
{{0,0,1,0},{0,0,1,0},{0,0,1,0},{0,0,1,0}}}},
{{{{0,0,0,0},{0,0,2,0},{0,2,2,2},{0,0,0,0}},
{{0,0,2,0},{0,0,2,2},{0,0,2,0},{0,0,0,0}},
{{0,0,0,0},{0,2,2,2},{0,0,2,0},{0,0,0,0}},
{{0,0,2,0},{0,2,2,0},{0,0,2,0},{0,0,0,0}}}},
{{{{0,0,0,0},{0,0,0,3},{0,3,3,3},{0,0,0,0}},
{{0,0,3,0},{0,0,3,0},{0,0,3,3},{0,0,0,0}},
{{0,0,0,0},{0,3,3,3},{0,3,0,0},{0,0,0,0}},
{{0,3,3,0},{0,0,3,0},{0,0,3,0},{0,0,0,0}}}},
{{{{0,0,0,0},{0,4,0,0},{0,4,4,4},{0,0,0,0}},
{{0,0,4,4},{0,0,4,0},{0,0,4,0},{0,0,0,0}},
{{0,0,0,0},{0,4,4,4},{0,0,0,4},{0,0,0,0}},
{{0,0,4,0},{0,0,4,0},{0,4,4,0},{0,0,0,0}}}},
{{{{0,0,5,0},{0,5,5,0},{0,5,0,0},{0,0,0,0

其实就是把每种方块的形状存在这里,包括了四个方向旋转时的形状

你看摆成这样不就很清楚了
{0,0,6,0},
{0,0,6,6},
{0,0,0,6},
{0,0,0,0}},

{0,0,0,0},
{0,0,6,6},
{0,6,6,0},
{0,0,0,0}},

{0,0,6,0},
{0,0,6,6},
{0,0,0,6},
{0,0,0,0}},

{0,0,0,0},
{0,0,6,6},
{0,6,6,0},
{0,0,0,0},

七种方块的数据
每对大括号内是一行,0代表空,非零数字代表颜色或形状。
一行(四对大括号)代表一种方块的某种旋转状态;每种方块有四种状态。
1=长条
2=T字
3=L字
4=J字
5=Z字
6=S字
7=口字