应知乎网友要求。

笔者整理了部分开源的微信小程序开源工程和部分介绍。

详情如下:

2048

地址:https://github.com/windlany/wechat-weapp-2048

介绍如下:

算法

该程序主要难度在用户滑动屏幕时值相同的cell合并 将空格标为0(我代码中是用的””表示空格),假设棋盘如下:

0 2 0 20 0 0 00 0 0 20 0 0 0

步骤

通过touch相关的事件函数确定用户滑动方向将棋盘的数字生成4*4的二维数组list根据用户滑动方向生成四个小数组,比如用户将上面的棋盘向右滑动,则四个数组为:item[0] = [2, 0, 2, 0]; item[1] = [0, 0, 0, 0]; item[2] = [2, 0, 0, 0]; // 注意是2000而不是0002,因为是向右滑动要从右边开始 item[3] = [0, 0, 0, 0];接下来就是滑动时合并,拿item[0]举例,如果是2020,向右滑动我们应该成为0004将item[0]的所有0移到末尾变为2200,遍历item将相同的下标值相加,后面的数置为02020 —> 2200 —> 4200 —-> 4000如法炮制就可以实现滑动时合并

WeApp_Demos

目前涵盖了120多个微信小程序或小游戏。

地址:https://github.com/Data-Camp/WeApp_Demos

打飞机游戏

地址:https://github.com/qutz/we_plain

滑块拼图小游戏

地址:GitHub – nanwangjkl/sliding_puzzle: 微信小程序,一个滑块拼图游戏

如何使用

使用npm i安装依赖包

使用npm run build进行项目构建

使用npm run dev进行动态构建

打开微信开发者工具,选择dist目录导入项目文件进行开发

源码目录介绍

./src ├── conponents // 定义游戏内组件 │ ├── help.js // 帮助界面 │ ├── hint.js // 预览界面 │ ├── index.js │ ├── info.js // 结束信息 │ ├── menu.js // 菜单界面 │ ├── piece.js // 拼图块组件 │ ├── puzzle.js // 拼图组件 │ └── timer.js // 计时器组件 ├── core // 适配器组件 │ ├── index.js │ ├── layout.js // 适配容器 │ └── sound.js // 全局音效管理器 ├── scenes │ ├── game.js // 游戏主界面 │ ├── index.js │ ├── preload.js // 载入界面 │ └── prepare.js // 资源加载类 ├── utils │ ├── constants.js // 常量 │ ├── functions.js // 通用方法 │ ├── gamemap.js // 用于提供游戏的随机地图 │ ├── index.js │ └── swipelistener.js // 用于处理游戏内划动事件 ├── app.js // 游戏入口主函数 └── config.js // 游戏配置

微信小游戏跳一跳辅助程序

地址:https://github.com/Shu-Ji/wechat_micro_jump_game_hero

微信小程序游戏开源工程整理插图微信小程序游戏开源工程整理插图1

更新日志

2018-01-04

由于微信的小游戏的更新,基于背景 hsv 查找极点的方式,对于亮色背景,已经不再适用。

更新为使用轮廓区域获取顶点,再由商高定理计算中心点坐标。

2018-01-01

目的只是找到极点,并不需要二值化,去除相关代码。速度快。

目前以 距离 x 1.5 作为长按时长,基本能跳到目标中心位置。

2017-12-30

去除垂直投影图的方案,使用直接识别背景的方式去除背景,并二值化,以识别极点。速度仍然慢。

2017-12-29

可用版本,准确性不高,速度慢,使用垂直投影图进行目标查找。

wechat-app-2048 微信小程序 2048游戏

地址:https://github.com/jeffche/wechat-app-2048

微信小程序-骰子游戏

地址:https://github.com/WuWeiSen/dice-game

作者 nasiapp

在线客服
官方客服
我们将24小时内回复。
12:01
您好,有任何疑问请与我们联系!

选择聊天工具: