VB.NET开发游戏第11-15章方块固定逻辑与二维数组操作

方块固定到游戏面板上的逻辑,其实就是用一个二维数组把当前下落的方块“写死”在背景里,方便后续重绘。MoveBlockToPile()这个方法干的就是这事儿,思路挺清晰:遍历方块形状数组,挨个映射到pile这个全局数组上。写法简单直白,效率也还不错。

方式上没太多花里胡哨的东西,重点就在坐标计算上,fxfy就是把局部位置映射到全局位置,这种逻辑在写俄罗斯方块、消消乐类游戏里挺常见。如果你也是在搞类似的小游戏,不妨参考这个方法改一改。

另外,写完这个函数后面还跟着两步操作,一个是CheckForLines()——检测是否有可消除的行;另一个是CheckForGameOver(),判断游戏是否结束。看得出来作者思路比较清楚,流程也合理,逻辑一目了然。

如果你还在琢磨二维数组怎么高效操作,可以顺手看看下面这几个链接:有排序的、有指针操作的、还有动态生成的。都是一些比较常用的技巧,结合起来用,效率能拉满。

如果你正好在用VB.NET写游戏逻辑,不妨把pile数组这套结构搬到自己项目里试试,改一改就能用,开发效率提升不止一点点。

ppt 文件大小:1.31MB