简单的c#俄罗斯方块设计思路

2025-11-02 22:14:42

1、定义三个类: 

1.Huatu (画图)  类 用来画几种基本图形 

2.Bianhuan (变换) 类 用来旋转图形 

3.Panduan (判断) 类   限制图形在指定的位置,判断图形有某一行图形满后,消去一行 主程序做初始化工作,随机产生标志,产生某个图形。等等.

2、因为三个类都会用到相同的数组,静态数组定义后实现不成功。中间变转换,有点麻烦,时间也稍晚了些。 

现在就用了一个类,程序规划待后继续。 §旋转(bianhaun)和判断(panduan)类,都放到了画图(hautu)类里。

简单的c#俄罗斯方块设计思路

3、一、画图形1.自己定义图形的初始位置

简单的c#俄罗斯方块设计思路

4、二、1.Timer移动图形

在Timer里不断改变每种图形数组的值,使得改变图形的位置

实现方法:先把当前位置的图形擦去,然后调用zhuanL(Z,T,l1)改变位置值,再在现在的位置画出新的图形。

 huatu.ca_L();         //把原来的图形擦去,

 huatu.zhuanL();       //改变位置,

 huatu.hua_L();        //再画出图形

5、2.擦、画图形

简单的c#俄罗斯方块设计思路

简单的c#俄罗斯方块设计思路

6、三、让图形在正确的位置显示

简单的c#俄罗斯方块设计思路

7、图形停止后,要做的工作

1.重新产生,产生图形的随机数 

2.把图形数组再赋初值

8、四、旋转图形,找出点规律,改变数组位置即可

简单的c#俄罗斯方块设计思路

简单的c#俄罗斯方块设计思路

9、判断是否落到别的图形上(插)

此步可以和判断图形显示的位置一起

定义了youtu数组之后:

在刚才的基础上只需判断youtu数组里的值是否为1即可,若为1则执行初始化的那段程序

10、五、判断一行已满,将此行消去

定义一个数组

public int [,] youtu=new int[1001,1001];//定义记录是否划到图,图停留 

在一个图形落下,停止后,把图形的位置用数组记录下来。把图形的位置放入数组的下标,把其值赋为1.

图形显示框是一行21个图形,此时只需判断youtu数组里一行中的每一个值都是1,则说明这一行已满。

11、六、将上面的图形全部往下移

简单的c#俄罗斯方块设计思路

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