"use strict"; cc._RF.push(module, '622bbkiYFRIaKotw7dT7rwW', 'hero_controller'); // Scripts/mod/partner/hero_controller.js "use strict"; // -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里填写详细说明,主要填写该模块的功能简要 //
Create: {DATE} // -------------------------------------------------------------------- var BridgeController = require("bridge.controller"); var HeroConst = require("hero_const"); var HeroEvent = require("hero_event"); var PartnerConst = require("partner_const"); var HeroCalculate = require("hero_calculate"); var BackPackConst = require("backpack_const"); var MainuiConst = require("mainui_const"); var MainuiController = require("mainui_controller"); var BackPackController = require("backpack_controller"); // 桥接替换的界面 var HeroController = cc.Class({ "extends": BridgeController, ctor: function ctor() {}, // 初始化配置数据 initConfig: function initConfig() { var HeroModel = require("hero_model"); this.model = new HeroModel(this); this.model.initConfig(); }, // 返回当前的model getModel: function getModel() { return this.model; }, // 注册监听事件 registerEvents: function registerEvents() { // 断线重连重置一下伙伴及其装备缓存数据 this.re_link_game_event = gcore.GlobalEvent.bind(EventId.EVT_RE_LINK_GAME, function () { // this.sender11000(); // this.sender11040(); // this.sender11037(); }.bind(this)); // 角色数据创建完毕后,监听资产数据变化情况 this.login_event_success = gcore.GlobalEvent.bind(EventId.EVT_ROLE_CREATE_SUCCESS, function () { gcore.GlobalEvent.unbind(this.login_event_success); this.login_event_success = null; var RoleController = require("role_controller"); var role_vo = RoleController.getInstance().getRoleVo(); this.role_update_evt = role_vo.bind(EventId.UPDATE_ROLE_ATTRIBUTE, function (key, lev) { if (key == "coin") { this.model.checkLevelRedPointUpdate(); } else if (key == "hero_exp") { this.model.checkLevelRedPointUpdate(); } else if (key == "lev") { this.model.checkUnlockFormRedPoint(lev); } }, this); }.bind(this)); // 物品道具增加 判断红点 if (!this.add_goods_event) { this.add_goods_event = gcore.GlobalEvent.bind(EventId.ADD_GOODS, function (bag_code, temp_add) { if (bag_code == BackPackConst.Bag_Code.EQUIPS) { this.model.is_equip_redpoint_bag_update = true; this.model.checkEquipRedPointUpdate(); } else { for (var item_i in temp_add) { var item = temp_add[item_i]; if (item.base_id == this.model.upgrade_star_cost_id) { this.model.is_upgradestar_redpoint_bag_update = true; this.model.checkUpgradeStarRedPointUpdate(); this.model.checkLevelRedPointUpdate(); } else if (item.base_id == this.model.talent_skill_cost_id) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } // gdata("item_data", "data_skill_item_list", item.base_id); if (Utils.getItemConfig(item.base_id)) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } } } }.bind(this)); } // 物品道具删除 判断红点 if (!this.del_goods_event) { this.del_goods_event = gcore.GlobalEvent.bind(EventId.DELETE_GOODS, function (bag_code, temp_add) { if (bag_code == BackPackConst.Bag_Code.EQUIPS) { this.model.is_equip_redpoint_bag_update = true; this.model.checkEquipRedPointUpdate(); } else { for (var item_i in temp_add) { var item = temp_add[item_i]; if (item.base_id == this.model.upgrade_star_cost_id) { this.model.is_upgradestar_redpoint_bag_update = true; this.model.checkUpgradeStarRedPointUpdate(); this.model.checkLevelRedPointUpdate(); } else if (item.base_id == this.model.talent_skill_cost_id) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } if (Utils.getItemConfig(item.base_id)) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } } } }.bind(this)); } // 物品道具改变 判断红点 if (!this.modify_goods_event) { this.modify_goods_event = gcore.GlobalEvent.bind(EventId.MODIFY_GOODS_NUM, function (bag_code, temp_add) { if (bag_code == BackPackConst.Bag_Code.EQUIPS) { this.model.is_equip_redpoint_bag_update = true; this.model.checkEquipRedPointUpdate(); } else { for (var item_i in temp_add) { var item = temp_add[item_i]; if (item.base_id == this.model.upgrade_star_cost_id) { this.model.is_upgradestar_redpoint_bag_update = true; this.model.checkUpgradeStarRedPointUpdate(); this.model.checkLevelRedPointUpdate(); } else if (item.base_id == this.model.talent_skill_cost_id) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } if (Utils.getItemConfig(item.base_id)) { this.model.setUpdateTalentRedpoint(); this.model.checkTalentRedPointUpdate(); } } } }.bind(this)); } // 激活神器(圣器) 判断红点 if (!this.update_drama_hallows_event) { var HallowsEvent = require("hallows_event"); this.update_drama_hallows_event = gcore.GlobalEvent.bind(HallowsEvent.HallowsActivityEvent, function () { this.model.checkUnlockHallowsRedPoint(); }.bind(this)); } }, // 注册协议接受事件 registerProtocals: function registerProtocals() { var self = this; // this.RegisterProtocal(1110, this.on1110); this.RegisterProtocal(11000, this.handle11000.bind(this)); //请求所有伙伴 this.RegisterProtocal(11001, this.handle11001.bind(this)); //伙伴增加 this.RegisterProtocal(11002, this.handle11002.bind(this)); //伙伴属性变更通知(单个伙伴属性) this.RegisterProtocal(11007, this.handle11007.bind(this)); //伙伴属性变更通知(list列表伙伴属性) //升级 this.RegisterProtocal(11003, this.handle11003.bind(this)); //伙伴升级 this.RegisterProtocal(11004, this.handle11004.bind(this)); //伙伴进阶 this.RegisterProtocal(11005, this.handle11005.bind(this)); //伙伴升星 this.RegisterProtocal(11006, this.handle11006.bind(this)); //删除伙伴推送 this.RegisterProtocal(11009, this.handle11009.bind(this)); //购买英雄数量上限 this.RegisterProtocal(11016, this.handle11016.bind(this)); //伙伴下一阶属性 this.RegisterProtocal(11017, this.handle11017.bind(this)); //推送伙伴最新数量 //装备相关 this.RegisterProtocal(11010, this.handle11010.bind(this)); //穿戴装备 this.RegisterProtocal(11011, this.handle11011.bind(this)); //卸下装备 this.RegisterProtocal(11012, this.handle11012.bind(this)); //推送装备改变 this.RegisterProtocal(11013, this.handle11013.bind(this)); //升级 至100 // this.RegisterProtocal(11014, this.handle11014.bind(this)); //一键精炼 this.RegisterProtocal(11015, this.handle11015.bind(this)); //英雄锁定 //请求阵法 // this.RegisterProtocal(11200, this.handle11200.bind(this)); //请求自身阵法 // this.RegisterProtocal(11201, this.handle11201.bind(this)); //更换自身阵法 // this.RegisterProtocal(11202, this.handle11202.bind(this)); //伙伴上阵/下阵/交换 // this.RegisterProtocal(11203, this.handle11203.bind(this)); //阵法数据改变推送 // this.RegisterProtocal(11204, this.handle11204.bind(this)); //阵法升级/激活 this.RegisterProtocal(11211, this.handle11211.bind(this)); //请求队伍 this.RegisterProtocal(11212, this.handle11212.bind(this)); //请求保存队伍协议 this.RegisterProtocal(11213, this.handle11213.bind(this)); //请求多个队伍 // //符文相关 this.RegisterProtocal(11030, this.handle11030.bind(this)); //符文穿戴 this.RegisterProtocal(11031, this.handle11031.bind(this)); //推送符文改变 this.RegisterProtocal(11032, this.handle11032.bind(this)); //符文升星 this.RegisterProtocal(11033, this.handle11033.bind(this)); //符文重置 this.RegisterProtocal(11034, this.handle11034.bind(this)); //符文重铸保存 this.RegisterProtocal(11035, this.handle11035.bind(this)); //符文碎片合成 this.RegisterProtocal(11036, this.handle11036.bind(this)); //符文合成 this.RegisterProtocal(11037, this.handle11037.bind(this)); //符文祝福值 this.RegisterProtocal(11038, this.handle11038.bind(this)); //领取符文祝福值 this.RegisterProtocal(11040, this.handle11040.bind(this)); //英雄图鉴信息 this.RegisterProtocal(11060, this.handle11060.bind(this)); //英雄图鉴信息 this.RegisterProtocal(27605, this.handle27605.bind(this)); //英雄阵容推荐信息 this.RegisterProtocal(27606, this.handle27606.bind(this)); //领取英雄阵容推荐奖励信息 this.RegisterProtocal(11075, this.handle11075.bind(this)); //请求英雄遣散 分解材料 this.RegisterProtocal(11076, this.handle11076.bind(this)); //英雄遣散 分解 //重生(針對高星的) this.RegisterProtocal(11065, this.handle11065.bind(this)); //夥伴回退" this.RegisterProtocal(11066, this.handle11066.bind(this)); //英雄回退返回材料" //重生(針對 100級一下的英雄) this.RegisterProtocal(11067, this.handle11067.bind(this)); //英雄重生信息 this.RegisterProtocal(11068, this.handle11068.bind(this)); //英雄重生 // --天赋相关 this.RegisterProtocal(11096, this.handle11096.bind(this)); //学习天赋技能 this.RegisterProtocal(11097, this.handle11097.bind(this)); //天赋技能升级 this.RegisterProtocal(11098, this.handle11098.bind(this)); //天赋遗忘 this.RegisterProtocal(11099, this.handle11099.bind(this)); //获取英雄天赋信息 this.RegisterProtocal(11063, this.handle11063.bind(this)); //--英雄详细信息 this.RegisterProtocal(11019, this.handle11019.bind(this)); //--皮肤 this.RegisterProtocal(11020, this.handle11020.bind(this)); //-- this.RegisterProtocal(16686, this.handle16686.bind(this)); //10置換協議 this.RegisterProtocal(26425, this.handle26425.bind(this)); // 水晶信息 this.RegisterProtocal(26426, this.handle26426.bind(this)); // 放入共鸣英雄 this.RegisterProtocal(26427, this.handle26427.bind(this)); // 卸下共鸣英雄 this.RegisterProtocal(26428, this.handle26428.bind(this)); // 刷新槽位冷却时间 this.RegisterProtocal(26429, this.handle26429.bind(this)); // 解锁共鸣槽位 this.RegisterProtocal(11025, this.handle11025.bind(this)); // 解锁共鸣槽位 //神裝相關 self.RegisterProtocal(11090, this.handle11090.bind(this)); //神裝保存重置技能" self.RegisterProtocal(11091, this.handle11091.bind(this)); //推送神裝改變" self.RegisterProtocal(11092, this.handle11092.bind(this)); //請求神裝穿戴信息"" self.RegisterProtocal(11093, this.handle11093.bind(this)); //神裝穿戴/卸下" self.RegisterProtocal(11094, this.handle11094.bind(this)); //神裝重置" self.RegisterProtocal(11087, this.handle11087.bind(this)); //請求英雄升星的材料 self.RegisterProtocal(11088, this.handle11088.bind(this)); //神裝獲取出售材料 self.RegisterProtocal(11089, this.handle11089.bind(this)); //神裝出售 self.RegisterProtocal(11086, this.handle11086.bind(this)); //神裝預覽屬性返回 self.RegisterProtocal(25220, this.handle25220.bind(this)); //當前神裝套裝狀態 self.RegisterProtocal(25221, this.handle25221.bind(this)); //新增神裝套裝 self.RegisterProtocal(25223, this.handle25223.bind(this)); //購買新的格子 self.RegisterProtocal(25224, this.handle25224.bind(this)); //應用方案到英雄 }, // 从服务器初始化数据 reqBaseFromServer: function reqBaseFromServer(_cb) { var _this = this; // 配置加载 var cfgs = ["partner_artifact_data", // 行星武器重铸、技能模组 "partner_data", // 英雄 "partner_eqm_data", // 义肢、合成、评分 "partner_skill_data", // 技能模组 "partner_skin_data", // 皮肤 "partner_holy_eqm_data", // 神装(战斗义肢)数据 "role_data", // 英雄等级经验、功能开启等级提示 "skill_data", // 技能 "skill_data1", //技能 "skill_data2", //技能 "skill_data3", //技能 "skill_data4", //技能 "skill_data5", //技能 "skill_data6", //技能 "holiday_convert_data", // 置换 "halidom_data", // 阵营核心 "resonate_data", // 等级同步 "avatar_data", // 头像框 "recommend_data", // 推荐阵容 "weapon_data" // 專屬武器 ]; this.loadConfigs(cfgs, function (_ret, _data) { _this.sender11025(); _this.sender11000(); _this.sender11040(); _this.sender11037(_cb); _this.SendProtocal(11213, { type_list: [{ type: PartnerConst.Fun_Form.Drama }, { type: PartnerConst.Fun_Form.Arena }] }); _this.sender27605(); }); }, sender11063: function sender11063(partner_id, _cb) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11063, protocal, _cb); }, handle11063: function handle11063(data) { this.model.updateHeroVoDetailedInfo(data); }, sender11000: function sender11000() { var protocal = {}; this.SendProtocal(11000, protocal); }, handle11000: function handle11000(data) { //请求所有伙伴 this.model.setHeroMaxCount(data.num); this.model.setHeroBuyNum(data.buy_num); this.model.updateHeroList(data.partners); // var calculate = HeroCalculate.getInstance(); // RedMgr.getInstance().addCalHandler( calculate.checkAllStarFuseRedpoint.bind( calculate ), RedIds.RefuseHero ); this.sender11020(); }, handle11001: function handle11001(data) { //伙伴增加 this.model.updateHeroList(data.partners, true); //消除熔炼祭坛的红点 里面会重新计算红点 HeroCalculate.getInstance().clearAllStarFuseRedpointRecord(); this.model.is_upgradestar_redpoint_bag_update = true; this.model.checkUpgradeStarRedPointUpdate(); }, handle11002: function handle11002(data) { //单个伙伴属性变更通知 this.model.updateSingle(data); }, handle11007: function handle11007(data) { //list伙伴属性变更通知( this.model.updateHeroList(data.ref_partners, null, true); }, sender11003: function sender11003(partner_id, _cb) { // 伙伴升级 var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11003, protocal, _cb); }, handle11003: function handle11003(data) { //伙伴升级 if (nx.dt.strNEmpty(data.msg)) { nx.tbox(data.msg); } if (data && data.result === 1) { gcore.GlobalEvent.fire(HeroEvent.Hero_Level_Up_Success_Event, data); } }, sender11013: function sender11013(partner_id, _cb) { // 伙伴升级特殊 var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11013, protocal, _cb); }, handle11013: function handle11013(data) {}, sender11004: function sender11004(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11004, protocal); }, handle11004: function handle11004(data) { //伙伴进阶结果 if (data && data.result == 1) { // 显示进阶窗口 } }, sender11005: function sender11005(partner_id, hero_list, random_list, item_expend) { var protocal = {}; protocal.partner_id = partner_id; protocal.expend1 = hero_list; protocal.expend2 = random_list; protocal.item_expend = item_expend; this.SendProtocal(11005, protocal); }, handle11005: function handle11005(data) { //伙伴升星 if (nx.dt.strNEmpty(data.msg)) { nx.tbox(data.msg); } if (data && data.result === 1) { gcore.GlobalEvent.fire(HeroEvent.Upgrade_Star_Success_Event); } else { this.model.setUpgradeStarUpdateRecord(true); } }, handle11006: function handle11006(data) { //删除伙伴推送 this.model.delHeroDataList(data.expend2); }, sender11009: function sender11009() { this.SendProtocal(11009, {}); }, handle11009: function handle11009(data) { //购买英雄数量上限 if (nx.dt.strNEmpty(data.msg)) { nx.tbox(data.msg); } if (data.result) { this.model.setHeroMaxCount(data.num); this.model.setHeroBuyNum(data.buy_num); gcore.GlobalEvent.fire(HeroEvent.Buy_Hero_Max_Count_Event); } }, sender11016: function sender11016(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11016, protocal); }, handle11016: function handle11016(data) { //伙伴下一阶属性 gcore.GlobalEvent.fire(HeroEvent.Next_Break_Info_Event, data); }, handle11017: function handle11017(data) {//推送伙伴最新数量 }, // 0 表示一键穿戴 sender11010: function sender11010(partner_id, item_id) { //穿戴装备 this.model.setEquipUpdateRecord(false); var protocal = {}; protocal.partner_id = partner_id; protocal.item_id = item_id; this.SendProtocal(11010, protocal); }, handle11010: function handle11010(data) { // nx.tbox( data.msg ); if (!data.result) this.model.setEquipUpdateRecord(true); }, sender11011: function sender11011(partner_id, pos_id) { this.model.setEquipUpdateRecord(false); var protocal = {}; protocal.partner_id = partner_id; //此值改成装备唯一id protocal.pos_id = pos_id; this.SendProtocal(11011, protocal); }, handle11011: function handle11011(data) { //卸下装备 nx.tbox(data.msg); if (!data.result) this.model.setEquipUpdateRecord(true); }, handle11012: function handle11012(data) { //推送装备改变 if (!nx.dt.strEmpty(data.msg)) { nx.tbox(data.msg); } if (data) { this.model.updateHeroEquipList(data); data = this.model.getHeroById(data.partner_id); gcore.GlobalEvent.fire(HeroEvent.Equip_Update_Event, data); this.model.is_equip_redpoint_hero_update = true; this.model.checkEquipRedPointUpdate(); } }, sender11015: function sender11015(partner_id, is_lock) { var protocal = {}; protocal.partner_id = partner_id; protocal.type = is_lock; this.SendProtocal(11015, protocal); }, handle11015: function handle11015(data) { //英雄锁定 if (!nx.dt.strEmpty(data.msg)) { nx.tbox(data.msg); } if (data.result == 1) { this.model.setLockByPartnerid(data.partner_id, data.type); gcore.GlobalEvent.fire(HeroEvent.Hero_Lock_Event); } }, // 请求伙伴所有基本数据 在 function SysController:requestLoginProtocals( ) 统一请求 sender11025: function sender11025(_cb) { this.SendProtocal(11025, {}, _cb); }, handle11025: function handle11025(data) { // -- dump(data, "handle11025 协议===================>") this.model.setHeroMaxCount(data.num); this.model.setHeroBuyNum(data.buy_num); this.model.updateHeroList(data.partners); // -- 计算一下圣物红点 // -- HalidomController:getInstance():getModel():calculateHalidomRedStatus() // --英雄信息有了 可以初始化精英赛布阵信息了 // ElitematchController:getInstance():loginSendProtoInfo() // --申请11026协议去 // this.model.batchSendHeroInfo() // --拉取神装套装信息 this.sender25220(); // --申请所拥有的皮肤信息 this.sender11020(); // --共鸣信息 this.sender26400(); // this.sender26410() // --原力水晶 this.sender26425(); // // --申请所有英雄的神装信息 this.model.sendAllHeroHolyEquipInfo(); gcore.GlobalEvent.fire(HeroEvent.All_Hero_Base_Info_Event); }, //-- 請求英雄分解材料 sender11087: function sender11087(partner_list) { var protocal = {}; protocal.list = partner_list; this.SendProtocal(11087, protocal); }, handle11087: function handle11087(data) { if (data.code == 1) { gcore.GlobalEvent.fire(HeroEvent.Hero_Reset_Star_Event, data); } }, sender11211: function sender11211(type) { // 请求单个布阵信息 var protocal = {}; protocal.type = type; this.SendProtocal(11211, protocal); }, handle11211: function handle11211(data) { // 请求单个布阵信息结果 if (!data || typeof data.type != "number") return; if (data && (data.type === PartnerConst.Fun_Form.Drama || data.type === PartnerConst.Fun_Form.Arena)) this.model.setFormList(data); gcore.GlobalEvent.fire(HeroEvent.Update_Fun_Form, data); }, sender11212: function sender11212(type, formation_type, pos_info, hallows_id) { var protocal = {}; protocal.type = type; protocal.formation_type = formation_type; protocal.pos_info = pos_info; protocal.hallows_id = hallows_id; this.SendProtocal(11212, protocal); }, handle11212: function handle11212(data) { //请求保存队伍协议 if (data.code) { if (data.type === PartnerConst.Fun_Form.Drama) { var type_list = []; var drma_info = {}; drma_info["type"] = PartnerConst.Fun_Form.Drama; type_list.push(drma_info); var arena_info = {}; arena_info["type"] = PartnerConst.Fun_Form.Arena; type_list.push(arena_info); this.sender11213(type_list); } else if (data.type === PartnerConst.Fun_Form.Arena) { this.sender11211(data.type); } else if (data.type === PartnerConst.Fun_Form.LimitExercise) { var LimitExerciseController = require("limitexercise_controller"); LimitExerciseController.getInstance().checkJoinFight(); } gcore.GlobalEvent.fire(HeroEvent.Update_Save_Form, data); } else { nx.tbox(data.msg); } }, sender11213: function sender11213(type_list) { // 请求多个布阵 var protocal = {}; protocal.type_list = type_list; this.SendProtocal(11213, protocal); }, handle11213: function handle11213(data) { //请求多个布阵结果 if (!data || !data.info) return; for (var form_i in data.info) { var form_data = data.info[form_i]; if (form_data && (form_data.type === PartnerConst.Fun_Form.Drama || form_data.type === PartnerConst.Fun_Form.Arena)) this.model.setFormList(form_data); } }, //符文----------------- //符文穿戴/卸下 sender11030: function sender11030(partner_id, pos_id, artifact_id, type) { this.model.setEquipUpdateRecord(false); var protocal = {}; protocal.partner_id = partner_id; protocal.pos_id = pos_id; protocal.artifact_id = artifact_id; protocal.type = type; this.SendProtocal(11030, protocal); }, handle11030: function handle11030(data) { //符文穿戴 nx.tbox(data.msg); if (data.result == 0) { this.model.setEquipUpdateRecord(true); } }, //推送符文改变 handle11031: function handle11031(data) { nx.tbox(data.msg || ""); this.model.updatePartnerArtifactList(data); }, //符文升星 sender11032: function sender11032(partner_id, artifact_id, expends) { var protocal = {}; protocal.partner_id = partner_id; protocal.artifact_id = artifact_id; protocal.expends = expends; this.SendProtocal(11032, protocal); }, handle11032: function handle11032(data) { //符文升星 nx.tbox(data.msg); if (data.result == 1) { gcore.GlobalEvent.fire(HeroEvent.Artifact_UpStar_Event, data); } }, //符文重置 sender11033: function sender11033(partner_id, artifact_id, skills, luck_item) { var protocal = {}; protocal.partner_id = partner_id; protocal.artifact_id = artifact_id; protocal.skills = skills; protocal.luck_item = luck_item; this.SendProtocal(11033, protocal); }, handle11033: function handle11033(data) { //符文重置 nx.tbox(data.msg); if (data.result == 1) { gcore.GlobalEvent.fire(HeroEvent.Artifact_Recast_Event); } }, //符文重铸保存 sender11034: function sender11034(partner_id, artifact_id, type) { var protocal = {}; protocal.partner_id = partner_id; protocal.artifact_id = artifact_id; protocal.type = type; this.SendProtocal(11034, protocal); }, handle11034: function handle11034(data) { //符文重铸保存 nx.tbox(data.msg); if (data.result == 1) { gcore.GlobalEvent.fire(HeroEvent.Artifact_Save_Event); } }, //符文分解 sender11035: function sender11035(artifact_id) { var protocal = {}; protocal.artifact_id = artifact_id; this.SendProtocal(11035, protocal); }, handle11035: function handle11035(data) { //符文碎片合成 nx.tbox(data.msg); }, //符文合成 sender11036: function sender11036(item_id, expend) { var protocal = {}; protocal.item_id = item_id; protocal.expends = expend; this.SendProtocal(11036, protocal); }, handle11036: function handle11036(data) { //符文合成 nx.tbox(data.msg); if (data.result == 1) { gcore.GlobalEvent.fire(HeroEvent.Artifact_Compound_Event, data.flag); } }, //符文祝福值 sender11037: function sender11037(_cb) { this.SendProtocal(11037, {}, _cb); }, handle11037: function handle11037(data) { //符文祝福值 if (data && data.lucky != null) { this.model.setArtifactLucky(data.lucky); gcore.GlobalEvent.fire(HeroEvent.Artifact_Lucky_Event); } }, //领取符文祝福值 sender11038: function sender11038() { this.SendProtocal(11038, {}); }, handle11038: function handle11038(data) { //领取符文祝福值 nx.tbox(data.msg); }, // -- 請求符文重鑄次數相關數據 sender11048: function sender11048() { this.SendProtocal(11048, {}); }, handle11048: function handle11048(data) { if (data && data.artifact_ref_count) { this.model.updateArtifactRecastCount(data.artifact_ref_count); // gcore.GlobalEvent.fire(HeroEvent.Artifact_Recast_Count_Event) } }, sender11040: function sender11040() { var protocal = {}; this.SendProtocal(11040, protocal); }, handle11040: function handle11040(data) { //英雄图鉴信息 this.model.setHadHeroInfo(data.partners); }, sender11060: function sender11060(channel, partner_id) { var protocal = {}; protocal.channel = channel; protocal.partner_id = partner_id; this.SendProtocal(11060, protocal); }, handle11060: function handle11060(data) { //英雄图鉴信息 nx.tbox(data.msg); }, sender11075: function sender11075(hero_list) { //请求英雄分解材料 var protocal = {}; protocal.list = hero_list; this.SendProtocal(11075, protocal); }, handle11075: function handle11075(data) { if (data.code == 1) { gcore.GlobalEvent.fire(HeroEvent.Hero_Reset_Look_Event, data.list); } }, sender11076: function sender11076(partner_list) { var protocal = {}; protocal.list = partner_list; this.SendProtocal(11076, protocal); }, handle11076: function handle11076(data) { //英雄遣散 nx.tbox(data.msg); if (data.code) { this.model.delHeroDataList(data.list); } }, //-天赋相关开始 sender11096: function sender11096(partner_id, pos, skill_id) { var protocal = {}; protocal.partner_id = partner_id; protocal.pos = pos; protocal.skill_id = skill_id; this.SendProtocal(11096, protocal); }, //-- 10置換活動協議 sender16686: function sender16686(partner_id, partner_bid, expend) { var protocal = {}; protocal.partner_id = partner_id; protocal.partner_bid = partner_bid; protocal.expend = expend; this.SendProtocal(16686, protocal); }, handle16686: function handle16686(data) { if (data.msg) { nx.tbox(data.msg); } else { nx.tbox(nx.text.getKey("btn_guild_action_item_btn_type")); } }, handle11096: function handle11096(data) { if (data.result == true) { this.model.updateHeroVoTalent([data], true); data = this.model.getHeroById(data.partner_id); gcore.GlobalEvent.fire(HeroEvent.Hero_Learn_Talent_Event, data); HeroCalculate.getInstance().clearAllHeroRecordByRedPointType(HeroConst.RedPointType.eRPTalent); } else { nx.tbox(data.msg); } }, //-- 10置換活動協議 sender27605: function sender27605(_cb) { this.SendProtocal(27605, {}, _cb); }, //-- 10置換活動協議 sender27606: function sender27606(_id) { this.SendProtocal(27606, { id: _id }); }, handle27605: function handle27605(_data) { nx.bridge.vset("FormCollectReward", _data.ids); var cfg = game.configs.recommend_data.data_recommond; this.have = false; var have = []; for (var r in cfg) { var recommend = cfg[r]; var camp = recommend.camp; var count = 0; for (var c = 0; c < camp.length; c++) { var partner = camp[c]; if (this.model.getHadHeroStarBybid(partner)) { count++; } } if (count >= 5) { have.push(count); } } this.have = have.length != 0 && have.length != _data.ids.length; nx.mTip.openTip("form.recommend", have.length != 0 && have.length != _data.ids.length); }, handle27606: function handle27606(_data) {}, // 英雄(伙伴)背包界面 // @ hero_vo 英雄对应数据对象 openHeroBagWindow: function openHeroBagWindow(status, _fromOther) { if (!status) { nx.bridge.closePanel("WndPartnerBag"); } else { nx.bridge.createPanel("WndPartnerBag", { fromOther: _fromOther }); } }, // 英雄(伙伴)改造界面 openHeroReformWindow: function openHeroReformWindow(status, _params) { if (!status) { nx.bridge.closePanel("WndPartnerReform"); } else { nx.bridge.createPanel("WndPartnerReform", _params); } }, // 英雄(伙伴)置换预览界面 openHeroConvertPreview: function openHeroConvertPreview(status, _items, _cb) { if (!status) { nx.bridge.closePanel("WndPartnerReformConverPreview"); } else { nx.bridge.createPanel("WndPartnerReformConverPreview", { items: _items, cb: _cb }); } }, //打开英雄图书馆信息 openHeroLibraryMainWindow: function openHeroLibraryMainWindow(status, bid) { var _this2 = this; if (status == false) { if (this.hero_library_mainWindow != null) { this.hero_library_mainWindow.close(); this.hero_library_mainWindow = null; } } else { if (this.hero_library_mainWindow == null) { var HeroLibraryMainWindow = require("hero_library_main_window"); this.hero_library_mainWindow = new HeroLibraryMainWindow(); } if (!bid) { var lib_pics = nx.selectresbyname("library_module", "lib"); if (lib_pics) { this.hero_library_mainWindow.open(bid); } else { nx.loadbox("library_module", true, function () { _this2.hero_library_mainWindow.open(bid); }, null, false, null, true); } } else { this.hero_library_mainWindow.open(bid); } } }, //打开英雄图书馆信息 openHeroLibraryInfoWindow: function openHeroLibraryInfoWindow(status, bid) { if (status == false) { if (this.hero_library_info != null) { this.hero_library_info.close(); this.hero_library_info = null; } } else { if (this.hero_library_info == null) { var HeroLibraryInfoWindow = require("hero_library_info_window"); this.hero_library_info = new HeroLibraryInfoWindow(); } this.hero_library_info.open(bid); } }, //打开英雄图书馆传记信息 openHeroLibraryStoryPanel: function openHeroLibraryStoryPanel(status, partnerOrBid) { nx.error("使用showTextPanel替代!"); }, // -- 英雄(伙伴)主信息 界面 // --@ hero_vo 英雄对应数据对象 // --@ hero_list 英雄对象列表 // --@ setting 结构 // --setting.showType 显示英雄新的页签类型 // --setting.show_model_type 显示模式 1:英雄模式 2:图鉴模式 定义参考 HeroConst.BagTab.eBagHero openHeroMainInfoWindow: function openHeroMainInfoWindow(status, hero_vo, hero_list, setting) { if (status) { nx.bridge.createPanel("WndPartnerInfo", { hero_vo: hero_vo, hero_list: hero_list, setting: setting }); } else { nx.bridge.closePanel("WndPartnerInfo"); } }, // 打开立绘界面 openHeroLookDrawWindow: function openHeroLookDrawWindow(status, draw_res_id, name, bid, share_type) { if (status) { if (!this.hero_look_draw_window) { this.hero_look_draw_window = Utils.createClass("hero_look_draw_window"); } var data = { draw_res_id: draw_res_id, name: name, bid: bid, share_type: share_type }; this.hero_look_draw_window.open(data); } else { if (this.hero_look_draw_window) { this.hero_look_draw_window.close(); this.hero_look_draw_window = null; } } }, // 打开立绘界面 openHeroLookDrawWindowTest: function openHeroLookDrawWindowTest(status, data) { if (status) { nx.bridge.createPanel("WndPartnerDrawPopup", data); } else { nx.bridge.closePanel("WndPartnerDrawPopup"); } }, // --打开进阶界面 openHeroBreakPanel: function openHeroBreakPanel(status, hero_vo) { if (status) { nx.bridge.createPanel("WndPartnerUpgrade", hero_vo); } else { nx.bridge.closePanel("WndPartnerUpgrade"); } }, // 打开进阶成功界面 old_vo new_vo 都是heroVo对象 openBreakExhibitionWindow: function openBreakExhibitionWindow(status, old_vo, new_vo) { if (status) { nx.bridge.createPanel("WndPartnerUpgradePopup", { old_vo: old_vo, new_vo: new_vo }); } else { nx.bridge.closePanel("WndPartnerUpgradePopup"); if (old_vo && typeof old_vo == "number") { var skill_bid = old_vo; this.openSkillUnlockWindow(true, skill_bid); } } }, // 打开升星成功界面 old_vo new_vo 都是heroVo对象 openHeroUpgradeStarExhibitionPanel: function openHeroUpgradeStarExhibitionPanel(status, old_vo, new_vo) { if (status) { nx.bridge.createPanel("WndPartnerUpstarPopup", { old_vo: old_vo, new_vo: new_vo }); } else if (this.upgrade_star_exhibition_window) { nx.bridge.closePanel("WndPartnerUpstarPopup"); } }, // --打开天赋技能学习面板 // openSkillUnlockWindow(status, skill_bid) // if status == true then // if not this.unlock_window then // this.unlock_window = SkillUnlockWindow.New(skill_bid) // end // if this.unlock_window and this.unlock_window:isOpen() == false then // this.unlock_window:open() // end // else // if this.unlock_window then // this.unlock_window:close() // this.unlock_window = null // end // end // end // --打开英雄过滤 // openFormFilterHeroPanel(status, dic_filter_camp_type, dic_filter_career_type) // if status == true then // if not this.form_filter_hero_panel then // this.form_filter_hero_panel = FormFilterHeroPanel.New() // end // if this.form_filter_hero_panel and this.form_filter_hero_panel:isOpen() == false then // this.form_filter_hero_panel:open(dic_filter_camp_type, dic_filter_career_type) // end // else // if this.form_filter_hero_panel then // this.form_filter_hero_panel:close() // this.form_filter_hero_panel = null // end // end // end getFormFightView: function getFormFightView() { if (this.form_go_fight_panel) { return true; } return false; }, // --打开布阵出战界面 // --@fun_form_type 布阵队伍类型 // --@show_type 出战界面显示类型 1 出战 2 保存布阵 3 頁簽佈陣 4 指定佈陣 openFormGoFightPanel: function openFormGoFightPanel(status, fun_form_type, setting, show_type, from_dramahook, cbClose) { if (from_dramahook === void 0) { from_dramahook = false; } if (!status) { nx.bridge.closePanel("WndFromView"); } else { var open_pragma = {}; open_pragma.fun_form_type = fun_form_type; open_pragma.setting = setting; open_pragma.show_type = show_type; open_pragma.fromDramaHook = from_dramahook; open_pragma.cbClose = cbClose; nx.bridge.createPanel("WndFromView", open_pragma); } }, // 打开布阵 改成和 布阵出战界面 合二为一 openFormMainWindow: function openFormMainWindow(status, fun_form_type, params) { if (params) { this.openFormGoFightPanel(status, fun_form_type, params, HeroConst.FormShowType.eFormSave); } else { this.openFormGoFightPanel(status, fun_form_type, {}, HeroConst.FormShowType.eFormSave); } }, // 打开选择阵法界面 // @formation_type 阵法类型 也是配置表的id openFormationSelectPanel: function openFormationSelectPanel(status, formation_type, callback) { if (status) { var open_pragma = {}; open_pragma.formation_type = formation_type; open_pragma.callback = callback; nx.bridge.createPanel("WndFromSelect", open_pragma); } else { nx.bridge.closePanel("WndFromSelect"); } }, // 打开选择神器界面 // @hallows_id 神器id openFormHallowsSelectPanel: function openFormHallowsSelectPanel(status, hallows_id, callback) { if (status) { nx.bridge.createPanel("WndHallowSelect", { hallows_id: hallows_id, callback: callback }); } else { nx.bridge.closePanel("WndHallowSelect"); } }, // 打开英雄升星界面 4升5 5升6 融合祭坛 openHeroUpgradeStarFuseWindow: function openHeroUpgradeStarFuseWindow(status, hero_vo) { if (status) { if (!this.upgrade_star_fuse_window || !this.upgrade_star_fuse_window.root_wnd) { var HeroUpgradeStarFuseWindow = require("hero_upgrade_star_fuse_window"); this.upgrade_star_fuse_window = new HeroUpgradeStarFuseWindow(this); } this.upgrade_star_fuse_window.open(hero_vo); } else { if (this.upgrade_star_fuse_window) { this.upgrade_star_fuse_window.close(); this.upgrade_star_fuse_window = null; } } }, /** * 选伙伴 * @param {*} _open * @param {*} _args : { * partners: 列表, * count: 选择上限, * selects: 已选择, * fixed: 是否固定选择上限数(默认false) * flag: 特殊标记 } * @param {*} _cb : 返回 */ openPartnerSelector: function openPartnerSelector(_open, _args, _cb) { if (_open) { nx.bridge.createPanel("WndPartnerSelectPanel", { params: _args, cb: _cb }); } else { nx.bridge.closePanel("WndPartnerSelectPanel"); } }, // @select_data 是模拟hero_vo的数据 // @dic_other_selected 已经其他被选择的数据 [id] = hero_vo模式 // @ form_type --来源位置 1: 表示融合祭坛 2: 表示升星界面的 // @ is_master 是否是主卡(融合祭坛专用) openHeroUpgradeStarSelectPanel: function openHeroUpgradeStarSelectPanel(status, select_data, dic_other_selected, form_type, is_master, select_cb, cur_hero_vo) { if (status) { if (!this.upgrade_star_select_panel) { var HeroUpgradeStarSelectPanel = require("hero_upgrade_star_select_window"); this.upgrade_star_select_panel = new HeroUpgradeStarSelectPanel(this); } var open_pragma = {}; open_pragma.select_data = select_data; open_pragma.dic_other_selected = dic_other_selected; open_pragma.form_type = form_type; open_pragma.select_cb = select_cb; open_pragma.cur_hero_vo = cur_hero_vo; open_pragma.is_master = is_master; this.upgrade_star_select_panel.open(open_pragma); // if this.upgrade_star_select_panel and this.upgrade_star_select_panel:isOpen() == false then } else { if (this.upgrade_star_select_panel) { this.upgrade_star_select_panel.close(); this.upgrade_star_select_panel = null; } } }, // --@select_data 是模擬hero_vo的數據 // --@dic_other_selected 已經其他被選擇的數據 [id] = hero_vo模式 // --@ form_type --來源位置 1: 表示融合祭壇 2: 表示升星界面的 3:聖物 // --@ setting.is_master 是否是主卡(融合祭壇專用) openHeroUpgradeStarSelectPanel2: function openHeroUpgradeStarSelectPanel2(status, select_data, dic_other_selected, form_type, setting, select_cb) { var self = this; if (status) { if (!self.upgrade_star_select_panel2) { var HeroUpgradeStarSelectPanel = require("hero_upgrade_star_select_panel"); self.upgrade_star_select_panel2 = new HeroUpgradeStarSelectPanel(); } var open_pragma = {}; open_pragma.select_data = select_data; open_pragma.dic_other_selected = dic_other_selected; open_pragma.form_type = form_type; open_pragma.setting = setting; open_pragma.select_cb = select_cb; self.upgrade_star_select_panel2.open(open_pragma); } else { if (self.upgrade_star_select_panel2) { self.upgrade_star_select_panel2.close(); self.upgrade_star_select_panel2 = null; } } }, // 打开英雄祭坛界面 openHeroResetWindow: function openHeroResetWindow(status, data) { if (status) { if (!this.hero_reset_window) { var HeroResetWindow = require("hero_reset_window"); this.hero_reset_window = new HeroResetWindow(this); } if (this.hero_reset_window) this.hero_reset_window.open(data); } else { if (this.hero_reset_window) { this.hero_reset_window.close(); this.hero_reset_window = null; } } }, openHeroSacrificePanel: function openHeroSacrificePanel(status, data) { if (status) { if (!this.hero_sacrifice_panel) { var HeroSacrificePanel = require("hero_sacrifice_panel"); this.hero_sacrifice_panel = new HeroSacrificePanel(this); } if (this.hero_sacrifice_panel) this.hero_sacrifice_panel.open(data); } else { if (this.hero_sacrifice_panel) { this.hero_sacrifice_panel.close(); this.hero_sacrifice_panel = null; } } }, openHeroResetReturnPanel: function openHeroResetReturnPanel(bool, item_list) { if (bool) { if (!this.hero_reset_return_panel) { var HeroResetReturnPanel = require("hero_rest_return_window"); this.hero_reset_return_panel = new HeroResetReturnPanel(this); } var open_pragma = {}; open_pragma.item_list = item_list; this.hero_reset_return_panel.open(open_pragma); } else { if (this.hero_reset_return_panel) { this.hero_reset_return_panel.close(); this.hero_reset_return_panel = null; } } }, openHeroResetOfferPanel: function openHeroResetOfferPanel(bool, item_list, is_show_tips, callback, reset_type, dec) { if (bool) { if (!this.hero_reset_offer_panel) { var HeroResetOfferPanel = require("hero_reset_offer_window"); this.hero_reset_offer_panel = new HeroResetOfferPanel(this); } var open_pragma = {}; open_pragma.item_list = item_list; open_pragma.callback = callback; open_pragma.is_show_tips = is_show_tips; open_pragma.reset_type = reset_type; open_pragma.dec = dec; this.hero_reset_offer_panel.open(open_pragma); } else { if (this.hero_reset_offer_panel) { this.hero_reset_offer_panel.close(); this.hero_reset_offer_panel = null; } } }, // 打开当前装备操作面板 openEquipChangePanel: function openEquipChangePanel(_status, _item, _cb) { if (_status) { nx.bridge.createPanel("WndPartnerEquipChangePanel", { data: _item, cb: _cb }); } else { nx.bridge.closePanel("WndPartnerEquipChangePanel"); } }, // --打开装备穿戴界面 openEquipPanel: function openEquipPanel(_status, _etype, _cb) { if (_status) { nx.bridge.createPanel("WndPartnerEquipSelectPanel", { etype: _etype, cb: _cb }); } else { nx.bridge.closePanel("WndPartnerEquipSelectPanel"); } }, // 打开当前战斗义肢操作面板 openHolyChangePanel: function openHolyChangePanel(_status, _etype, _partner, _holyLst, _cb, _cboff, _planid) { if (_status) { nx.bridge.createPanel("WndPartnerHolySelect", { etype: _etype, partner: _partner, holyLst: _holyLst, cb: _cb, cboff: _cboff, planid: _planid }); } else { nx.bridge.closePanel("WndPartnerHolySelect"); } }, // desc:打开装备tips // time:2018-05-24 05:50:42 // @bool:打开与关闭 // @data:装备数据 // @open_type:装备状态,0.其他状态,1: 背包中 3:伙伴身上 具体查看 PartnerConst.EqmTips // @partner_id:穿戴在伙伴身上就有伙伴id,其他可不填或填0 // @return openEquipTips: function openEquipTips(status, data, open_type, partner, holy_data) { // if (status) { // var TipsController = require("tips_controller"); // TipsController.getInstance().showEquipTips(data, open_type, partner); // } if (status) { open_type = open_type || PartnerConst.EqmTips.normal; var TipsController = require("tips_controller"); TipsController.getInstance().showEquipTips(data, open_type, partner, holy_data); } else { if (this.equip_tips) { this.equip_tips.close(); this.equip_tips = null; } } }, // ----------------------------------------神器相关------------------------------ // 打开符文重铸界面 openArtifactRecastWindow: function openArtifactRecastWindow(status, data, partner_id) { if (status == true) { if (!this.artifact_recast_win) { this.artifact_recast_win = Utils.createClass("artifact_recast_window"); } this.artifact_recast_win.open({ data: data, partner_id: partner_id }); } else { if (this.artifact_recast_win) { this.artifact_recast_win.close(); this.artifact_recast_win = null; } } }, //打开神器列表选择界面 // openArtifactListWindow(bool,artifact_type,partner_id,select_vo) // if bool == true then // if not this.artifact_list_panel then // this.artifact_list_panel = ArtifactListWindow.New() // end // artifact_type = artifact_type or 0 // partner_id = partner_id or 0 // if this.artifact_list_panel and this.artifact_list_panel:isOpen() == false then // this.artifact_list_panel:open(artifact_type,partner_id,select_vo) // end // else // if this.artifact_list_panel then // this.artifact_list_panel:close() // this.artifact_list_panel = null // end // end // end openArtifactListWindow: function openArtifactListWindow(bool, artifact_type, partner_id, select_vo) { if (bool == true) { if (!this.artifact_list_window) { this.artifact_list_window = Utils.createClass("artifact_list_window"); } artifact_type = artifact_type || 0; partner_id = partner_id || 0; var data = {}; data.artifact_type = artifact_type; data.partner_id = partner_id; data.select_vo = select_vo; this.artifact_list_window.open(data); } else { if (this.artifact_list_window) { this.artifact_list_window.close(); this.artifact_list_window = null; } } }, // 符文选择界面 openArtifactChoseWindow: function openArtifactChoseWindow(bool, data) { if (bool == true) { if (!this.artifact_chose_window) { this.artifact_chose_window = Utils.createClass("artifact_chose_window"); } this.artifact_chose_window.open(data); } else { if (this.artifact_chose_window) { this.artifact_chose_window.close(); this.artifact_chose_window = null; } } }, // --==============================-- // --desc:打开符文操作界面 // --time:2018-05-17 05:34:13 // --@bool: // --@data:符文数据,为goods_vo数据 // --@open_type:打开类型,分为 // --@return // --==============================-- openArtifactTipsWindow: function openArtifactTipsWindow(bool, data, open_type, partner_id, pos) { if (bool == true) { if (data == null || data.config == null) { nx.tbox(nx.text.getKey("lab_hero_controller_tip1")); return; } if (!this.artifact_tips_window) { this.artifact_tips_window = Utils.createClass("artifact_tips_window"); } if (open_type == null) { open_type = PartnerConst.ArtifactTips.backpack; } var param = { data: data, open_type: open_type, partner_id: partner_id, pos: pos }; this.artifact_tips_window.open(param); } else { if (this.artifact_tips_window) { this.artifact_tips_window.close(); this.artifact_tips_window = null; } } }, // 打开符文合成tips界面 openArtifactComTipsWindow: function openArtifactComTipsWindow(status, bid) { if (status == true) { if (!this.artifact_com_win) { this.artifact_com_win = Utils.createClass("artifact_com_tips_window"); } this.artifact_com_win.open(bid); } else { if (this.artifact_com_win) { this.artifact_com_win.close(); this.artifact_com_win = null; } } }, // 打开符文祝福奖励领取界面 openArtifactAwardWindow: function openArtifactAwardWindow(status) { if (status == true) { if (!this.artifact_award_win) { this.artifact_award_win = Utils.createClass("artifact_award_window"); } this.artifact_award_win.open(); } else { if (this.artifact_award_win) { this.artifact_award_win.close(); this.artifact_award_win = null; } } }, // 打开符文技能预览界面 // -@show_type 显示类型 1 是符文技能预览 2 是英雄天赋技能 openArtifactSkillWindow: function openArtifactSkillWindow(status, show_type) { if (status == true) { nx.bridge.createPanel("WndPartnerSkillPreview", show_type); } else { nx.bridge.closePanel("WndPartnerSkillPreview"); } }, // ----------------------------------------神器相关结束------------------------------ // -- 打开英雄tips界面 // --is_hide_equip 是否隐藏装备 openHeroTipsPanel: function openHeroTipsPanel(bool, hero_vo, is_hide_equip, showbtn) { if (bool == true) { if (!this.hero_tips_window) { // let HeroTipsWindow = require("hero_tips_window") // this.hero_tips_window = new HeroTipsWindow() if (!this.hero_tips_window) { this.hero_tips_window = Utils.createClass("hero_tips_window", bool); } this.hero_tips_window.open({ hero_vo: hero_vo, is_hide_equip: is_hide_equip, showbtn: showbtn }); } } else { if (this.hero_tips_window) { this.hero_tips_window.close(); this.hero_tips_window = null; } } }, // -- 打开英雄属性tips界面 openHeroTipsAttrPanel: function openHeroTipsAttrPanel(bool, hero_vo, is_my) { if (bool == true) { nx.bridge.createPanel("WndPartnerPropDetailsPanel", { hero_vo: hero_vo, is_my: is_my }); } else { nx.bridge.closePanel("WndPartnerPropDetailsPanel"); } }, // -- 打开英雄tips界面根据bid openHeroTipsPanelByBid: function openHeroTipsPanelByBid(bid) { var hero_vo = this.model.getMockHeroVoByBid(bid); if (hero_vo) { this.showPartnerTips(hero_vo); // this.openHeroTipsPanel( true, hero_vo, true ) } }, // 打开英雄图书馆信息根据bid 和星级 openHeroInfoWindowByBidStar: function openHeroInfoWindowByBidStar(bid, star, callback) { if (bid == null || star == null) return; var key = Utils.getNorKey(bid, star); var hero_vo = this.model.getHeroPokedexByBid(key); if (hero_vo) { this.openHeroMainInfoWindow(true, hero_vo, [hero_vo], { show_model_type: HeroConst.BagTab.eBagPokedex, callback: callback }); } }, // 背包 伙伴碎片预览 openPartnerItem: function openPartnerItem(status, _bid, _star) { if (status == true) { nx.bridge.createPanel("WndItemPartnerDetail", { bid: _bid, star: _star }); } else { nx.bridge.closePanel("WndItemPartnerDetail"); } }, // --请求天赋技能信息 sender11099: function sender11099(list) { var protocal = {}; protocal.partner_ids = list; this.SendProtocal(11099, protocal); }, handle11099: function handle11099(data) { this.model.updateHeroVoTalent(data.partner_ids); gcore.GlobalEvent.fire(HeroEvent.Hero_Get_Talent_Event, data.partner_ids); }, // --天赋技能升级 sender11097: function sender11097(partner_id, pos) { var protocal = {}; protocal.partner_id = partner_id; protocal.pos = pos; this.SendProtocal(11097, protocal); }, handle11097: function handle11097(data) { if (data.result == true) { this.model.updateHeroVoTalent([data], true); data = this.model.getHeroById(data.partner_id); gcore.GlobalEvent.fire(HeroEvent.Hero_Level_Up_Talent_Event, data); HeroCalculate.getInstance().clearAllHeroRecordByRedPointType(HeroConst.RedPointType.eRPTalent); } else { nx.tbox(data.msg); } }, // --天赋遗忘 sender11098: function sender11098(partner_id, pos) { var protocal = {}; protocal.partner_id = partner_id; protocal.pos = pos; this.SendProtocal(11098, protocal); }, handle11098: function handle11098(data) { if (data.result == true) { this.model.updateHeroVoTalent([data], true); data = this.model.getHeroById(data.partner_id); gcore.GlobalEvent.fire(HeroEvent.Hero_Forget_Talent_Event, data); HeroCalculate.getInstance().clearAllHeroRecordByRedPointType(HeroConst.RedPointType.eRPTalent); } else { nx.tbox(data.msg); } }, // -- 打开英雄学习技能界面 openHeroTalentSkillLearnPanel: function openHeroTalentSkillLearnPanel(bool, hero_vo, cb) { if (bool == true) { nx.bridge.createPanel("WndPartnerSkillLearn", { hero_vo: hero_vo, cb: cb }); } else { nx.bridge.closePanel("WndPartnerSkillLearn"); } }, // -- 打开英雄学习技能升级界面 openHeroTalentSkillLevelUpPanel: function openHeroTalentSkillLevelUpPanel(bool, hero_vo, skill_id, cb) { if (bool == true) { nx.bridge.createPanel("WndPartnerSkillUpLevel", { hero_vo: hero_vo, skill_id: skill_id, cb: cb }); } else { nx.bridge.closePanel("WndPartnerSkillUpLevel"); } }, //开启新技能 openSkillUnlockWindow: function openSkillUnlockWindow(status, skill_bid) { if (status == true) { nx.bridge.createPanel("WndPartnerSkillUnlockPopup", { sid: skill_bid }); } else { nx.bridge.closePanel("WndPartnerSkillUnlockPopup"); } }, //播放英雄音效 onPlayHeroVoice: function onPlayHeroVoice(vocie_res, time) { nx.warn("onPlayHeroVoice该方法已弃用,遇到再说"); // //默认4秒 // time = time || 4; // //补充1秒时差 // time += 1; // if( this.voice_time_ticket == null ) { // let volume = nx.storage.get( "music_volume" ); // volume -= 0.6; // SoundManager.getInstance().setBackgroundVolume( volume ); // } else { // gcore.Timer.del( this.voice_time_ticket ); // this.voice_time_ticket = null; // } // if( this.hero_music != null ) { // if( this.hero_music == "undef" ) { // SoundManager.getInstance().removeEffectSound( null ); // } else { // SoundManager.getInstance().removeEffectSound( this.hero_music ); // } // } // this.hero_music = SoundManager.getInstance().playHeroEffectOnce( AUDIO_TYPE.DUBBING, vocie_res ); // if( this.hero_music == undefined ) { // this.hero_music = "undef"; // } // this.voice_time_ticket = gcore.Timer.set( function() { // let volume = nx.storage.get( "music_volume" ); // SoundManager.getInstance().setBackgroundVolume( volume ); // this.voice_time_ticket = null; // }.bind( this ), time * 1000, 1 ) }, /** * 皮肤提示 * @param {*} status 打开与关闭 * @param {*} data 皮肤信息 * @param {*} open_type 装备状态,0.其他状态,1: 背包中 3:伙伴身上 具体查看 PartnerConst.EqmTips * @param {*} partner 穿戴在伙伴身上就有伙伴id,其他可不填或填0 */ openHeroSkinTipsPanel: function openHeroSkinTipsPanel(status, data, open_type, partner) { if (status == true) { if (!this.hero_skin_tips_panel) { var HeroSkinTipsPanel = require("hero_skin_tips_window"); this.hero_skin_tips_panel = new HeroSkinTipsPanel(this); } this.hero_skin_tips_panel.open({ data: data, open_type: open_type, partner: partner }); } else { if (this.hero_skin_tips_panel) { this.hero_skin_tips_panel.close(); this.hero_skin_tips_panel = null; } } }, //---------------------------神裝相關結束----------------------------------------- //--神裝保存重置技能" sender11090: function sender11090(partner_id, holy_eqm_id, _type) { var protocal = {}; protocal.partner_id = partner_id; protocal.holy_eqm_id = holy_eqm_id; //神裝id protocal.type = _type; this.SendProtocal(11090, protocal); }, handle11090: function handle11090(data) { if (data.msg) { nx.tbox(data.msg); } }, //推送神裝改變" handle11091: function handle11091(data) { this.model.updateHolyEquipmentInfo(data); gcore.GlobalEvent.fire(HeroEvent.Holy_Equipment_Update_Event, data); }, //請求神裝穿戴信息"" sender11092: function sender11092(partner_ids) { var protocal = {}; protocal.partner_ids = partner_ids; this.SendProtocal(11092, protocal); }, handle11092: function handle11092(data) { this.model.updateHeroVoHolyEquipment(data.partner_ids); gcore.GlobalEvent.fire(HeroEvent.Hero_Get_Holy_Equipment_Event, data.partner_ids); }, //神裝穿戴/卸下" sender11093: function sender11093(partner_id, holy_eqm_id, _type) { var protocal = {}; protocal.partner_id = partner_id; protocal.holy_eqm_id = holy_eqm_id; //神裝id protocal.type = _type; this.SendProtocal(11093, protocal); }, handle11093: function handle11093(data) { if (data.msg != "") { nx.tbox(data.msg); } }, //神裝重置" 洗炼 sender11094: function sender11094(partner_id, holy_eqm_id, pos) { var protocal = {}; protocal.partner_id = partner_id; protocal.holy_eqm_id = holy_eqm_id; protocal.pos = pos; this.SendProtocal(11094, protocal); }, handle11094: function handle11094(data) { nx.tbox(data.msg); }, //神裝獲取出售材料 sender11088: function sender11088(item_ids) { var protocal = {}; protocal.item_ids = item_ids; this.SendProtocal(11088, protocal); }, handle11088: function handle11088(data) { nx.tbox(data.msg); gcore.GlobalEvent.fire(HeroEvent.Hero_Sell_Holy_Equipment_Res_Event, data); }, //神裝出售 sender11089: function sender11089(item_ids) { var protocal = {}; protocal.item_ids = item_ids; this.SendProtocal(11089, protocal); }, handle11089: function handle11089(data) { nx.tbox(data.msg); }, //神裝預覽返回 sender11086: function sender11086(partner_id, holyequip_suit_data) { //記錄神裝套裝數據 this.holyequip_suit_data = holyequip_suit_data; var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11086, protocal); }, handle11086: function handle11086(data) { this.openHolyequipmentTotalAttrPanel(true, data, this.holyequip_suit_data); }, //當前神裝套裝狀態 sender25220: function sender25220() { var protocal = {}; this.SendProtocal(25220, protocal); }, handle25220: function handle25220(data) { this.model.updateHolyEquipmentPlan(data); gcore.GlobalEvent.fire(HeroEvent.Hero_Get_Holy_Equipment_Plan_Event, data); }, //新增神裝套裝方案 sender25221: function sender25221(suit_id, partner_id, name, holy_eqm_list) { var protocal = {}; protocal.id = suit_id; protocal.partner_id = partner_id; protocal.name = name; protocal.holy_eqm = holy_eqm_list; this.SendProtocal(25221, protocal); }, handle25221: function handle25221(data) { nx.tbox(data.msg); }, //購買新的格子 sender25223: function sender25223() { var protocal = {}; this.SendProtocal(25223, protocal); }, handle25223: function handle25223(data) { nx.tbox(data.msg); if (data.code) { this.model.updateHolyEquipmentPlan(data, true); gcore.GlobalEvent.fire(HeroEvent.Hero_Open_Holy_Equipment_Cell_Event, data.num); } }, //應用方案到英雄 sender25224: function sender25224(partner_id, suit_id) { var protocal = {}; protocal.partner_id = partner_id; protocal.id = suit_id; this.SendProtocal(25224, protocal); }, handle25224: function handle25224(data) { nx.tbox(data.msg); }, //---------------------------皮肤协议结束----------------------------------------- //皮肤使用 sender11019: function sender11019(partner_id, skin_id, _cb) { var protocal = {}; protocal.partner_id = partner_id; protocal.skin_id = skin_id; this.SendProtocal(11019, protocal, _cb); }, handle11019: function handle11019(data) { // nx.tbox( data.msg ); if (data.result == 1) { nx.tbox(nx.text.getKey("lab_hero_controller_tip2")); } }, //皮肤使用 sender11020: function sender11020() { var protocal = {}; this.SendProtocal(11020, protocal); }, handle11020: function handle11020(data) { // cc.log( "11020", data ) this.model.initHeroSkin(data); }, //---------------------------皮肤协议结束----------------------------------------- //打开皮肤界面 openHeroSkinWindow: function openHeroSkinWindow(status, vo) { if (status == true) { if (!this.hero_skin_window) { this.hero_skin_window = Utils.createClass("hero_skin_window"); } this.hero_skin_window.open(vo); } else { if (this.hero_skin_window) { this.hero_skin_window.close(); this.hero_skin_window = null; } } }, // --打开共鸣页面 openHeroResonateWindow: function openHeroResonateWindow(status, setting) { if (status) { if (!this.model.checkResonateIsOpen()) { return; } if (!this.hero_resonate_window) { var heroresonatewindow = require("hero_resonate_window"); this.hero_resonate_window = new heroresonatewindow(this); } this.hero_resonate_window.open(setting); } else { if (this.hero_resonate_window) { this.hero_resonate_window.close(); this.hero_resonate_window = null; } } }, // 打开共鸣水晶卸下英雄 openHeroResonatePutDownPanel: function openHeroResonatePutDownPanel(status, setting) { if (status) { if (!this.model.checkResonateIsOpen()) { return; } if (!this.hero_resonate_put_down_panel) { var HeroResonatePutDownPanel = require("hero_resonate_put_down_panel"); this.hero_resonate_put_down_panel = new HeroResonatePutDownPanel(this); } this.hero_resonate_put_down_panel.open(setting); } else { if (this.hero_resonate_put_down_panel) { this.hero_resonate_put_down_panel.close(); this.hero_resonate_put_down_panel = null; } } }, // --打开选择英雄界面 和 openHeroUpgradeStarSelectPanel 差不多,,操作上简单很多 openHeroSelectHeroPanel: function openHeroSelectHeroPanel(status, setting) { if (status) { if (!this.hero_select_panel) { var heroselectpanel = require("hero_select_panel"); this.hero_select_panel = new heroselectpanel(this); } this.hero_select_panel.open(setting); } else { if (this.hero_select_panel) { this.hero_select_panel.close(); this.hero_select_panel = null; } } }, // --共鸣石碑信息 sender26400: function sender26400() { var protocal = {}; this.SendProtocal(26400, protocal); }, handle26400: function handle26400(data) { this.model.updateResonateLockInfo(data); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Info_Event, data); }, // --共鸣石碑上阵/下阵 (成功推送26400) sender26401: function sender26401(pos, id, _type) { var protocal = {}; protocal.pos = pos; protocal.id = id; protocal.type = _type; this.SendProtocal(26401, protocal); }, handle26401: function handle26401(data) { nx.tbox(data.msg); }, // ======================================================================== // 同步中心 --- Kevin 05.09 // ======================================================================== // 请求同步中心信息 sender26425: function sender26425() { this.SendProtocal(26425, {}); }, // 推送水晶信息 handle26425: function handle26425(data) { this.model.updateResonateCystalInfo(data); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Info_Event, data); }, // 放入同步伙伴 sender26426: function sender26426(partner_id, pos) { this.put_partner_id = partner_id; this.put_pos = pos; this.SendProtocal(26426, { partner_id: partner_id, pos: pos }); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Can_List_Event, false); }, // 放入同步伙伴返回 handle26426: function handle26426(data) { // 出现错误 if (nx.dt.objEmpty(data) || !data.result || nx.dt.strNEmpty(data.msg)) { nx.tbox(data ? data.msg : "ErrFailed"); this.put_pos = null; return; } var id = data.partner_id || this.put_partner_id; var hero_vo = this.model.getHeroById(id); if (hero_vo && Utils.next(hero_vo)) { nx.bridge.createPanel("WndSyncCenterJoin", hero_vo); // --可能放入的英雄有升级的红点..要消除他 hero_vo.red_point[HeroConst.RedPointType.eRPLevelUp] = null; // --可能是上阵的也要过滤一下 HeroCalculate.getInstance().checkAllHeroRedPoint(); } this.put_partner_id = null; gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Update_One_Event, this.put_pos); this.put_pos = null; }, // --卸下共鸣英雄" sender26427: function sender26427(partner_id, pos) { var protocal = {}; protocal.partner_id = partner_id; protocal.pos = pos; this.down_pos = pos; this.SendProtocal(26427, protocal); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Can_List_Event, false); }, handle26427: function handle26427(data) { nx.tbox(data.msg); // --可能是上阵的也要过滤一下 if (data.result) { HeroCalculate.getInstance().checkAllHeroRedPoint(); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Update_One_Event, this.down_pos); } this.down_pos = null; }, // --刷新槽位冷却时间" sender26428: function sender26428(pos) { var protocal = {}; protocal.pos = pos; this.SendProtocal(26428, protocal); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Can_List_Event, false); }, handle26428: function handle26428(data) { nx.tbox(data.msg); if (data.result) { gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Update_One_Event, data.pos); } }, // 解锁共鸣槽位 sender26429: function sender26429(pos, type) { this.SendProtocal(26429, { pos: pos, type: type }); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Can_List_Event, false); }, // 解锁共鸣槽位 handle26429: function handle26429(data) { // 出现错误 if (nx.dt.objEmpty(data) || !data.result || nx.dt.strNEmpty(data.msg)) { nx.tbox(data ? data.msg : "ErrFailed"); return; } gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Update_One_Event, data.pos); gcore.GlobalEvent.fire(HeroEvent.Hero_Resonate_Crystal_Update_One_Event, data.pos + 1); }, //夥伴回退 sender11065: function sender11065(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11065, protocal); }, handle11065: function handle11065(data) { var self = this; if (data) { nx.tbox(data.msg); var items = []; for (var i in data.list) { var v = data.list[i]; if (v.is_partner == 1) { var hero_vo = self.model.getHeroById(data.partner_id); if (hero_vo) { var hero_info = nx.dt.objClone(hero_vo); // hero_info.show_type = MainuiConst.item_exhibition_type.partner_type items.push(hero_info); } } else { items.push({ bid: v.id, num: v.num }); } } MainuiController.getInstance().openGetItemView(true, items, 0, { is_backpack: true }); gcore.GlobalEvent.fire(HeroEvent.HERO_RESET_EVENT, data); } }, //夥伴材料回退 sender11066: function sender11066(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11066, protocal); }, handle11066: function handle11066(data) { if (nx.dt.strNEmpty(data.msg)) { nx.tbox(data.msg); } if (data && data.code) { gcore.GlobalEvent.fire(HeroEvent.HERO_RESET_ITEM_EVENT, data); } }, //重生 針對 100級以下的 sender11067: function sender11067(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11067, protocal); }, handle11067: function handle11067(data) { this.model.setResetCount(data); }, //重生 針對 100級以下的 sender11068: function sender11068(partner_id) { var protocal = {}; protocal.partner_id = partner_id; this.SendProtocal(11068, protocal); }, handle11068: function handle11068(data) { nx.tbox(data.msg); }, //-----------------------重生方法處理------------------ showSingleRowItemList: function showSingleRowItemList(item_scrollview, item_list2, data_list, setting2) { // if( !item_scrollview ) { // return // } // if( !data_list ) { // return // } // let item_list = item_list2 // if( item_list ) { // //隱藏物品 // for( let i in item_list ) { // let v = item_list[ i ] // if( v.deleteMe ) { // v.deleteMe() // v = null // } // } // item_list = {} // } // if( item_list == null ) { // item_list = {} // } // if( data_list.length == 0 ) { // return // } // //道具列表 // let setting = setting2 || {} // let scale = setting.scale || 1 // let start_x = setting.start_x || 5 // let space_x = setting.space_x || 5 // let max_count = setting.max_count // let item_width = setting.item_width || 120 // let lock = setting.lock || false // let is_show_action = setting.is_show_action || false // //點擊返回回調函數 // let is_tip = setting.is_tip // let callback = setting.callback || false // let item_count = data_list.length // item_width = item_width * scale // let total_width = start_x * 2 + item_width * item_count + space_x * ( item_count - 1 ) // let item_scrollview_size = item_scrollview.getContentSize() // let max_width = Math.max( item_scrollview_size.width, total_width ) // item_scrollview.setContentSize( cc.size( max_width, item_scrollview_size.height ) ) // if( max_count && item_count < max_count ) { // // item_scrollview.setTouchEnabled(false) // if( setting.is_center ) { // start_x = ( item_scrollview_size.width - total_width ) * 0.5 // if( start_x < 0 ) { // start_x = 0 // } // } // } else { // // item_scrollview.setTouchEnabled(true) // } // item_scrollview.stopAllActions() // let _setItemData = ( item, v, i ) => { // item.setVisible( true ) // let _x = start_x + ( Number( i ) ) * ( item_width + space_x )//Number(i) - 1 // item.setPosition( _x, item_scrollview_size.height * 0.5 ) // item.setData( v[ 0 ], v[ 1 ], true ) // item.showOrderWarLock( lock ) // if( callback ) { // item.addCallBack( () => { // callback() // } ) // } // if( v[ 2 ] ) { // item.setGoodsName( v[ 2 ], null, 24, null ) // } // item.setDefaultTip( is_tip ) // if( setting.show_effect_id ) { // item.showItemEffect( true, setting.show_effect_id, PlayerAction.action_1, true, 1.1 ) // } else { // item.showItemEffect( false ) // } // } // let item = null // let size = item_list.length // for( let i in data_list ) { // let v = data_list[ i ] // let dealey = i - size // if( dealey <= 0 ) { // dealey = 1 // } // let time = 0 // if( is_show_action ) { // time = 0.1 * dealey // } else { // time = dealey / 60 // } // Utils.delayRun( item_scrollview, time, () => { // if( !item_list[ i ] ) { // if( v.show_type != null && v.show_type == MainuiConst.item_exhibition_type.partner_type ) { // item = new HeroExhibitionItem() // item.setScale( scale ); // let _x = start_x + space_x;//start_x + (Number(i) - 1) * (item_width + space_x) // item.setPosition( _x, item_scrollview_size.height * 0.5 ) // item.setParent( item_scrollview ); // item.show(); // item.addCallBack( () => { // // -- if v.rid and v.srv_id then // // -- HeroController:getInstance():openHeroTipsPanel(true, v) // // -- else // // -- HeroController:getInstance():openHeroTipsPanelByBid(v.bid) // // -- end // } ) // // item.setAnchorPoint(cc.v2(0.5, 0.5)) // item.setData( v ) // item_list[ i ] = item // } else { // item = new BackPackItem() // // item.setAnchorPoint(0, 0.5) // item.setScale( scale ) // // item:setSwallowTouches(false) // item.setParent( item_scrollview ); // item.show(); // item_list[ i ] = item // _setItemData( item, v, i ) // if( is_show_action ) { // item.setScale( scale * 1.3 ) // } // } // } // } ) // } // return item_list }, // --打開神裝洗練 // --@goods_vo // --@partner_id 英雄的 partner_id 洗炼 openHolyequipmentRefreshAttPanel: function openHolyequipmentRefreshAttPanel(status, goods_vo, _partner) { if (status) { nx.bridge.createPanel("WndPartnerHolyRefinement", { eqm: goods_vo, partner: _partner }); } else { nx.bridge.closePanel("WndPartnerHolyRefinement"); } }, // --打開神裝圖鑒界面 战斗义肢预览 openHeroClothesLustratWindow: function openHeroClothesLustratWindow(status, _titles) { if (status) { nx.bridge.createPanel("WndPartnerHolyPreview", { titles: _titles }); } else { nx.bridge.closePanel("WndPartnerHolyPreview"); } }, // --打開神裝預覽 openHolyequipmentTotalAttrPanel: function openHolyequipmentTotalAttrPanel(status, data, holyequip_suit_data) { if (status) { nx.bridge.createPanel("WndPartnerHolyBonus", data, holyequip_suit_data); } else { nx.bridge.closePanel("WndPartnerHolyBonus"); } }, // --打開神裝方案 openHolyequipmentPlanPanel: function openHolyequipmentPlanPanel(status, _data, _partner) { if (status == true) { nx.bridge.createPanel("WndPartnerHolyAssemble", { plans: _data, partner: _partner }); } else { nx.bridge.closePanel("WndPartnerHolyAssemble"); } }, // --打開神裝穿戴界面 openHeroHolyEquipClothPanel: function openHeroHolyEquipClothPanel(bool, pos, partner_id, data, holy_data, enter_type, hero_vo, equip_list) { var self = this; if (bool) { if (!self.equip_cloth_panel) { var HeroHolyEquipClothPanel = require("hero_holy_equip_cloth_panel"); self.equip_cloth_panel = new HeroHolyEquipClothPanel(); } self.equip_cloth_panel.open({ pos: pos, partner_id: partner_id, data: data, holy_data: holy_data, enter_type: enter_type, hero_vo: hero_vo, equip_list: equip_list }); } else { if (self.equip_cloth_panel) { self.equip_cloth_panel.close(); self.equip_cloth_panel = null; } } }, // --保存神裝套裝提示 openHolyequipmentSaveTips: function openHolyequipmentSaveTips(status, holy_data) { var self = this; if (status) { if (!self.holyequipment_save_tips) { var HolyequipmentSaveTips = require("holyequipment_save_tips"); self.holyequipment_save_tips = new HolyequipmentSaveTips(); } self.holyequipment_save_tips.open(holy_data); } else { if (self.holyequipment_save_tips) { self.holyequipment_save_tips.close(); self.holyequipment_save_tips = null; } } }, // --裝配神裝套裝提示 // --@holy_data:待裝配套裝數據 {id, name, hero_vo, item_list} openHolyequipmentWearTips: function openHolyequipmentWearTips(status, holy_data) { var self = this; if (status) { if (!self.holyequipment_wear_tips) { var HolyequipmentWearTips = require("holyequipment_wear_tips"); self.holyequipment_wear_tips = new HolyequipmentWearTips(); } self.holyequipment_wear_tips.open(holy_data); } else { if (self.holyequipment_wear_tips) { self.holyequipment_wear_tips.close(); self.holyequipment_wear_tips = null; } } }, // --保存神裝套裝方案提示 // --@hero_vo:當前英雄數據 // --@plan_data:所有神裝套裝數據 openHolyequipmentChooseTips: function openHolyequipmentChooseTips(status, hero_vo, plan_data) { var self = this; if (status) { if (!self.holyequipment_choose_tips) { var HolyequipmentChooseTips = require("holyequipment_choose_tips"); self.holyequipment_choose_tips = new HolyequipmentChooseTips(); } self.holyequipment_choose_tips.open({ hero_vo: hero_vo, plan_data: plan_data }); } else { if (self.holyequipment_choose_tips) { self.holyequipment_choose_tips.close(); self.holyequipment_choose_tips = null; } } }, // --重生確定 openHeroResetComfirmPanel: function openHeroResetComfirmPanel(status, setting) { var self = this; if (status) { if (!self.hero_reset_comfirm_panel) { var HeroResetComfirmPanel = require("hero_reset_comfirm_panel"); self.hero_reset_comfirm_panel = new HeroResetComfirmPanel(); } self.hero_reset_comfirm_panel.open(setting); } else { if (self.hero_reset_comfirm_panel) { self.hero_reset_comfirm_panel.close(); self.hero_reset_comfirm_panel = null; } } } }); module.exports = HeroController; cc._RF.pop();