国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

H5小游戲 【篇一】 組詞游戲

CloudwiseAPM / 2625人閱讀

摘要:小游戲篇一組詞游戲項目功能簡介詞庫功能,項目文件里配有格式的中文常用詞組詞庫,每次隨機(jī)抽取詞語進(jìn)行游戲匹配消除功能,自動在詞庫中匹配選中詞語并進(jìn)行消除選中動畫以及消除動畫,均由生成爆炸動畫智能提醒系統(tǒng),秒之后未作操作可提示單詞過關(guān)判定庫描述

H5小游戲 篇一 組詞游戲

項目功能簡介

詞庫功能,項目文件里配有csv格式的中文常用詞組詞庫,每次隨機(jī)抽取詞語進(jìn)行游戲

匹配消除功能,自動在詞庫中匹配選中詞語并進(jìn)行消除

選中動畫以及消除動畫,均由svg生成爆炸動畫

智能提醒系統(tǒng),10秒之后未作操作可提示單詞

過關(guān)判定

bodymovin庫描述動畫

核心代碼展示鏈接描述

https://github.com/fanshyiis/...

獲取詞庫,根據(jù)csv文件
$.ajax({
    url: "./js/ck2.csv",
    dataType: "text"
}).done(successFunction);

// 回調(diào)函數(shù)
function successFunction(data) {
    var allRows = data.split(/
?
|
/);
    for (var singleRow = 1; singleRow < allRows.length; singleRow++) {
        if (allRows[singleRow].length === 2) {
          var m = {
              a: allRows[singleRow][0],
              b: allRows[singleRow][2]
          }
          dataBase.push(m)
        }
    }
}
隨機(jī)抽取函數(shù)

會根據(jù)數(shù)組的長度獲取隨機(jī)數(shù)據(jù)

function getArrayItems(arr, num) {
//新建一個數(shù)組,將傳入的數(shù)組復(fù)制過來,用于運(yùn)算,而不要直接操作傳入的數(shù)組;
var temp_array = new Array();
for (var index in arr) {
    temp_array.push(arr[index]);
}
//取出的數(shù)值項,保存在此數(shù)組
var return_array = new Array();
for (var i = 0; i0) {
        //在數(shù)組中產(chǎn)生一個隨機(jī)索引
        var arrIndex = Math.floor(Math.random()*temp_array.length);
        //將此隨機(jī)索引的對應(yīng)的數(shù)組元素值復(fù)制出來
        return_array[i] = temp_array[arrIndex];
        //然后刪掉此索引的數(shù)組元素,這時候temp_array變?yōu)樾碌臄?shù)組
        temp_array.splice(arrIndex, 1);
    } else {
        //數(shù)組中數(shù)據(jù)項取完后,退出循環(huán),比如數(shù)組本來只有10項,但要求取出20項.
        break;
    }
}
return return_array;

}

svg動畫渲染插件
  function clear(id) {
  document.getElementById(id).innerHTML = ""
    console.log(id,"-----------------")
      bodymovin.loadAnimation({
container: document.getElementById(id), // 渲染動畫的 dom 元素
renderer: "svg",
loop: false,
autoplay: true,
path: "./js/data.json"
  })
  }
