移动开发作业实验6

2023年夏季《移动软件开发》实验报告

姓名:甘海 学号:21020007018
姓名和学号? 甘海,21020007018
本实验属于哪门课程? 中国海洋大学23夏《移动软件开发》
实验名称? 实验6:推箱子游戏
博客地址? XXXXXXX
Github仓库地址? XXXXXXX

(备注:将实验报告发布在博客、代码公开至 github 是 加分项,不是必须做的)

一、实验目标

1、综合所学知识创建完整的前端新闻小程序项目;能够在开发过程中熟练掌握真机预览、调试等操作。

二、实验步骤

2.1 页面配置

  • 项目创建完毕之后,在根目录会生成文件夹pages用于存放页面文件。首页命名为index,表示小程序运行的第一个页面,还需要一个game页面,用来展示游戏的界面
  • 删除和修改文件与之前几个项目类似,故在此不在赘述
  • 创建其他文件:本项目还需要其他两个文件夹——即images和utils文件夹

在这里插入图片描述

  • 导航栏设计:
    在这里插入图片描述

2.2 页面设计

  • 公共样式设计
  • 首页设计:首页主要包含两部分内容,即标题和关卡列表,页面设计如图所示,计划使用如下组件
    • 顶端标题:view组件
    • 关卡列表:view容器,内部使用数组循环
  • 当前的效果如下图所示:此时可以显示标题和一个临时关卡。由于尚未获得关卡数据,所以暂时无法显示完整的关卡列表,仅供作为样式参考

在这里插入图片描述

  • 游戏页面设计:游戏界面需要用户点击首页的关卡列表,然后在新窗口中打开该页面。游戏页面包括游戏关卡标题、游戏画面、方向键和重新开始按钮。由于暂时没有做点击跳转的逻辑设计,所以可以在开发工具顶端选择普通编译下的添加编译模式,并携带临时测试参数level=0,最后完成之后的效果如图

在这里插入图片描述

2.3 逻辑实现

  • 在data.js文件中存储初始的地图数据,这里分别使用map1~map4代表4个不同关卡的地图数据,以二维数组的形式存放。当前地图均由8×8的放个组成,每个位置的数字代表对应的图标素材

在这里插入图片描述

  • 首页逻辑:在JS文件的data中录入关卡图片的数据信息,这里以4个关卡为例。接着为关卡对应的view组件添加wxfor属性,最后可以成功跳转到对应的游戏界面

在这里插入图片描述

  • 游戏页逻辑

    游戏页主要有以下几个功能需要实现,1.显示当前是第几关 2.游戏地图的绘制 3.4个方向键可以移动游戏主角 4.点击重新开始按钮可以使游戏地图还原成最初状态

  • 初始化数据
    在这里插入图片描述

  • 初始化游戏界面:首先需要根据当前是第几关读取对应的游戏地图信息,并更新到游戏初始数据中
    在这里插入图片描述

  • 在game.js文件中添加自定义函数up、down、left和right,分别用于实现游戏主角在上下左右四个方向的移动,每次点击在条件允许的情况下移动一格

在这里插入图片描述

  • 判断游戏是否成功

在这里插入图片描述

  • 重新开始游戏

在这里插入图片描述

三、程序运行结果

列出程序的最终运行结果及截图。

在这里插入图片描述
)

四、问题总结与体会

描述实验过程中所遇到的问题,以及是如何解决的。有哪些收获和体会,对于课程的安排有哪些建议。

4.1 遇到的问题

  • 问题一:展示的图片和所给的图片不相同
  • 解决:在JS文件中的data文件抄写错误,使得显示的元素不一致
  • 问题二:文档中没有给出right函数的点击代码
  • 解决:仿照up和down的代码把right函数的代码也给补充出来

4.2 收获和体会

  • 首先,学会了跳转界面的时候携带参数,在onLoad函数里面来获取携带的参数
  • 其次,对于for循环渲染数据的方式了解更加深入了
  • 学会了通过控制台调试程序的方法,可以通过console.log打印信息来帮助debug

4.3 课程安排的建议

课程安排挺合理的,通过跟着文档动手写代码便可以学到知识。只是文档中没有给出某些代码的解释,如果能够给出未出现过的代码解释的话就更好了

猜你喜欢

转载自blog.csdn.net/shineahead/article/details/132688784