V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
mumuy
V2EX  ›  JavaScript

自己重写的经典游戏-吃豆人

  mumuy · 2016-05-09 09:18:58 +08:00 · 7718 次点击
这是一个创建于 3105 天前的主题,其中的信息可能已经有所发展或是发生改变。

很早就知道 canvas ,当时一直没应用到,最近闲来无事就顺便写写看。吃豆游戏可以说是我们 80 , 90 后共同的回忆录,小时候常常在学习机上玩,所以也就有了强烈的欲望去写。为了写这个游戏,看了很多吃豆人游戏的相关信息,包括游戏规则,历史,其它相关游戏设计。又去了各个小游戏平台玩了下,找些灵感!!!就连最简单的配色,也是反复斟酌几个小时确定的方案……哈哈,不容易啊

代码分两部分,游戏引擎和游戏主程序,引擎用来类的定义,管理动画场景,事件定义等等……游戏主程序主要组织业务逻辑。算面向对象编程吧,可以参考下 游戏在这里: http://passer-by.com/pacman/ ,哈哈~可以关注 github 获得最新代码!纯手工打造

是男人就吃光所有豆子!!!

60 条回复    2016-05-10 15:37:55 +08:00
xcatliu
    1
xcatliu  
   2016-05-09 11:21:02 +08:00
赞, GitHub 呢?
timqian
    2
timqian  
   2016-05-09 11:27:54 +08:00
👍
weizhiyao008
    3
weizhiyao008  
   2016-05-09 12:22:26 +08:00
上下左右的控制总觉得不够灵敏, Firefox 46.0.1
freewarcraft
    4
freewarcraft  
   2016-05-09 12:28:43 +08:00
mac safari 最新版表示上下左右不够灵敏。。。
另外感觉 AI 好厉害,三路包夹我。。。是我手残么- -
how2code
    5
how2code  
   2016-05-09 12:39:09 +08:00
玩了好几遍才能吃完
jianzong
    6
jianzong  
   2016-05-09 12:45:07 +08:00
很赞,制作很用心。
mumuy
    7
mumuy  
OP
   2016-05-09 12:56:12 +08:00
mumuy
    8
mumuy  
OP
   2016-05-09 12:58:15 +08:00
@freewarcraft 是有一套算法,就是准备合作围堵玩家的
chunqiuyiyu
    9
chunqiuyiyu  
   2016-05-09 13:10:31 +08:00
很不错,完美复原。这都是小时候满满的回忆啊!
mumuy
    10
mumuy  
OP
   2016-05-09 13:14:15 +08:00   ❤️ 1
@chunqiuyiyu 基本延续原游戏,寻路算法不一样,我这个更难些, 4 个幽灵配合着一起围堵
dawn009
    11
dawn009  
   2016-05-09 13:22:23 +08:00
OS X 10.9 Firefox 46.0.1
像在放慢动作
mumuy
    12
mumuy  
OP
   2016-05-09 14:36:42 +08:00
@dawn009 等等我找 Firefox 测试下
lucky2touch
    13
lucky2touch  
   2016-05-09 14:47:48 +08:00
不错啊,不过细节还需要考据下。
kokdemo
    14
kokdemo  
   2016-05-09 14:51:39 +08:00
稍微有点卡顿……
hinate
    15
hinate  
   2016-05-09 15:16:26 +08:00
上下左右 总觉得不够灵敏 版本 50.0.2661.94 Google Chrome
ubuntugx
    16
ubuntugx  
   2016-05-09 15:18:27 +08:00
很赞,已 star
lizhenda
    17
lizhenda  
   2016-05-09 15:40:31 +08:00
很不错哦,好厉害~!
kokutou
    18
kokutou  
   2016-05-09 15:54:53 +08:00
为何我全吃完了还是 game over 。。。
mumuy
    19
mumuy  
OP
   2016-05-09 16:00:40 +08:00
@kokutou 因为我暂时只写了一关……哈哈哈,不过地图是可配置的,很容易写关卡
mumuy
    20
mumuy  
OP
   2016-05-09 16:01:56 +08:00
@hinate 只有一定范围内才能控制,没错容错,不太想处理成那样
leetom
    21
leetom  
   2016-05-09 16:38:38 +08:00
幽灵能穿过墙?

变灰之后再变回彩色的时候,从老窝的右侧墙穿出来了
mumuy
    22
mumuy  
OP
   2016-05-09 17:10:24 +08:00
@leetom 不可以啊,直接走出来?应该只能走一段,发现不能走又回去才对呀
njutree
    23
njutree  
   2016-05-09 17:59:09 +08:00
不错就是不太灵敏
vh2h
    24
vh2h  
   2016-05-09 18:49:41 +08:00
上下左右的控制总觉得不够灵敏, Firefox 46.0.1
langjiyuan
    25
langjiyuan  
   2016-05-09 19:06:23 +08:00
上 不是很灵敏。 被 3 一块堵太丧心病狂了。。是好久没玩游戏了吗,,手残。。。
mumuy
    26
mumuy  
OP
   2016-05-09 19:18:56 +08:00
@langjiyuan 是我写的围堵算法
Kv_se7en
    27
Kv_se7en  
   2016-05-09 19:27:54 +08:00
