Files

112 lines
3.8 KiB
JavaScript
Raw Permalink Normal View History

2026-05-24 10:21:26 +08:00
"use strict";
cc._RF.push(module, '70062pr0GVInaTKlun3vtGf', 'vedio_model');
// Scripts/zzz废弃/vedio/vedio_model.js
"use strict";
// --------------------------------------------------------------------
// @author: xxx@syg.com(必填, 创建模块的人员)
// @description:
// 这里填写详细说明,主要填写该模块的功能简要
// <br/>Create: 2019-05-16 17:20:08
// --------------------------------------------------------------------
var BridgeClass = require("bridge.class");
var VedioModel = cc.Class({
"extends": BridgeClass,
ctor: function ctor() {},
properties: {},
initConfig: function initConfig() {
this.today_like_num = 0; //-- 今日点赞数
this.today_like_is_full = false; //-- 今日是否点赞数达到最大
this.all_vedio_data = {}; // 全部录像数据
this.filt_lv_flag = true; // 是否筛选等级相近的玩家录像
},
setPublicVedioData: function setPublicVedioData(data) {
if (!data) return;
var self = this;
// -- 类型
if (!self.all_vedio_data[data.type]) {
self.all_vedio_data[data.type] = {};
}
// -- 条件
if (!self.all_vedio_data[data.type][data.cond_type]) {
self.all_vedio_data[data.type][data.cond_type] = {};
}
// -- 添加录像数据
if (!self.all_vedio_data[data.type][data.cond_type].vedio_data) {
self.all_vedio_data[data.type][data.cond_type].vedio_data = [];
}
for (var i = 0; i < data.replay_list.length; ++i) {
var v = data.replay_list[i];
self.all_vedio_data[data.type][data.cond_type].vedio_data.push(v);
}
// -- 判断一下数据是否已经达到最大值,达到了则不再继续请求数据
if (data.len > self.all_vedio_data[data.type][data.cond_type].vedio_data.length) {
self.all_vedio_data[data.type][data.cond_type].is_full = false;
} else {
self.all_vedio_data[data.type][data.cond_type].is_full = true;
}
},
// -- 获取录像大厅数据
getPublicVedioData: function getPublicVedioData(vedioType, cond_type) {
var vedio_data = {};
if (vedioType) {
if (this.all_vedio_data[vedioType]) {
vedio_data = this.all_vedio_data[vedioType][cond_type] || {};
}
}
return vedio_data;
},
// -- 设置今日点赞数
setTodayLikeNum: function setTodayLikeNum(num) {
this.today_like_num = num;
var red_status = false;
this.today_like_is_full = true;
var likes_limit_cfg = game.configs.video_data.data_const["likes_limit"];
if (likes_limit_cfg && likes_limit_cfg.val > num) {
red_status = true;
this.today_like_is_full = false;
}
},
getTodayLikeNum: function getTodayLikeNum() {
return this.today_like_num;
},
// -- 是否请求过录像数据
checkIsReqVedioDataByType: function checkIsReqVedioDataByType(vedioType, cond_type) {
if (this.all_vedio_data[vedioType] && this.all_vedio_data[vedioType][cond_type]) {
return true;
}
return false;
},
getFiltLevelFlag: function getFiltLevelFlag() {
return this.filt_lv_flag;
},
// -- 缓存一下竞技场分页是否勾选筛选等级相近的玩家
setFiltLevelFlag: function setFiltLevelFlag(flag) {
this.filt_lv_flag = flag;
},
checkTodayLikeIsFull: function checkTodayLikeIsFull() {
return this.today_like_is_full;
},
// -- 更新数据(本地缓存主动更新)
updateVedioData: function updateVedioData(vedioType, id, key, val) {
var new_data;
for (var i in this.all_vedio_data) {
var all_data = this.all_vedio_data[i];
for (var k in all_data) {
var v = all_data[k];
for (var m = 0; m < v.vedio_data.length; m++) {
var vData = v.vedio_data[m];
if (vData.id == id) {
vData[key] = val;
new_data = vData;
}
}
}
}
return new_data;
}
});
cc._RF.pop();