Files
fc/dev/project/library/imports/23/231ae7f8-7c2d-4c7f-ae34-e73e2fb7addb.js
2026-05-24 10:21:26 +08:00

126 lines
3.9 KiB
JavaScript

"use strict";
cc._RF.push(module, '231aef4fC1Mf6405z4vt63b', 'stronger_model');
// Scripts/mod/stronger/stronger_model.js
"use strict";
// --------------------------------------------------------------------
// @author: xxx@syg.com(必填, 创建模块的人员)
// @description:
// 这里填写详细说明,主要填写该模块的功能简要
// <br/>Create: 2019-03-29 11:43:16
// --------------------------------------------------------------------
var BridgeClass = require("bridge.class");
var BattleDramaController = require("battle_drama_controller");
var GuildController = require("guild_controller");
var RoleController = require("role_controller");
var StrongerModel = cc.Class({
"extends": BridgeClass,
ctor: function ctor() {},
properties: {},
initConfig: function initConfig() {
this.scroe_list = {}; //-- 我的伙伴评分数据
this.max_list = {}; //-- 本服最强评分数据
},
// --设置伙伴的评分数据
setDataByBid: function setDataByBid(data) {
var self = this;
if (!self.scroe_list[data.partner_bid]) {
self.scroe_list[data.partner_bid] = {};
}
self.scroe_list[data.partner_bid] = data.partner_score; //--伙伴评分
if (!self.max_list[data.partner_bid]) {
self.max_list[data.partner_bid] = {};
}
self.max_list[data.partner_bid] = data.stronger_partner_score; //--最强伙伴评分
},
//--返回英雄的总评/本服最强
getTotalAndMaxValByBid: function getTotalAndMaxValByBid(bid) {
var self = this;
var total = 0;
if (self.scroe_list[bid]) {
for (var k = 0; k < self.scroe_list[bid].length; ++k) {
var v = self.scroe_list[bid][k];
total += v.val;
}
}
var max = 0;
if (self.max_list[bid]) {
for (var _k = 0; _k < self.max_list[bid].length; ++_k) {
var _v = self.max_list[bid][_k];
max += _v.val;
}
}
return {
total: total,
max: max
};
},
// -- 根据英雄bid获取变强相关数据
getStrongerValByBid: function getStrongerValByBid(bid, stronger_id) {
var scroe_data = this.scroe_list[bid] || {};
var max_data = this.max_list[bid] || {};
var scroe_val = 0;
var max_val = 0;
for (var k = 0; k < scroe_data.length; ++k) {
var v = scroe_data[k];
if (v.id_2 == stronger_id) {
scroe_val = v.val;
break;
}
}
for (var _k2 = 0; _k2 < max_data.length; ++_k2) {
var _v2 = max_data[_k2];
if (_v2.id_2 == stronger_id) {
max_val = _v2.val;
break;
}
}
return {
scroe_val: scroe_val,
max_val: max_val
};
},
// -- 判断变强item是否开启
checkStrongItemIsOpen: function checkStrongItemIsOpen(data) {
var is_open = false;
if (data) {
if (data[0] && data[0] == 'dugeon') {
//then --关卡的
var drama_data = BattleDramaController.getInstance().getModel().getDramaData();
if (drama_data && data[1]) {
var dungeon_id = data[1];
if (drama_data.max_dun_id >= dungeon_id) {
is_open = true;
}
}
} else if (data[0] && data[0] == 'lev') {
//then -- 等级的
var role_vo = RoleController.getInstance().getRoleVo();
if (role_vo && data[1]) {
var lev = data[1];
if (role_vo.lev >= lev) {
is_open = true;
}
}
} else if (data[0] && data[0] == 'guild') {
//then --公会等级
var _role_vo = RoleController.getInstance().getRoleVo();
if (_role_vo && _role_vo.gid != 0 && _role_vo.gsrv_id != '') {
// then --表示有公会
var guild_info = GuildController.getInstance().getModel().getMyGuildInfo();
if (guild_info) {
var _lev = data[1];
if (guild_info.lev >= _lev) {
is_open = true;
}
}
}
}
}
return is_open;
}
});
cc._RF.pop();