确实控制不灵敏... osx chrome
mumuy
    28
mumuy  
OP
   2016-05-09 19:29:39 +08:00
@Kv_se7en 时机问题啦,一般游戏会做控制的容错处理,我设计的就是错过了就不让控制了
langjiyuan
    29
langjiyuan  
   2016-05-09 19:49:11 +08:00
@mumuy 已 git 拓展下兴趣。感谢开源。
Bryan0Z
    30
Bryan0Z  
   2016-05-09 20:19:09 +08:00 via Android
送给和我一样玩不过去的手残: F12 ,把中间那一圈 2 改成 1 ,怪物就跑不出来了
mumuy
    31
mumuy  
OP
   2016-05-09 20:24:22 +08:00
@Bryan0Z 哈哈哈, 0 表示路, 1 表示墙壁, 2 表示选择性的路(只有幽灵走)
hongfeiyu
    32
hongfeiyu  
   2016-05-09 21:00:02 +08:00
你就是三姑六婆的作者?
qiuchengjia
    33
qiuchengjia  
   2016-05-09 21:05:43 +08:00
感觉速度太快了,还有就是键盘监听好像不是很灵敏
cheneydog
    34
cheneydog  
   2016-05-09 21:08:25 +08:00
画面很好很细腻
mumuy
    35
mumuy  
OP
   2016-05-09 21:15:45 +08:00
@hongfeiyu 之前有人开发我,我自己前两个月开发也开发了个版本
mumuy
    36
mumuy  
OP
   2016-05-09 21:17:33 +08:00
@hongfeiyu 你说的那个 APP 是我上星期用 react native 做的,所以应该和你用的不一样
mumuy
    37
mumuy  
OP
   2016-05-09 21:18:07 +08:00
@cheneydog 画超级久!颜色我都调好久
hongfeiyu
    38
hongfeiyu  
   2016-05-09 21:24:03 +08:00
@mumuy
mumuy
    39
mumuy  
OP
   2016-05-09 21:26:53 +08:00
@hongfeiyu 我早上看过另外一个人实现版本的数据库,我觉得应该我那种比较方便
znoodl
    40
znoodl  
   2016-05-09 21:55:46 +08:00
你好,能支持下 wasd 吗? hhkb 按方向键玩游戏真心无力。。。
hongfeiyu
    41
hongfeiyu  
   2016-05-09 22:06:36 +08:00
@mumuy
znoodl
    42
znoodl  
   2016-05-09 22:09:16 +08:00
mumuy
    43
mumuy  
OP
   2016-05-09 22:17:12 +08:00
@znoodl 哈哈哈, fork 下,自己动手丰衣足食
chimingphang
    44
chimingphang  
   2016-05-09 22:17:12 +08:00
上下左右的控制 不够灵敏
mumuy
    45
mumuy  
OP
   2016-05-09 22:18:14 +08:00
@chimingphang 慢慢就习惯啦,控制有时间限制的
darluc
    46
darluc  
   2016-05-09 23:00:39 +08:00
👍
jaylong
    47
jaylong  
   2016-05-09 23:48:02 +08:00
楼主的代码整齐真漂亮
jaylong
    48
jaylong  
   2016-05-09 23:49:40 +08:00
如果性能再能优化一点就更好了,现在玩一会 CPU 就爆表了
mumuy
    49
mumuy  
OP
   2016-05-09 23:53:20 +08:00
@jaylong 可能是因为我用的是帧动画,有时屏幕刷新不过来
maichael
    50
maichael  
   2016-05-09 23:58:29 +08:00
github 呢?触发不太灵敏。
Patrick95
    51
Patrick95  
   2016-05-10 00:05:32 +08:00
赞~
mumuy
    52
mumuy  
OP
   2016-05-10 00:06:49 +08:00
@maichael https://github.com/mumuy/ 触发点是对的,只是没有容错处理
yreenchan
    53
yreenchan  
   2016-05-10 00:11:23 +08:00
很赞,但是总感觉惯性太大,切换方向的时候不灵敏
mumuy
    54
mumuy  
OP
   2016-05-10 06:19:51 +08:00
@yreenchan 这个也是游戏的难点啊,切换时机的把握
123s
    55
123s  
   2016-05-10 09:22:47 +08:00
好强,大神
nashge
    56
nashge  
   2016-05-10 09:38:42 +08:00
我也是 firefox ,体验相当差,非常不灵敏
mumuy
    57
mumuy  
OP
   2016-05-10 09:59:10 +08:00
@nashge 哈哈哈,主要是算法研究,不保证兼容除 chrome 以外的浏览器~
yilin101
    58
yilin101  
   2016-05-10 13:59:48 +08:00
非常不灵敏
hiyouli
    59
hiyouli  
   2016-05-10 15:36:41 +08:00
上下左右 不灵敏,有时候还失灵,真是捉急。 chrome 版本 50.0.2661.94 m
感谢,找了找回忆。
mumuy
    60
mumuy  
OP
   2016-05-10 15:37:55 +08:00
@hiyouli 故意这么设计的,时机不对不然转弯
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2729 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 28ms · UTC 12:38 · PVG 20:38 · LAX 04:38 · JFK 07:38
Developed with CodeLauncher
♥ Do have faith in what you're doing.