微信小程序项目实例——别踩白块

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

微信小程序项目实例——别踩白块

项目代码见文字底部,点赞关注有惊喜


一、项目展示

别踩白块是一款微信小游戏
分为无尽模式、计时模式、急速模式三种模式
用户需要点击不断移动的黑色方块
若点击到白色方块则游戏结束

微信小程序项目实例——别踩白块

二、无尽模式

无尽模式下可以一直进行游戏
直到失败为止

其中方块的生成和点击计数代码如下:

<!--play.wxml-->
<view class="score">{{score}}</view>
<view class="play-box">
    <block wx:for="{{blockData}}" wx:for-index="i" wx:key="i">
        <view class="block-line" id="line-{{blockData[i].id}}">
            <block wx:for="{{blockData[i].block}}" wx:key="*this" wx:for-index="j">
                <view wx:if="{{blockData[i].block[j] == 0}}" id="block-{{blockData[i].id}}-{{j}}-{{0}}" class="block" bindtap="handleClick"></view>
                <view wx:else class="block black" id="block-{{blockData[i].id}}-{{j}}-{{1}}" bindtap="handleClick"></view>
            </block>  
        </view>
    </block>
</view>
// play 
var app = getApp()
Page({
  data: {
    typeName: '无尽模式',
    silding: false,
    score: 0,
    blockData:[]
  },
  onReady: function(){
      var array = [];
      // 先生成一个10个长度的数组
      for(var i = 0; i < 10; i++){
          // 生成一个随机位数为1的数组
          var orderArray = [0,0,0,0];
          var randomNum = Math.floor(Math.random() * 4);
          orderArray[randomNum] = 1;
          array.push({id: i, block: orderArray});
      }
      this.setData({
          blockData: array.reverse()
      });
  },
  handleClick: function(events){
      var id = events.currentTarget.id;
      var line = id.split("-")[1];
      var column = id.split("-")[2];
      var isBlack = id.split("-")[3];
      var blockData = this.data.blockData.reverse();
      var score = this.data.score;
      var orderArray = [0,0,0,0];
      // 判断是否是第一行
      if(line != blockData[0].id){
        this.handleWrong(0, score);
        return;
      }
      // 判断是否正确
      if(isBlack != 1){
        this.handleWrong(1, score);
        return;
      }

      // 正确下一个
      // 分数++
      // 最后一个小块的id为分数+10
      score++;
      orderArray[Math.floor(Math.random() * 4)] = 1;
      blockData.push({id: score+10, block: orderArray});
      blockData.shift();
      this.setData({
          silding: true,
          score: score,
          blockData: blockData.reverse()
      });
  },
  handleWrong: function( type , score){
      const titleArr = ["请点击第一个白块!游戏结束", "别点白块!游戏结束"];
      wx.showToast({
            title: titleArr[type],
            icon: 'cancel', 
            duration: 2000,
            complete: function(){
                // 将此分数存入全局变量
                app.globalData.currentScore = score;
                // 若此分数比最高分数还高 将其存入本地
                if(score > app.globalData.endlessScore){
                    app.globalData.endlessScore = score;
                    wx.setStorageSync('endlessScore',score);
                }
                var timer = setTimeout(function(){
                        wx.redirectTo({
                            url: '../end/end?type=endless&score=' + score
                        })
                        clearTimeout(timer);
                    }, 2000);
            }
        })
  },
  onLoad: function(){
      var that = this;
      wx.setNavigationBarTitle({
        title: that.data.typeName
      });
  }
})

具体的代码和实现效果可以看资源

微信小程序项目实例——别踩白块


三、计时模式

计时模式下
用户将在指定时间内点击黑块
时间到则结束游戏
微信小程序项目实例——别踩白块


四、急速模式

急速模式下
黑块的移动速度提升

微信小程序项目实例——别踩白块


文末

具体的介绍就到这里了
有兴趣的同学可以继续研究
代码放到下面链接里了

点击下载 小程序

微信小程序项目实例——别踩白块文章来源地址https://www.toymoban.com/news/detail-492733.html

