我有一个大学项目,使用动态分配的板来创建俄罗斯方块,该板代表.
的空白部分。我想单独创建每个块的块,例如
O
O O O
俄罗斯方块中的块将在2d动态分配矩阵中描述:
tablo[0][((distX/2)-1)] = 'O';
/*tablo stands for board(the 2d allocated matrix) and '(distX/2)-1' was
used to start the block from top center of the board */
printf("\n");
for(i=0;i<3;i++)
{
tablo[1][((distX/2)-1)+i] = 'O';
}
所以我的问题是:
这样有效吗?
是否有另一种方法可以制作块并将其移动到板内 矩阵更容易吗?
通过我的积木解决方案,我有点难以找到让它们像整体一样掉落的方法,就像绘制俄罗斯方块一样。
另外,我被告知要包括一个硬模式,俄罗斯方块开始时,我的解决方案很难解决板上的某些块或块部件。
这是我的第一次发帖,请告诉我您是否需要有关我的问题的更多信息。谢谢你的时间。
答案 0 :(得分:0)
以下是在c
中实施的俄罗斯方块游戏的示例http://www.gladir.com/CODER/TURBOC/tetris.htm
在第一个链接中,形状存储在分离的二维数组中 并添加到代表棋盘游戏的矩阵中。 - 同样的原则作为你的想法 - 。 我认为这种架构可能符合您的需求,因为它有点像您的需求 片段分开,用OO语言表示,不同的对象来自同一个父classe Shape -for instance - 。
这是俄罗斯方块的另一个例子,就像在c中一样,它看起来比较混乱 第一个链接,但它可能有所帮助。
http://www.c.happycodings.com/Games_and_Graphics/code32.html