使用 TypeScript 开发了一个 Tank 游戏

2020-05-15 11:54:11 +08:00
 JustSong

基于经典游戏 Battle City 的素材,在机制上做了一些改动,例如加入了等级机制,并且没有基地要守护,纯粹混战。

目前敌人的 AI 是胡写的,2333,地图生成也很随便,这个还有待完善,除此之外数值方面可能还有些失衡。

项目地址: https://github.com/songquanpeng/battle-city

在线体验地址: https://songquanpeng.github.io/battle-city/

这算是我的第一个 TypeScript 实践项目,体验还是很棒的 ~

2647 次点击
所在节点    分享创造
12 条回复
a62527776a
2020-05-15 11:56:22 +08:00
黑屏 没反应
JustSong
2020-05-15 11:58:28 +08:00
@a62527776a 啊,真尴尬,请问屏幕尺寸是正常的吗?估计是地图生成的 Bug,可以刷新试一下,因为地图是随机生成的。
JustSong
2020-05-15 12:00:17 +08:00
手机端会炸,目前还没做适配,2333
misdake
2020-05-15 12:03:30 +08:00
初始化的时候,data 是空字符串
JSON.parse("") =>
VM96:1 Uncaught SyntaxError: Unexpected end of JSON input
at JSON.parse (<anonymous>)
at <anonymous>:1:6
JustSong
2020-05-15 12:06:38 +08:00
@misdake 我想起来这里忘记处理了,不好意思,浪费大家时间了
hh4646908
2020-05-15 12:07:10 +08:00
1080P 显示器+macos10.15+Chrome,黑屏,没反应
JustSong
2020-05-15 12:10:25 +08:00
@hh4646908
@misdake
@a62527776a 应该已经没问题了
JustSong
2020-05-15 12:15:24 +08:00
我来说一下原因,这个是由于游戏启动时要从 localStorage 读取保存的状态,我之前忘记在清除缓存后测试,所以就导致没有发现这个致命 bug 。现在我试了下移动端也是可以的,并不是之前想象的地图生成的问题,很抱歉,刚刚浪费了大家时间。
kop1989
2020-05-15 12:19:15 +08:00
发现了一个操作 bug 。
坦克按住某一个方向(比如 s ),之后,再按另外一个方向(比如 d ),这时候坦克向右走。然后松开 d,按照游戏界的通行做法,应该坦克重新向下走,但是坦克会在按住 S 的状态下向右走。
建议优化。
JustSong
2020-05-15 12:21:14 +08:00
@kop1989 这倒是没有想到,谢谢你的建议
iMusic
2020-05-16 11:04:14 +08:00
后面把关卡地图加进来
JustSong
2020-05-16 14:03:11 +08:00
@iMusic 如果是官方的关卡我估计不会去加,原因之一已经有人做过完美的复刻版了,再去搞意义不大,其二,我这个地图是自适应屏幕的,如果用官方的关卡的话,如何使游戏全屏显示是个问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/671958

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX