微信小程序之猜数字和猜拳小游戏

这篇具有很好参考价值的文章主要介绍了微信小程序之猜数字和猜拳小游戏。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

效果图

app.json

一、首页(index3)的代码

wxml代码

wxss代码

二、猜数字页面(index)代码

wxml代码

wxss代码

js代码

三.游戏规则页面(logs)代码

wxml代码

wxss代码

四.猜拳页面(q1)代码

wxml代码

wxss代码

js代码


效果图

猜拳微信小程序,微信小程序,微信小程序,小程序,学习

猜拳微信小程序,微信小程序,微信小程序,小程序,学习

猜拳微信小程序,微信小程序,微信小程序,小程序,学习

猜拳微信小程序,微信小程序,微信小程序,小程序,学习

app.json

猜拳微信小程序,微信小程序,微信小程序,小程序,学习文章来源地址https://www.toymoban.com/news/detail-853248.html

一、首页(index3)的代码

wxml代码

<view class="box2">
    <navigator url="../index/index">
        <button type="default">猜数字</button>
    </navigator>
</view>
<view class="box2">
    <navigator url="../logs/logs">
        <button type="primary">游戏规则</button>
    </navigator>
</view>
<view class="box3">
    <navigator url="../q1/q1">
        <button type="default">猜拳</button>
    </navigator>
</view>

wxss代码

.box2{
  margin-top: 200rpx;
  width: 100%;
  height: 100rpx;
}
.box3{
  margin-top: 240rpx;
  width: 100%;
  height: 100rpx;
}

二、猜数字页面(index)代码

wxml代码

<view class="container">
  <input type="number" placeholder="输入1到100的数字" bindinput="onInputChange"/>
  <button bindtap="makeGuess">猜数字</button>
  <text>{{message}}</text>
  <view>
    <text>猜数字历史:\n</text>
    <block wx:for="{{guesses}}" wx:key="*this">
      <text>第{{index + 1}}次: {{item.num}} - {{item.hint}}\n</text>
    </block>
  </view>
</view>

wxss代码

.container {
  padding: 20px;
}

input {
  width: 100%;
  border: 1px solid #ccc;
  padding: 10px;
  margin-bottom: 10px;
}

button {
  width: 100%;
  background-color: #1aad19;
  color: white;
  padding: 10px;
  border: none;
}

.history {
  margin-top: 20px;
}

.history text {
  display: block; 
}

js代码

Page({
  data: {
    numberToGuess: null,
    guesses: [],
    guessCount: 0,
    inputNumber: '',
    message: '',
    hint: ''
  },

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

  startNewGame: function() {
    const randomNum = Math.round(Math.random() * 100) + 1;
    this.setData({
      numberToGuess: randomNum,
      guesses: [],
      guessCount: 0,
      message: '开始猜数字吧!',
      hint: ''
    });
  },

  onInputChange: function(e) {
    this.setData({
      inputNumber: e.detail.value
    });
  },

  makeGuess: function() {
    const guess = parseInt(this.data.inputNumber, 10);
    if (isNaN(guess) || guess < 1 || guess > 100) {
      this.setData({ message: '请输入1到100之间的数字。' });
      return;
    }

    let newHint = '';
    if (guess === this.data.numberToGuess) {
      newHint = '猜对了!';
      this.setData({
        message: '恭喜你猜对了!游戏即将重新开始。',
        hint: newHint
      });
      setTimeout(() => {
        this.startNewGame();
      }, 2000);
    } else {
      newHint = guess < this.data.numberToGuess ? '猜小了!' : '猜大了!';
      this.setData({
        message: '继续猜...',
        hint: newHint
      });
    }

    const count = this.data.guessCount + 1;
    const guesses = this.data.guesses.concat({ num: guess, hint: newHint });

    this.setData({
      guessCount: count,
      guesses: guesses
    });

    if (count >= 5) {
      this.setData({
        message: '游戏结束,即将跳转...'
      });
      setTimeout(() => {
        wx.navigateTo({
          url: '/pages/index3/index3' 
        });
      }, 2000);
    }
  }
});

三.游戏规则页面(logs)代码

wxml代码

<view class="demo-box">
<text>
 1.游戏仅供娱乐
 2.此游戏有很多不足
 3.玩家可以提供您宝贵意见
</text>
</view>

wxss代码

.demo-box{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  height: 100vh;
}
text{
  margin: 0 50rpx;
  line-height: 100rpx;
}

四.猜拳页面(q1)代码

wxml代码

<view class="container">
  <button bindtap="makeChoice" data-choice="scissors">剪刀</button>
  <button bindtap="makeChoice" data-choice="rock">石头</button>
  <button bindtap="makeChoice" data-choice="paper">布</button>
  <text>玩家胜利次数:{{playerWins}}</text>
  <text>电脑胜利次数:{{computerWins}}</text>
  <text>平局次数:{{draws}}</text>
  <text>{{message}}</text>
</view>

wxss代码

.container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

button {
  margin: 10px;
}

js代码

