分享自己开发的网页版扫雷

186 天前
 yqianjiang

地址: https://minesweeperplay.online/

大家伙,我是一名兴趣使然的前端开发。喜欢复刻益智小游戏,扫雷是我小时候很喜欢玩的一款游戏,在做的过程中也希望在经典的基础上增加一些新的功能,很享受自己定制游戏的乐趣!欢迎大家提建议~

特色:

计划中的功能:

2296 次点击
所在节点    分享创造
15 条回复
mxgarbage
186 天前
不错。去年由于兴趣我也尝试用 react native 开发一个扫雷,但是因为性能没优化好等因素,中途放弃了。因为我自己玩扫雷算是高手吧(鼠标很废,但是 iPad 上中级最高 15 秒),我当时不仅想做得丰富,而且关键是更专业的数据统计,(参考 https://minesweeper.online 上的)。可惜没坚持下去。
mxgarbage
186 天前
楼主有兴趣的话可以交流,我 js 水平一般,技术上可能给不了什么建议,游戏本身功能似乎已经差不多了,除了一些 UI 的细节。
yqianjiang
185 天前
@mxgarbage #2 好呀~中级 15 秒好强!我也去看看专业的数据统计部分。性能部分我是猜测用 canvas 可能会比直接用 DOM 好一些(不过 rn 是部署到移动端的话我就不太清楚有没有 canvas 了...)。有哪些 UI 细节建议呀?
mxgarbage
185 天前
@yqianjiang 最明显的是鼠标点击格子的动作:其他版本鼠标点击一个格子且保持点击时,格子会明显从凸起来变成平的,而鼠标松开后才会打开格子。而你的好像是直接 onClick 瞬间就打开了。
coolfan
185 天前
无猜版本😍😍😍
thetbw
185 天前
Uncaught TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(CSSImageValue or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or OffscreenCanvas or SVGImageElement or VideoFrame)'.
at renderDigit (digit.js:22:13)
at update (main.js:75:9)
at HTMLCanvasElement.handleDoubleClick (main.js:151:13)
myqoo
185 天前
当年第一个小游戏就是网页版的扫雷,不过是 vbscript 开发的~
peoren
185 天前
优化小建议:点击事件有点奇怪,可能换成 mousedown 做点击按下动画,mouseup 做你原来的 click 事件会更好点。
yqianjiang
185 天前
@mxgarbage #4
@peoren #8
好的,我改一下,谢谢建议~
royalknight
185 天前
有开源嘛 ,想引入到项目里

[https://myim.online/]( https://myim.online/)
yqianjiang
185 天前
@thetbw #6 谢谢提醒,今早改的一个代码有 bug ,修复啦~
yqianjiang
185 天前
@royalknight #10 有开源,请问是怎么引入的呀?
chenzw2
184 天前
我也做过一个,可以支持定制大小和难度

https://wiki.bqrdh.com/mine-sweeper
yqianjiang
159 天前
这段时间陆续更新了一些内容~包括:
1. 鼠标点击格子的动作
2. 自定义难度
3. 更多地参考了 Windows XP 的界面
4. 扫雷数据统计(胜率、连胜等信息)
yqianjiang
152 天前
@yqianjiang #14
5. 标记功能(可以选择几种不同的颜色来标记)

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

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

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

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

© 2021 V2EX