微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】


Posted in Javascript onFebruary 20, 2019

本文实例讲述了微信小程序五子棋游戏的悔棋实现方法。分享给大家供大家参考,具体如下:

DEMO下载

效果图

微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】

分析

悔棋功能需要的操作:

1. 判断当前持棋人;
2. 清空棋盘;
3. 将当前持棋人的棋子数组的最后一个棋子还原到全局坐标数组的位置;
4. 删除当前持棋人的棋子数组的该坐标。

js

this.page.changeUndo = function(e){
   if (self.START_GAME){
    var lastM = self.myPoint.length - 1;
    var LastA = self.AIPoint.length - 1;
    self.drawChessboard();
    if (self.boolAI && !self.boolMy && lastM >= 0){
     self.ABSCISSA_ARRAY[self.myPoint[lastM].pointY].push(self.myPoint[lastM]);
     self.myPoint.splice(lastM, 1);
    } else if (!self.boolAI && self.boolMy && LastA >= 0){
     self.ABSCISSA_ARRAY[self.AIPoint[LastA].pointY].push(self.AIPoint[LastA]);
     self.AIPoint.splice(LastA, 1);
    }
    self.drawAll();
   }
  }

注意

1. 判断游戏是否开始,如果没开始,就还没落子,不能悔棋;
2. 判断持棋人,对其数组操作;
3. 同时判断持棋人数组坐标个数,如果没有,则未落子;
4. 重点是重绘棋盘,导致棋盘有一点闪动,未找到原因,哪位大神知道,帮忙解决一下

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
jquery checkbox全选、取消全选实现代码
Mar 05 Javascript
日期处理的js库(迷你版)--自建js库总结
Nov 21 Javascript
jQuery当鼠标悬停时放大图片的效果实例
Jul 03 Javascript
jQuery多项选项卡的实现思路附样式及代码
Jun 03 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
Aug 11 Javascript
js实现HashTable(哈希表)的实例分析
Nov 21 Javascript
深入理解vue2.0路由如何配置问题
Jul 18 Javascript
Vue实现搜索 和新闻列表功能简单范例
Mar 16 Javascript
JavaScript刷新页面的几种方法总结
Mar 28 Javascript
微信小程序获取用户信息并保存登录状态详解
May 10 Javascript
JS实现TITLE悬停长久显示效果完整示例
Feb 11 Javascript
解决Antd Table表头加Icon和气泡提示的坑
Nov 17 Javascript
Vue.js特性Scoped Slots的浅析
Feb 20 #Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
Feb 20 #Javascript
详解关于element级联选择器数据回显问题
Feb 20 #Javascript
JavaScript ES2019中的8个新特性详解
Feb 20 #Javascript
echarts实现词云自定义形状的示例代码
Feb 20 #Javascript
JS拖拽排序插件Sortable.js用法实例分析
Feb 20 #Javascript
详解webpack 最简打包结果分析
Feb 20 #Javascript
You might like
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
PHP 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
PHP与SQL注入攻击防范小技巧
2011/09/16 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
PHP中strpos、strstr和stripos、stristr函数分析
2016/06/11 PHP
深入了解PHP中的Array数组和foreach
2016/11/06 PHP
JavaScript Date对象使用总结
2009/05/14 Javascript
浅析Js(Jquery)中,字符串与JSON格式互相转换的示例(直接运行实例)
2013/07/09 Javascript
jquery foreach使用示例
2013/09/12 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
2014/01/13 Javascript
JS实现可关闭的对联广告效果代码
2015/09/14 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
JS控制FileUpload的上传文件类型实例代码
2016/10/07 Javascript
jQuery联动日历的实例解析
2016/12/02 Javascript
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
Nodejs实现用户注册功能
2019/04/14 NodeJs
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
2019/10/14 Javascript
[04:16]DOTA2全国高校联赛16强抽签
2018/05/02 DOTA
Python实现的HTTP并发测试完整示例
2020/04/23 Python
Python实现根据IP地址和子网掩码算出网段的方法
2015/07/30 Python
Python删除Java源文件中全部注释的实现方法
2017/08/30 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
详解pandas库pd.read_excel操作读取excel文件参数整理与实例
2019/02/17 Python
如何修复使用 Python ORM 工具 SQLAlchemy 时的常见陷阱
2019/11/19 Python
python base64库给用户名或密码加密的流程
2020/01/02 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
2020/04/01 Python
使用Python Tkinter实现剪刀石头布小游戏功能
2020/10/23 Python
IE矩阵Matrix滤镜旋转与缩放及如何结合transform
2012/11/29 HTML / CSS
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
《草虫的村落》教学反思
2014/02/16 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
市级三好生竞选稿
2015/11/21 职场文书
2016年社会主义核心价值观心得体会
2016/01/21 职场文书
详解Spring Security中的HttpBasic登录验证模式
2022/03/17 Java/Android