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 年 5 月 9 日 · 8348 次点击
这是一个创建于 3541 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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