Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1293820
  • 博文数量: 932
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 10208
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-08 12:28
文章分类

全部博文(932)

文章存档

2021年(1)

2020年(134)

2019年(792)

2018年(5)

我的朋友

分类: 架构设计与优化

2019-08-26 20:41:51

智能手机刚刚普及时,水果忍者这款小游戏可谓风靡一时。几年过去了,现在,让我们用纯JavaScript来实现这个水果忍者游戏,就算是为了锤炼我们的JavaScript开发技能吧。

大家可以通过这个链接在线玩一玩(该链接是我的github地址):

用鼠标在网页上划一条横线切正中的“New Game”的水果开始新的游戏:

然后按住鼠标左键不放,在屏幕上划一条线,即可去切您中意的水果了。

玩法和手机上一样简单。

如果大家想定制化水果忍者这个游戏,请从我的github上将水果忍者的源代码clone或者下载到本地,然后自行修改:

如果大家想修改在游戏里登场的水果图标,直接把文件夹images/fruit下面的图片文件替换即可。以苹果为例,apple.png代表完整的苹果,apple-1.png和apple-2.png分别代表被切成两半的苹果左半部份和右半部份。

如果想修改游戏音效,请将您喜欢的音效的mp3文件放到sound文件夹下。

我们在玩这个游戏时,如果在JavaScript文件all.js的slice事件处理函数里设置断点,就能观察到JavaScript实现是如何检测水果刀(是否)切到了水果:collide.check:

如果大家觉得只有三次机会玩起来太不过瘾了,那很容易,直接把showLseAt这个函数里的number == 3的判断条件改成比如number == 999, 这样就可以几乎无限制得玩啦!

有的朋友想作弊得更彻底一点,想达到即使切到炸 弹,游戏也不结束的效果。

那么只需要修改sliceAt函数,如下图if ( fruit.type != "boom")的红色分支就是切到水果的分支,执行加分和显示水果被切成两半的效果。else的蓝色分支是切到炸 弹的分支,我们只需要将蓝色分支内的代码注释掉,游戏就永远不能结束了。不过这样挺无聊的,哈哈!

这个游戏的JavaScript版本的作者:

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:


阅读(1224) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~