微信小游戏---猜拳游戏

最近几天在学习小程序,看了网上的学习视频,于是自己捣鼓着做出了视频里面的小程序。

这是实现的效果图

一个小程序页面,一般有三个部分文件组成,index.js 这个文件里面放的是实现小程序的js代码;index.wxml文件里面放的是页面的结构层代码;相当于html,index.wxss放的是样式层代码,相当于css代码。

index.wxml运用的是小程序里面的组件,代码如下:

<!--index.wxml-->
<view class="container">

<text class="win-text">你已经获胜了</text>
<text class="win-num">{{winNum}}次</text>

<view class="result">
<image src="{{imgAi}}" class="imgAi"></image>
<text class="notice" >{{notice}}</text>
<image src="{{imgUser}}" class="imgUser"></image>
</view>

<view class="item">

<text class="notice-punches">出拳吧,少年~</text>

<block wx:for="{{srcs}}" wx:key="*this">
<view class="img-item" id="{{index}}" >
<image src="{{item}}" class="img-size" bindtap="userChooseImg"></image>
</view>
</block>

<button class="btn-again" bindtap="again">再来!</button>

</view>

</view>


index.js 的代码如下:

//index.js
//获取应用实例 
var numAi = 0;
var timer;
Page({
data: {
srcs: [
'/pages/images/shiyou.jpg',
'/pages/images/jiandao.jpg',
'/pages/images/bu.jpg',
],
imgAi: '', // 电脑随机显示的图片
imgUser: '/pages/images/wenhao.jpg', // 用户选中的图片
notice: '', // 猜拳对比结果
winNum: wx.getStorageSync('winNum'), //用户猜拳赢的次数
btnpunches: false, // 是否点击出拳
},

onLoad: function () {
this.timerGo();
},

//设置电脑每间隔0.2s随机显示石头剪刀布
timerGo() {
timer = setInterval(this.change, 200);
},

//设置电脑随机显示石头剪刀布
change() {

if (numAi >= 3) {
numAi = 0;
}
this.setData({
imgAi: this.data.srcs[parseInt(Math.random() * 3)],
})
},

//当用户点击下面方框的石头剪刀布,将用户数据设置为对用的图片
userChooseImg(e) {

if (this.data.btnpunches == true) {
return;
}

var num = this.data.winNum;

this.setData({
notice: '你输了',
btnpunches: true,
})

if (e.currentTarget.offsetLeft == 155) {
this.setData({
imgUser: '/pages/images/shiyou.jpg',
})
//清除计时器
clearInterval(timer);
if (this.data.imgAi == '/pages/images/jiandao.jpg') {
num++;
wx.setStorageSync('winNum', num)
this.setData({
notice: '你赢了',
winNum: num,
})
}

} else if (e.currentTarget.offsetLeft == 280) {
this.setData({
imgUser: '/pages/images/jiandao.jpg',
})
//清除计时器
clearInterval(timer);
if (this.data.imgAi == '/pages/images/bu.jpg') {

num++;
wx.setStorageSync('winNum', num)
this.setData({
notice: '你赢了',
winNum: num,
})
}

} else {
this.setData({
imgUser: '/pages/images/bu.jpg',
})
//清除计时器
clearInterval(timer);
if (this.data.imgAi == '/pages/images/shitou.jpg') {

num++;
wx.setStorageSync('winNum' 
本文作者:浅草yan
原文地址: 微信小程序实例-猜拳游戏-教程-小程序社区-微信小程序-微信小程序开发社区-小程序开发论坛-微信小程序联盟
  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
微信小游戏-斗地主是一款在微信平台上非常受欢迎的游戏,它结合了斗地主经典玩法和微信社交功能,让玩家可以与好友一起斗智斗勇。 在开发这款游戏时,使用了Node.js作为服务器端的开发语言。Node.js是一个基于JavaScript运行时的平台,它可以使我们使用JavaScript编写服务器端应用程序。这样一来,我们在开发微信小游戏-斗地主时可以使用JavaScript作为统一的开发语言,既方便了前端开发,又方便了后端开发。 通过使用Node.js作为服务器端,我们可以实现以下功能: 1. 用户管理:服务器可以管理玩家的注册、登录、信息保存等操作。每个玩家可以通过微信登录游戏,并在服务器上保存他们的游戏数据和好友列表。 2. 匹配系统:服务器可以实现玩家之间的匹配。玩家可以选择与好友进行对战,也可以选择与随机玩家进行匹配。服务器会根据玩家的匹配方式进行配对,确保游戏的公平性。 3. 游戏逻辑:服务器可以实现斗地主游戏的核心逻辑。它可以管理玩家的手牌、出牌规则、出牌顺序等游戏细节。服务器会实时更新玩家的游戏状态,保证游戏的顺畅进行。 4. 实时通信:服务器可以实现玩家之间的实时通信。玩家可以通过服务器发送消息给对方,例如邀请好友进行游戏、发送表情等。服务器可以将这些消息及时传递给游戏中的玩家,保证玩家之间的互动性。 通过使用Node.js作为服务器端,我们可以构建一个稳定高效的微信小游戏-斗地主平台。玩家可以通过微信小程序平台轻松进入游戏,与好友一起畅玩斗地主,享受竞技乐趣。同时,服务器的管理功能还可以确保游戏的公平性和用户体验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值