##完成目标 构建一个记忆游戏,每轮游戏行为如下:
- 玩家翻开一张卡片,看看符号是什么。
- 玩家然后翻开第二张卡片,尝试找到具有相同符号的对应卡片。
- 如果卡片匹配,两张卡片都保持翻开状态。
- 如果卡片不匹配,两张卡片都继续盖起来。
- 当所有卡片都正确匹配后,游戏结束。
标准如下:
- 该游戏会随机洗牌。所有牌都匹配后,用户就获胜了。
- 赢时,系统弹窗,询问是否再玩一次。花费时间,星级评分。
- 重启按钮:重置游戏板、计时器和星级评分。
- 星级评分1-3,游戏一开始应该显示 3 颗星。在经过几轮招式后,应该变成 2 颗星。再经过几轮之后,应该变成 1 颗星。经分析,标准如下:
- 22步以内3星
- 27步以内2星
- 28步以及以上1星
- 计时器
- 招式计数器 游戏会显示用户到目前为止发出的招式数量。
- CSS 来设定游戏组件的样式。适应性设计。
- 注释
- 如何让你的项目脱颖而出?
- 当卡片被点击、匹配不成功、匹配成功时,添加 CSS 动画效果。
- 除了最低要求之外,还添加独特的功能(实现排行榜、使用本地存储空间存储游戏状态,等等)。
- 实现其他优化,改善游戏性能和用户体验(添加游戏动作快捷键,等等)。
##开发策略 ###所需文件
- html
- css
- js
- Awesome图标 (16个 8类)
###步骤
-
html先构建简单卡片网格 ul 。
-
css设置基本样式,实现可点击的内容。
-
创建代表卡片的 HTML。表示卡片的两面or堆叠两个元素,优先两面。
-
编写js实现以下:
- 添加点击功能,翻转操作。
- 处理匹配逻辑,true or false。
- 处理获胜条件,弹窗,play again。
-
最后调整格式。让游戏逻辑和功能决定格式。 ##实现各种功能的初步想法和参考 ###html文件 用bootstrap的div(类container)包含
-
标题
-
星级 计时器 重启按钮
-
网格
相关材料:关于project的建议,论坛。 ###css 用boot和编写自己的。 ###js功能
- funuction:
- 1-添加类
open show - 2-删除类
open show - 3-添加类
match - 4-删除
stars - 5-随机函数,给
<i>添加类fa-*** - 6-清空评分和时间
- 1-添加类
- 逻辑与功能:
- 点击卡片,翻开,函数1,计数一次
- 判断两张卡片是否一样,一样则函数2函数3,else函数2
- 检查所有的元素,都有类
match,则结束 - 点击开始后应有计时器,同时开始计数点击次数
- 结束时弹窗,显示时间,点击次数,评级。