到了这里,关于微信小程序项目实例——别踩白块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 微信小程序项目实例——打卡时钟

    项目代码见文字底部 这是一款简单实用的小时钟工具 分为工作和休息两种状态 用户可以设置相应的时间 所有的时钟记录都会被保存下来 首页由计时器、任务输入框和两个计时按钮组成 效果图如下: 用户在设置界面可以更改工作时长和休息时长 效果图如下: 点击下载

    2024年02月16日
    浏览(25)
  • 微信小程序项目实例——幸运大转盘

    项目代码见文字底部,点赞关注有惊喜 幸运大转盘是一个简单的抽奖小程序 参与用户点击抽奖便可抽取轮盘的奖品 抽奖页是一个大轮盘和活动规则 页面形式简单 主要核心在于轮盘 核心代码【轮盘旋转】如下: 其他相关代码见文章底部 效果如下: 领奖页是对获奖的信息进

    2024年02月11日
    浏览(37)
  • 微信小程序项目实例——备忘录

    项目代码见文字底部,点赞关注有惊喜 项目是一个备忘录,拥有记录文字、计时和提醒的基本功能 项目只有一个页面,整体简约便捷 用户可以输入相关事件,并设立时间,便可完成备忘 当完成或未按期完成时,可以自行确认或删除 项目已上传,点击下载(关注可私聊拿代

    2024年02月11日
    浏览(27)
  • 微信小程序项目实例源码——本地电商平台小程序

    该微信小程序项目使用了 vant ui 组件库,项目页面完整、功能全部有效! 本项目为小程序前端项目,可以直接导入微信开发者工具中打开,可用于计算机专业的课程设计、毕设项目,也可作为商用小程序的前端页面模板。 2.1 首页 在首页中使用了轮播图作为头部 banner 广告,

    2024年02月10日
    浏览(37)
  • 微信小程序项目实例——双人五子棋

    项目代码见文字底部,点赞关注有惊喜 微信小程序项目实例——双人五子棋 双人五子棋是一款游戏小程序 两位选手可以在15x15的棋盘上 进行五子棋竞技 同时小程序设置了悔棋功能 点击落子 判断胜负 胜利效果 重新开始 悔棋 具体的介绍就到这里了 有兴趣的同学可以继续研

    2024年02月12日
    浏览(33)
  • 狼人杀微信小程序项目实例(附源码)

    狼人杀是一款多人参与的,通过语言描述推动、较量口才和分析判断能力的策略类桌面游戏。 玩家人数适于4-18人参与 主要角色有:狼人 、预言家 、平民 、女巫 、猎人 、白痴 、守卫 、骑士等 “我自己是一名从事了6年python开发的老程序员,今年年初我花了一个月整理了一

    2024年02月11日
    浏览(36)
  • 微信小程序项目实例SSM项目小程序运动减肥+后台管理系统

     🍅文末获取联系🍅 目录 一、项目介绍  3.1可行性分析 3.1.1技术可行性 3.1.2经济可行性 3.1.3操作可行性 3.2网站性能需求分析 3.3网站功能分析 3.4系统流程的分析 3.4.1 用户管理的流程 二、截图  三、源码获取 计算机毕业设计微信小程序毕设项目之运动减肥+后台管理系统_哔

    2024年02月06日
    浏览(48)
  • 微信小程序项目实例——图片处理小工具(自制低配版美图秀秀)

    项目代码见文字底部,点赞关注有惊喜 这是一款实用的工具型小程序 共有滤镜、效果图和动态滤镜三个功能 用户可以选择想要处理的图片,设置模糊、怀旧、复古、美白以及其他效果 同时程序还增设了效果图功能 用户可以自行调整饱和度、亮度和对比度 此外程序还有动态

    2024年02月09日
    浏览(31)
  • 微信小程序作品实例

    目录 简介 作品详情 作品代码 一、主页界面 1、WXML文件: 2、WXSS文件: 3、JS文件 4、JSON文件: 5、补充  二、购物车界面  1、WXML文件  3、JS文件  4、JSON文件 三、分类界面和个人中心界面         这是我在学习完微信小程序后,写的一个小案例,是一个关于女性商品的,数据也

    2024年02月06日
    浏览(26)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包