Page({
  data: {
    playerWins: 0,
    computerWins: 0,
    draws: 0,
    message: ''
  },

  makeChoice: function(event) {
    const playerChoice = event.currentTarget.dataset.choice;
    const choices = ['scissors', 'rock', 'paper'];
    const computerChoice = choices[Math.round(Math.random() * choices.length)];
    const result = this.judge(playerChoice, computerChoice);

    if (result === 'win') {
      this.setData({
        playerWins: this.data.playerWins + 1,
        message: '你赢了这一轮!'
      });
    } else if (result === 'lose') {
      this.setData({
        computerWins: this.data.computerWins + 1,
        message: '电脑赢了这一轮!'
      });
    } else {
      this.setData({
        draws: this.data.draws + 1,
        message: '这一轮是平局!'
      });
    }

    this.checkGameEnd();
  },

  judge: function(player, computer) {
    if (player === computer) {
      return 'draw';
    }
    if (
      (player === 'scissors' && computer === 'paper') ||
      (player === 'rock' && computer === 'scissors') ||
      (player === 'paper' && computer === 'rock')
    ) {
      return 'win';
    }
    return 'lose';
  },

  checkGameEnd: function() {
    if (this.data.playerWins === 2 || this.data.computerWins === 2) {
      wx.navigateTo({
        url: '/pages/index3/index3' 
      });
    }
  }
});

到了这里,关于微信小程序之猜数字和猜拳小游戏的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 全新微信小程序源码|小程序游戏源码|小游戏源码2000套

    Authing小程序SDK(authing-wxapp-sdk)适合在微信小程序环境下使用,基于authing-js-sdk (打开新窗口),对微信小程序环境进行了适配。您可以使用AuthenticationClient中的所有方法authing-js-sdk  (打开新窗口),如获取和修改用户信息、添加用户自定义字段等。同时专门用于小程序环境

    2024年02月05日
    浏览(48)
  • Unity项目转微信小游戏 微信小程序保姆教程,繁杂问题解决,及微信小游戏平台简单性能测试

    借着某人需求,做了一波简单的技术调研:将Unity项目转换为微信小游戏。 本文主要内容:Unity转换小游戏的步骤,遇到问题的解决方法,以及简单的性能测试对比 微信小游戏的限制 微信小游戏对程序包体大小有严格限制:首包必须小于2M,首包加分包(后加载)不得大于

    2024年02月05日
    浏览(42)
  • 微信小程序、小游戏的流量主一般可以赚多少钱?

    本篇文章主要科普小程序、小游戏流量主一般赚钱的实际情况,通过在下长期运营的经验汇总而成。 日期:2023年2月26日 作者:任聪聪 小程序、小程序满1000用户后即可开通流量主,但实际上很多人并没有传说中的那种日赚几千的流量收入的。大部分基本为几分钱,几毛钱。

    2024年02月02日
    浏览(117)
  • vue3+uniapp在微信小程序实现一个2048小游戏

    微信小程序搜索《静远的工具箱》:偶数求和那个功能

    2024年04月12日
    浏览(46)
  • NO.3--- 微信小程序项目创建之 “小程序”、“小游戏”、“代码片段”、“公众号网页项目” 版块的学习记录(游客模式)

    一、微信小程序登录界面的相关信息。 1.1、开启软件 打开已安装好的微信开发者工具。 1.2、登录界面 第一次登陆应该是弹出一个二维码框,如以下这样: 1.3、登录模式 从登陆界面可以看到有两种登陆方式,一种是微信扫描二维码登入,另一种是以 “游客模式” 登入。我

    2024年02月02日
    浏览(56)
  • 小程序游戏对接广告收益微信小游戏抖音游戏软件

    小程序游戏对接广告是一种常见的游戏开发模式,开发者可以通过在游戏中嵌入广告来获取收益。以下是一些与小程序游戏对接广告收益相关的关键信息: 小程序游戏广告平台选择: 选择适合你的小程序游戏的广告平台非常重要。不同的平台提供不同类型的广告,包括横幅

    2024年02月04日
    浏览(35)
  • 【小程序】快来开发你的第一个微信小游戏(详细流程)

    🥳 作者:伯子南 😎 坚信: 好记性不如乱笔头,独乐乐不如众乐乐 💪 个人主页:https://blog.csdn.net/qq_34577234?spm=1010.2135.3001.5421 👬🏻 觉得博主文章不错的话,请三连支持一下!如有需要我的支持,请私信! 本文通过开发一个简单的小游戏,来带领大家实操一下开发小游戏

    2024年02月03日
    浏览(43)
  • 微信开发者工具-导入小程序项目会自动切换到小游戏打开出错的解决方案

    微信开发者工具导入小程序项目会自动切换到小游戏打开出错, 提示appid错误,如下图 错误 Error: INVALID_TOKEN... 表示网络已断开, 检查开发工具是否连接到网络, 或注销重新登录开发工具试试 如果提示缺少 game.json ,表示当前打开的不是小游戏项目,要选小程序项目后再导入

    2024年02月11日
    浏览(67)
  • 【Android Studio】图形化数字游戏,小游戏2048。

    手机中的小游戏是一种在日常生活中应用广泛的休闲软件,无论是在超市商店,还是在办公室,或是家庭都有着它的身影。随着移动互联网和智能手机的不断发展和进步,当今市场上已经出现了多种简单轻松的小游戏,几乎每一位智能手机的使用者都会在种类繁多的App网站上

    2024年02月03日
    浏览(30)
  • 【C语言小游戏--猜数字】

    猜数字小游戏是我们大多数人学习C语言时都会了解到的一个有趣的C语言小游戏,下面我将详细介绍该游戏的实现和编程逻辑。玩小游戏的同时,也能对C语言控制语句有更好的认识。 电脑随机生成一个1-100的数字,玩家来猜。玩家可以根据自己需要,设置每次猜的次数。如果

    2024年02月08日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包