123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- import game_store from '../store/game'
- // // 往后端推送一次定时数据
- // export function post_data($big_data) {
- // wx.showLoading({
- // title: "正在结束上一个游戏",
- // mask: true
- // })
- // var $this = this
- // //判断数据长度大于理想状态 需要对数组进行切割 逐个提交数据
- // let $len = 300
- // console.log($big_data.attList.length, '结束游戏提交的数据量')
- // if ($big_data.attList.length > $len) {
- // let $count = Math.ceil($big_data.attList.length / $len)
- //
- // let index = 0
- // let inter = setInterval(() => {
- // if (index < $count) {
- // let $params = {
- // game_record_id: game_store.getters.getGameRecordId(),
- // //数据段长度大于65 多个提交
- // line: $big_data.attList.slice(index * $len, (index + 1) * $len),
- // line_med: $big_data.medList.slice(index * $len, (index + 1) * $len)
- // }
- // gameAddLine($params).then((res) => {
- // let $data = res.data
- // if ($data.code == 0) {
- // console.log('ok', $params['line'])
- // }
- // })
- // }
- // index++
- // if (index == $count) {
- // clearInterval(inter)
- // game_over()
- // }
- // }, 200)
- // return $count * 500
- // } else {
- // let $params = {
- // game_record_id: game_store.getters.getGameRecordId(),
- // //数据段长度小于65 单个提交
- // line: $big_data.attList,
- // line_med: $big_data.medList
- // }
- //
- // if (!$params.line) {
- // return false
- // }
- // gameAddLine($params).then((res) => {
- // let $data = res.data
- // if ($data.code == 0) {
- // }
- // setTimeout(() => {
- // game_over()
- // }, 800)
- // })
- // return 800
- // }
- // }
- //
- // // 结束游戏
- // function game_over() {
- // let $params = {
- // game_record_id: game_store.getters.getGameRecordId(),
- // type: game_store.getters.getMode(),
- // play_time: game_store.getters.getPlayTime() - Math.abs(game_store.getters.getPlayedTime())
- // }
- // //
- // gameEnd($params).then((res) => {
- // let $data = res.data
- // to_report()
- // })
- // }
- function to_report() {
- mpvue.navigateTo({
- url: "/pages/games/report/main?id=" + game_store.getters.getGameRecordId(),
- success() {
- wx.hideLoading()
- //设置游戏状态为 停止游戏
- game_store.setters.setGameStatus(0)
- //游戏结束重置游戏时间
- wx.removeStorageSync('play_time')
- //删除游戏专注数据
- //game_store.remover.rmGameAttMedDatas()
- //游戏结束重置游戏模式
- game_store.setters.setMode(0)
- // //删除游戏得id
- // game_store.setters.removeToyHex()
- //删除隐藏时间
- game_store.remover.rmHideTime()
- }
- })
- }
- /**
- * 游玩时间倒计时
- * @param value
- * @returns {string}
- */
- export function formatPlaySeconds(value) {
- // 字符串转数字
- let secondTime = parseInt(value); // 秒
- let minuteTime = 0; // 分
- if (secondTime > 60) {
- // 如果秒数大于60,将秒数转换成整数
- // 获取分钟,除以60取整数,得到整数分钟
- minuteTime = parseInt(secondTime / 60);
- //获取秒数,秒数取佘,得到整数秒数
- secondTime = parseInt(secondTime % 60);
- //如果分钟大于60,将分钟转换成小时
- }
- let result = "" + parseInt(secondTime);
- if (minuteTime > 0) {
- if (result.length === 1) {
- result = "0" + result;
- }
- if (parseInt(minuteTime).toString().length === 1) {
- minuteTime = "0" + parseInt(minuteTime);
- }
- result = "" + minuteTime + ":" + result;
- } else {
- result = "00:" + result;
- }
- return result;
- }
- /**
- * 获取大包数据进行绘制图表
- */
- export function get_big_data(hex) {
- let hexAry = []
- for (let i = 0; i < hex.length; i += 2) {
- hexAry.push(hex.substring(i, i+2))
- }
- //专注度数据
- let $att = parseInt(hexAry[6], 16)
- //放松度数据
- let $med = parseInt(hexAry[8], 16)
- let idx = 0
- let dataIndex = ['delta', 'theta', "low_alpha", "high_alpha", "low_beta", "high_beta", "low_gamma", "middle_gamma"]
- let datas = []
- hexAry.pop()
- for (let i = 11; i < hexAry.length; i += 3) {
- let num_1 = parseInt(hexAry[i], 16)
- let num_2 = parseInt(hexAry[i + 1], 16)
- let num_3 = parseInt(hexAry[i + 2], 16)
- let show_value = num_1 + num_2 + num_3;
- let basic_value = parseInt("0x" + hexAry[i] << 16 | "0x" + hexAry[i + 1] << 8 | "0x" + hexAry[i + 2], 16)
- datas[dataIndex[idx]] = show_value
- datas[`${dataIndex[idx]}_basic`] = basic_value
- idx += 1;
- }
- datas['att'] = $att;
- datas['med'] = $med;
- return datas
- }
|