"use strict"; cc._RF.push(module, 'f613ftIN6JL74MO9bFkYBmJ', 'role_model'); // Scripts/mod/personal/role_model.js "use strict"; /*-----------------------------------------------------+ * 主角色数据模块 * @author whjing2012@163.com +-----------------------------------------------------*/ var RoleModel = cc.Class({ ctor: function ctor() { this.role_vo = null; }, initConfig: function initConfig() { this.open_srv_day = 0; // 开服天数. this.world_lev = 0; }, // -- 设世界等级 setWorldLev: function setWorldLev(lev) { this.world_lev = lev; }, // -- 获取世界等级 getWorldLev: function getWorldLev() { return this.world_lev; }, // 初始化角色基础数据 initRoleBaseData: function initRoleBaseData(data) { this.initAttribute(data); this.role_vo.dispatchUpdateBaseAttr(); }, // 资产信息变化 initRoleAssetsData: function initRoleAssetsData(data) { this.initAttribute(data); }, // 更新角色所有属性 initAttribute: function initAttribute(data) { if (!this.role_vo) { var RoleVo = require("role_vo"); this.role_vo = new RoleVo(); } this.role_vo.initAttributeData(data); }, // 更新角色单个属性 setRoleAttribute: function setRoleAttribute(key, value) { if (this.role_vo) { this.role_vo.setRoleAttribute(key, value); } }, // 特权礼包 setPrivilegeData: function setPrivilegeData(data_list) { this.privilege_data = data_list; }, getPrivilegeData: function getPrivilegeData() { return this.privilege_data; }, /** * 监测当前的特权状态 * @param {*} id 1快速作战特权 2远航普通特权 3远航高级特权 4元素聖殿特權 5特權靈窩 */ checkPrivilegeStatus: function checkPrivilegeStatus(id) { var status = false; if (this.privilege_data) { for (var index = 0; index < this.privilege_data.length; index++) { var element = this.privilege_data[index]; if (element.id == id) { status = element.status == 1; break; } } } return status; }, // 1快速作戰特權 2遠航普通特權 3遠航高級特權 4元素聖殿特權 5特權靈窩 getPrivilegeDataById: function getPrivilegeDataById(id) { if (this.privilege_data) { for (var i in this.privilege_data) { if (this.privilege_data[i].id == id) { return this.privilege_data[i]; } } } }, getRoleVo: function getRoleVo() { return this.role_vo; }, // 设置开服天数 setOpenSrvDay: function setOpenSrvDay(day) { this.open_srv_day = day; this.setRoleAttribute("open_day", day); gcore.GlobalEvent.fire(EventId.OPEN_SRV_DAY, day); }, getOpenSrvDay: function getOpenSrvDay() { return this.open_srv_day; }, //是否在本服里面 isTheSame: function isTheSame(srv_id) { if (this.serverList && srv_id) { return this.serverList[srv_id] != null; } return true; }, // --活动资产信息改变 initRoleActionAssetsData: function initRoleActionAssetsData(holiday_assets, is_update) { if (!this.role_vo) { var RoleVo = require("role_vo"); this.role_vo = new RoleVo(); } if (holiday_assets) { this.role_vo.initActionAssetsData(holiday_assets, is_update); } }, //--獲取徽章點數對應的名字 getHonorPointName: function getHonorPointName(pos) { var point = pos || 0; var list = game.configs.room_feat_data.data_honor_title_info; if (!list) return; list.sort(function (a, b) { return a.min < b.min; }); var count = list.length; for (var i in list) { var v = list[i]; if (point >= v.min && point <= v.max) { if (i >= count - 1) { return [v.name, v.res_id, -1]; } else { return [v.name, v.res_id, list[i + 1].min, list[i + 1].name, list[i + 1].res_id]; } } } if (Utils.next(list) != null) { return [list[count - 1].name, list[count - 1].res_id, -1]; } } }); cc._RF.pop();