简单的c#俄罗斯方块设计思路
来源:网络收集 点击: 时间:2024-07-301.画出几种图形
2.移动图形,左,右移动。
3.让图形在指定的范围内显示,正确的位置停止。
4.让每种图形由用户控制旋转
5.当每一行图形全满后,能够将此行擦去
6.擦去一行后将上面所有的图形全部往下移
详细设计1/11分步阅读定义三个类:
1.Huatu (画图) 类 用来画几种基本图形
2.Bianhuan (变换) 类 用来旋转图形
3.Panduan (判断) 类 限制图形在指定的位置,判断图形有某一行图形满后,消去一行 主程序做初始化工作,随机产生标志,产生某个图形。等等.
2/11因为三个类都会用到相同的数组,静态数组定义后实现不成功。中间变转换,有点麻烦,时间也稍晚了些。
现在就用了一个类,程序规划待后继续。 §旋转(bianhaun)和判断(panduan)类,都放到了画图(hautu)类里。

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

二、1.Timer移动图形
在Timer里不断改变每种图形数组的值,使得改变图形的位置
实现方法:先把当前位置的图形擦去,然后调用zhuanL(Z,T,l1)改变位置值,再在现在的位置画出新的图形。
huatu.ca_L(); //把原来的图形擦去,
huatu.zhuanL(); //改变位置,
huatu.hua_L(); //再画出图形
5/112.擦、画图形


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

图形停止后,要做的工作
1.重新产生,产生图形的随机数
2.把图形数组再赋初值
8/11四、旋转图形,找出点规律,改变数组位置即可


判断是否落到别的图形上(插)
此步可以和判断图形显示的位置一起
定义了youtu数组之后:
在刚才的基础上只需判断youtu数组里的值是否为1即可,若为1则执行初始化的那段程序
10/11五、判断一行已满,将此行消去
定义一个数组
public int youtu=new int;//定义记录是否划到图,图停留
在一个图形落下,停止后,把图形的位置用数组记录下来。把图形的位置放入数组的下标,把其值赋为1.
图形显示框是一行21个图形,此时只需判断youtu数组里一行中的每一个值都是1,则说明这一行已满。
11/11六、将上面的图形全部往下移

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1037129.html