iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >微信小程序如何实现五子棋游戏
  • 887
分享到

微信小程序如何实现五子棋游戏

2023-06-30 16:06:14 887人浏览 八月长安
摘要

本文小编为大家详细介绍“微信小程序如何实现五子棋游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序如何实现五子棋游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。效果图.wxml<view&nb

本文小编为大家详细介绍“微信小程序如何实现五子棋游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序如何实现五子棋游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

微信小程序如何实现五子棋游戏

微信小程序如何实现五子棋游戏

效果图

.wxml

<view class="title">  <view wx:if="{{currindex < 324 || defeat}}">  {{defeat?'胜出方:'+(outindex?'黑棋':'白棋'):'轮到了:'+(outindex?'白棋':'黑棋')}}  </view>  <view wx:else>平局</view></view><view class="Gobang">  <view wx:for="{{detail}}" wx:key="index" bindtap="{{defeat || item.type > 0?'':'palyclass'}}" data-index="{{index}}">    <view class="piece {{item.type > 0?item.type == 1?'black':'white':''}}"></view>  </view></view><button wx:if="{{defeat || currindex > 323}}" bindtap="reset">重新开始</button>

.wxss

page{background: #fff;}.title{width: 100%;display: flex;align-items: center;justify-content: center;margin-top: 20rpx;font-size: 34rpx;}.gobang{width: 342px;height: 342px;margin: 30rpx calc((100% - 342px) / 2);float: left;position: relative;right: 9.5px;}.gobang>view{width: 5.55%;height: 19px;float: left;display: flex;align-content: center;justify-content: center;border-left: 1px solid #333;border-top: 1px solid #333;background: #F0BF7C;}.gobang>view:nth-child(18n+1){width: 5.6%;border-left: 0;border-top: 0;background: #fff;}.gobang>view:nth-child(18n){border-right: 1px solid #333;}.gobang>view:nth-child(n+307){border-left: 0;background: #fff;border-right: 0;}.piece{background: rgba(255,255,255,0);width: 100%;height: 100%;border-radius: 50%;transition: background 0.3s;position: relative;left: 9.5px;bottom: 9.5px;}.white{background:radial-gradient(15px 15px at 15px 15px,#fff,#e2e2e2);box-shadow:2px 2px 4px rgba(0,0,0,0.3);}.black{background:radial-gradient(10px 10px at 15px 15px,#e2e2e2,#333);box-shadow:2px 2px 4px rgba(0,0,0,0.4);}

.js

Page({  data: {  },  onLoad: function (options) {    this.reset()  },  reset(e){    var detail = []    for(let i = 0;i < 324;i++){      detail.push({type:0})    }    this.setData({      detail:detail,      defeat:false,      outindex:false,      currindex:0,    })  },  palyclass(e){    var index = e.currentTarget.dataset.index,detail = this.data.detail,outindex = this.data.outindex,    currindex = this.data.currindex;    currindex++    detail[index].type = outindex?2:1    this.setData({      detail:detail,      outindex:!outindex,      currindex:currindex,    })    if(currindex > 8){      this.validate(index)    }  },  validate(index){    var detail = this.data.detail,type = this.data.outindex?1:2,remai_left = (index%18)+1,remai_right = 19 - remai_left,    remai_upper = Math.floor(index / 18) + 1,remai_lower = 19 - remai_upper,arr = [];    for(let i = 1;i < (remai_left > 4?5:remai_left);i++){      arr.unshift(index - i)    }    for(let i = 1;i < (remai_right > 4?5:remai_right);i++){      arr.push(index + i)    }    this.result(arr,type).then(() => {      arr = [];      for(let i = 1;i < (remai_upper > 4?5:remai_upper);i++){        arr.unshift(index - (18*i))      }      for(let i = 1;i < (remai_lower > 4?5:remai_lower);i++){        arr.push(index + (18*i))      }      this.result(arr,type).then(() => {        var oblique_left = remai_upper < remai_left?remai_upper:remai_left,        oblique_right = remai_lower < remai_right?remai_lower:remai_right;        arr = [];        for(let i = 1;i < (oblique_left > 4?5:oblique_left);i++){          arr.unshift(index - (18*i) - i)        }        for(let i = 1;i < (oblique_right > 4?5:oblique_right);i++){          arr.push(index + (18*i) + i)        }        this.result(arr,type).then(() => {          var curved_left = remai_upper < remai_right?remai_upper:remai_right,          curved_right = remai_lower < remai_left?remai_lower:remai_left;          arr = [];          for(let i = 1;i < (curved_left > 4?5:curved_left);i++){            arr.unshift(index - (18*i) + i)          }          for(let i = 1;i < (curved_right > 4?5:curved_right);i++){            arr.push(index + (18*i) - i)          }          this.result(arr,type).then(() => {            return;          })        })      })    })  },  result(arr,type){    var detail = this.data.detail,number = 0;    for(let i = 0;i < arr.length;i++){      if(detail[arr[i]].type == type){        number++      }else if(number > 0){        break;      }    }    return new Promise((resolve, reject) => {      if(number > 3){        this.tips(type);      }else{        resolve()      }    })  },  tips(type){    this.setData({      defeat:true,    })    wx.showModal({      title: '提示',      content: '恭喜'+(type == 1?'黑棋':'白棋')+'获得了胜利',      showCancel:false,      confirmText:'我知道了'    })  },})

读到这里,这篇“微信小程序如何实现五子棋游戏”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: 微信小程序如何实现五子棋游戏

本文链接: https://www.lsjlt.com/news/329994.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序如何实现五子棋游戏
    本文小编为大家详细介绍“微信小程序如何实现五子棋游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序如何实现五子棋游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。效果图.wxml<view&nb...
    99+
    2023-06-30
  • 微信小程序实现五子棋游戏
    本文实例为大家分享了微信小程序实现五子棋游戏的具体代码,供大家参考,具体内容如下 效果图 .wxml <view class="title">   <view ...
    99+
    2024-04-02
  • 微信小程序双人五子棋游戏如何实现
    今天小编给大家分享一下微信小程序双人五子棋游戏如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、项目展示微信小程序项...
    99+
    2023-06-30
  • 微信小程序实战之双人五子棋游戏是实现
    目录一、项目展示二、项目核心代码三、效果展示一、项目展示 微信小程序项目实例——双人五子棋 双人五子棋是一款游戏小程序 两位选手可以在15x15的棋盘上 进行...
    99+
    2024-04-02
  • flask如何实现五子棋小游戏
    这篇文章主要介绍了flask如何实现五子棋小游戏,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。准备工作**1.**python环境、安装flask**2.**导入需要用到的包...
    99+
    2023-06-15
  • C++实现五子棋小游戏
    本文实例为大家分享了C++实现五子棋小游戏的具体代码,供大家参考,具体内容如下 思路:先用用system(“color 70”)改变控制台的背景色为灰白色,前...
    99+
    2024-04-02
  • Vue实现五子棋小游戏
    本文实例为大家分享了Vue实现五子棋小游戏的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html> <head>   ...
    99+
    2024-04-02
  • 微信小程序如何实现井字棋游戏
    这篇文章主要介绍了微信小程序如何实现井字棋游戏的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序如何实现井字棋游戏文章都会有所收获,下面我们一起来看看吧。效果图.wxml<view cla...
    99+
    2023-06-30
  • 微信小程序实现井字棋游戏
    本文实例为大家分享了微信小程序实现井字棋游戏的具体代码,供大家参考,具体内容如下 效果图 .wxml <view class="title">   <view w...
    99+
    2024-04-02
  • Android Studio实现五子棋小游戏
    项目目录 一、项目概述二、开发环境三、详细设计1、布局设计2、验证码3、AI人机4、背景音乐 四、运行演示五、项目总结六、源码获取 一、项目概述 五子棋是一种两人对弈的策略型棋类游戏,...
    99+
    2023-10-23
    android studio android ide 安卓app 移动应用开发
  • JavaScript如何实现网页五子棋小游戏
    这篇文章主要介绍“JavaScript如何实现网页五子棋小游戏”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“JavaScript如何实现网页五子棋小游戏”文章能帮助大家解决问题。设计思路如下:先采用...
    99+
    2023-07-02
  • Java如何实现五子棋游戏
    本篇内容介绍了“Java如何实现五子棋游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!简介相比之前,做出了以下修改:新增菜单栏,将重新开始...
    99+
    2023-06-30
  • JavaScript实现网页五子棋小游戏
    本文实例为大家分享了JavaScript实现网页五子棋小游戏的具体代码,供大家参考,具体内容如下 设计思路如下: 1.先采用的Math.random()方法决定哪一方先行; 2.设置...
    99+
    2024-04-02
  • Java实现简易五子棋小游戏
    本文实例为大家分享了Java实现简易五子棋小游戏的具体代码,供大家参考,具体内容如下 五子棋是一个简单小游戏,首先我们先想想五子棋都有什么东西,棋子,棋盘; 首先我们可以定义一个棋子...
    99+
    2024-04-02
  • 基于flask实现五子棋小游戏
    本文实例为大家分享了基于flask实现五子棋小游戏的具体代码,供大家参考,具体内容如下 前言 首先说明一下,本人方向是java后端,只因老师布置了一个作业,要用flask来做一个五子...
    99+
    2024-04-02
  • C++代码实现五子棋小游戏
    简单C++代码实现五子棋任务,供大家参考,具体内容如下 首先先展示一下运行的图片 话也不多说,直接分不同代码板块来介绍程序不同功能以及是如何实现的 首先,对于一个五子棋程序,我们要...
    99+
    2024-04-02
  • python实现简单五子棋小游戏
    用python实现五子棋简单人机模式的练习过程,供大家参考,具体内容如下 最近在初学python,今天就用自己的一些粗浅理解,来记录一下这几天的python简单人机五子棋游戏的练习,...
    99+
    2024-04-02
  • 基于C++实现五子棋小游戏
    本文实例为大家分享了C++实现五子棋小游戏的具体代码,供大家参考,具体内容如下  (这是一个颜色会变化的呦) #include <iostream> usi...
    99+
    2024-04-02
  • java五子棋小游戏实现代码
    前言 之前学完java基础课程,试着简单做了一下java的一个五子棋小游戏,记录下来。 界面 由于直接用的java库中的一些基本控件写的一个GUI,并没有做过多优化,感觉比较丑 下面...
    99+
    2024-04-02
  • Java实现五子棋游戏
    本文实例为大家分享了Java实现五子棋游戏的具体代码,供大家参考,具体内容如下 一、功能分析 五子棋的实现还是较为简单的,通过下期的流程我们可以知道大概要实现一下功能: 1、格界面 ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作