var vue = new Vue({
  el: "#vue",
  data: {
      windowBg: false,
      restart: false,
      passNum: cn,
      pass: 1,
    grid: 9,
    allText: null,
    gridList: [],
    text: "春天里柳樹發(fā)芽百花",
    one: null,
    two: null,
    reData: null,
    timeDuring: 0
  },
  methods: {
      // 重置函數(shù)
      reStart () {
          this.restart = true
          setTimeout(function () {
            vue.restart = false
          }, 800)
          this.playAudio("restart")
          this.passNum = cn
          this.gridList = JSON.parse(JSON.stringify(this.reData))
      },
      playAudio (val) {
          var x = document.getElementById(val)
          x.load()
          x.play()
      },
      setTime () {
          this.timeDuring++
          if (this.timeDuring === 10) {
              this.tip()
          }
          console.log(this.timeDuring)
        setTimeout(function () {
            vue.setTime()
        }, 1000)
      },
      tip () {
          let a = ""
          console.log(choose)
          this.gridList.map(val => {
              if (!val.r && val.f) {
                a = a + val.f
              }
          })
          let b = null
          choose.map(val => {
              if (a.indexOf(val.a) !== -1 && a.indexOf(val.b) !== -1) {
                  b = val.a
              }
          })
          if (!b) {
              this.getNextPass()
          }
          if (this.one) {
              this.choose(this.one, "t")
          }
          this.gridList.map(val => {
              if (!val.r && val.f === b) {
                this.one = null
                this.choose(val, "t")
              }
          })
          console.log(a)
      },
      // 選擇函數(shù)
      choose (item, type) {
          if (type !== "t") {
          this.timeDuring = 0
          }
          if (!item.f) {
              return false
          }
          if (this.one && item.x === this.one.x && item.y === this.one.y) {
              this.playAudio("touchCard")
            item.choose = !item.choose
            this.one = null
              return false
          } else {
              this.playAudio("touchCard")
              item.choose = !item.choose
              if (this.one) {
                  this.two = item
                  // font()
                  // 模擬消除
                  // 加上timeout效果更好
                  var _this = this
                  setTimeout(function () {
                      _this.clearText()
                  }, 300)
              } else {
                  this.one = item
                  // font()
              }
          }
      },
      // 消除邏輯
      clearText () {
          var r = false
          dataBase.map(val =>{
              if (val.a === this.one.f && val.b === this.two.f) {
                  r = true
              }
          })
          if (!r) {
              this.gridList.map(val => {
                  if (val.x === this.two.x && val
                      .y === this.two.y) {
                      val.choose = false
                      this.playAudio("error")
                  }
                  if (val.x === this.one.x && val
                      .y === this.one.y) {
                      val.choose = false
                  }
              })
              this.two = false
              this.one = false
              return false
          }
          this.gridList.map(val => {
              if (val.x === this.one.x && val
                  .y === this.one.y) {
                  clear(val.x + "" + val.y)
                  setTimeout(function () {
                      val.f = ""
                  }, 200)
                  val.r = true
              }
              if (val.x === this.two.x && val
                  .y === this.two.y) {
                  clear(val.x + "" + val.y)
                  setTimeout(function () {
                          val.f = ""
                      }, 200)
                  val.r = true
                  this.playAudio("success")
              }
          })
          this.passNum--
          console.log(this.passNum)
          if (this.passNum === 0) {
              this.playAudio("next")
              this.windowBg = true
          }
          // this.sound_error = true
          this.one = null
          this.two = null
      },
      // 進(jìn)入下一關(guān)
      getNextPass () {
          this.one = false
          this.timeDuring = 0
          this.windowBg = false
          cn = cn + 2,
          this.pass++
          this.passNum = cn
          getDataBase()
          setTimeout(function () {
              font()
          }, 1000)
      },
      //初始化函數(shù)
    start () {
      this.gridList = []
      for (var i = 0; i < this.grid; i++) {
          for (var j = 0; j < this.grid; j++) {
         this.gridList.push({
              x: i,
              y: j,
              f: "",
              choose: false,
              r: false,
              m: false
         })
        }
      }
      var l = []
      choose.map(val => {
          l.push(val.a)
          l.push(val.b)
      })
      $("#bggg").click()
      // this.playAudio("bgm")
      console.log(l)
      this.allText = l
      var c = getArrayItems(this.gridList, cn * 2)
      console.log(c)
      c.map((val, index) => {
          val.f = l[index]
      })
      this.reData = JSON.parse(JSON.stringify(this.gridList))
    }
  },
  created () {
      getDataBase()
      this.setTime()
  }
})
其他函數(shù)就不一一介紹了
上個圖最后

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/102078.html

相關(guān)文章

  • H5 組詞游戲源代碼

    摘要:小游戲篇一組詞游戲項目功能簡介詞庫功能,項目文件里配有格式的中文常用詞組詞庫,每次隨機(jī)抽取詞語進(jìn)行游戲匹配消除功能,自動在詞庫中匹配選中詞語并進(jìn)行消除選中動畫以及消除動畫,均由生成爆炸動畫智能提醒系統(tǒng),秒之后未作操作可提示單詞過關(guān)判定核心代 H5小游戲 篇一 組詞游戲 項目功能簡介 詞庫功能,項目文件里配有csv格式的中文常用詞組詞庫,每次隨機(jī)抽取詞語進(jìn)行游戲 匹配消除功能,自動在詞...

    chadLi 評論0 收藏0
  • 白鷺引擎王澤:重度H5游戲性能優(yōu)化技巧標(biāo)題的文章

    摘要:據(jù)不完全統(tǒng)計,這五年中,白鷺引擎累計運(yùn)轉(zhuǎn)的游戲和微信小游戲的流水?dāng)?shù)據(jù)約為億。 我們的引擎架構(gòu)師做某一沙龍活動的演講速記,純純的干貨,分享給大家。 王澤:各位開發(fā)者下午好!我叫王澤,是白鷺引擎的首席架構(gòu)師。 今天給大家分享的題目是《重度H5游戲性能優(yōu)化技巧》。之所以決定用這個題目,是因為我最近幾周在廣深一帶拜訪了很多使用白鷺引擎的開發(fā)者,發(fā)現(xiàn)特別是在廣州一帶,大部分開發(fā)者都在做重度H5游...

    xbynet 評論0 收藏0
  • 從零到一:用Phaser.js寫意地開發(fā)游戲(Chapter 1 - 認(rèn)識Phaser.js)

    摘要:由于公司項目轉(zhuǎn)型,需要創(chuàng)造一個小游戲平臺,需要使用一個比較成熟的前端游戲框架來快速開發(fā)小游戲。僅支持開發(fā)游戲,因為專注,所以高效。早在年的光棍節(jié)前一天晚上,這個游戲就誕生了。原型是一個之前很火的非常魔性的小游戲,叫尋找程序員。 showImg(https://segmentfault.com/img/bVMGY5?w=900&h=500); 寫在前面 實際上我從未想過我會接觸到H5小游...

    didikee 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<