用javascript 面向对象制作坦克大战(二)
2. 完善地图
我们的地图中有空地,墙,钢,草丛,水,总部等障碍物。 我们可以把这些全部设计为对象。
2.1 创建障碍物对象群
对象群保存各种地图上的对象,我们通过对象的属性来判断对象是否可以被穿过或被攻击。
Barrier.js:
View Code
2.2 写入地图的数据。
在Common.js 中添加以下代码:
View Code
2.3 绘制地图
准备工作做完了,下面开始上大菜,绘制地图。前面有提到我们的地图为 13 * 13 的表格。所以我们在游戏装载对象添加行和列两个属性,并且添加初始化地图方法。
Frame.js:
View Code
ok,到这里我们的地图就大功告成了。 这里的注释已经很详细了,如果大家还有不理解的地方自己下载源码调试一下就很好理解了。
这里主要加载地图数据,将每一个地图作为span元素插入html文档中。并且将地图的对象存储在二维数组中。以后我们做碰撞检测的时候就可以直接通过对象的坐标取到对应的数组对象,十分方便。