Files
2026-05-23 22:10:14 +08:00

991 lines
29 KiB
JavaScript

/*
這裡填寫簡要說明(必填),
@author: xxx@syg.com(必填, 創建模塊的人員)
@editor: xxx@syg.com(必填, 後續維護以及修改的人員)
@description:
這裡填寫詳細說明,主要填寫該模塊的功能簡要
<br/>Create: 2019-08-13
*/
const BridgeController = require( "bridge.controller" );
var ElfinEvent = require("elfin_event")
var BackPackConst = require("backpack_const")
var BackpackEvent = require("backpack_event")
var BackPackConst = require("backpack_const")
var PartnerConst = require("partner_const")
var RoleController = require("role_controller")
var RoleEvent = require("role_event")
var ElfinController = cc.Class({
extends: BridgeController,
ctor() {
var ElfinModel = require("elfin_model")
this.model = new ElfinModel(this)
this.model.initConfig()
this.elfin_awards = []
},
initConfig(){
},
getModel() {
return this.model
},
registerEvents() {
},
requestBaseQuestData: function ( _cb ) {
// if( !this.getModel().checkElfinIsOpen( true ) ) return;
this.SendProtocal( 26500, {} ); //-- 精灵孵化器数据
this.SendProtocal( 26550, {} ); //-- 精灵召唤数据
this.SendProtocal( 26510, {}, _cb ); //-- 精灵古树数据
// if( this.attr_fun_list[ 6 ] ) {
// this.attr_fun_list[ 6 ].req_flag = true
// }
},
registerProtocals() {
this.RegisterProtocal(26500, this.handle26500) // 精靈孵化信息
this.RegisterProtocal(26501, this.handle26501) // 精靈孵化信息更新
this.RegisterProtocal(26502, this.handle26502) // 精靈孵化器升級
this.RegisterProtocal(26535, this.handle26535) // 精靈孵化器激活s
this.RegisterProtocal(26503, this.handle26503) // 請求孵化精靈
this.RegisterProtocal(26504, this.handle26504) // 請求加速孵化精靈
this.RegisterProtocal(26505, this.handle26505) // 停止孵化精靈
this.RegisterProtocal(26506, this.handle26506) // 領取孵化產物
this.RegisterProtocal(26507, this.handle26507) // 購買精靈道具
this.RegisterProtocal(26508, this.handle26508) // 精靈融合
this.RegisterProtocal(26509, this.handle26509) // 精靈圖鑒
this.RegisterProtocal(26510, this.handle26510) // 古樹信息
this.RegisterProtocal(26511, this.handle26511) // 古樹升級
this.RegisterProtocal(26512, this.handle26512) // 古樹進階
this.RegisterProtocal(26513, this.handle26513) // 古樹佈置精靈
this.RegisterProtocal(26514, this.handle26514) // 古樹批量佈置精靈
this.RegisterProtocal(26520, this.handle26520) // 推送新激活的精靈
this.RegisterProtocal(26550, this.handle26550) // 精靈召喚數據
this.RegisterProtocal(26551, this.handle26551) // 精靈召喚
this.RegisterProtocal(26552, this.handle26552) // 領取保底禮包
this.RegisterProtocal(26553, this.handle26553) // 精靈抽獎結果
this.RegisterProtocal(26554, this.handle26554) // 設置幸運精靈(成功推送26550)
this.RegisterProtocal(26555, this.handle26555) // 精靈佈陣信息
this.RegisterProtocal(26556, this.handle26556) // 精靈方案信息
this.RegisterProtocal(26557, this.handle26557) // 精靈方案保存
this.RegisterProtocal(26558, this.handle26558) // 精靈方案名字修改
this.RegisterProtocal(26559, this.handle26559) // 精靈方案信息(不能申請)
this.RegisterProtocal(26560, this.handle26560) // 精靈佈陣自主保存
this.RegisterProtocal(26561, this.handle26561) // 精靈佈陣使用方案保存
this.RegisterProtocal(26562, this.handle26562) // 購買精靈方案
this.RegisterProtocal(26563, this.handle26563) // 消耗精靈時是否需要彈提示框
this.RegisterProtocal(26564, this.handle26564) // 多隊伍保存精靈佈陣隊伍順序調整(跨服競技場、巔峰冠軍賽)
},
reqBaseFromServer: function( _cb ){
let cfgs = [
"sprite_data",
"holiday_sprite_lottery_data",
];
this.loadConfigs( cfgs, ( _ret, _data ) =>{
this.requestBaseQuestData( _cb );
} )
},
// 請求精靈孵化信息
sender26500() {
this.SendProtocal(26500, {})
},
handle26500(data) {
if (data.sprite_hatchs) {
this.model.setElfinHatchList(data.sprite_hatchs)
gcore.GlobalEvent.fire(ElfinEvent.Get_Elfin_Hatch_Data_Event)
}
if (data.info) {
this.model.setElfinBuyInfo(data.info)
}
},
// 更新靈窩數據(也可能是新增)
handle26501(data) {
if (data.sprite_hatch) {
this.model.updateElfinHatchData(data.sprite_hatch)
gcore.GlobalEvent.fire(ElfinEvent.Get_Elfin_Hatch_Data_Event);
}
},
// 請求孵化器升級
sender26502(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26502, protocal)
},
handle26502(data) {
if (data.msg) {
nx.tbox(data.msg)
}
if (data.result == 1) {
let new_data = {}
new_data.id = data.id
new_data.lev = data.lev
this.model.updateOneElfinHatchData(new_data)
}
},
// 請求開始孵化
sender26503(id, item_bid) {
let protocal = {}
protocal.id = id
protocal.item_bid = item_bid
this.SendProtocal(26503, protocal)
},
handle26503(data) {
if (data.msg) {
nx.tbox(data.msg)
}
},
// 請求加速孵化
sender26504(id, item_bid, item_num, _type) {
let protocal = {}
protocal.id = id
protocal.item_bid = item_bid
protocal.item_num = item_num
protocal.type = _type || 0
this.SendProtocal(26504, protocal)
},
handle26504(data) {
if (data.msg) {
nx.tbox(data.msg)
}
// 使用道具加速成功
if (data.result == 1) {
gcore.GlobalEvent.fire(ElfinEvent.Use_Item_Hatch_Event, data.id)
}
},
// 請求停止孵化精靈
sender26505(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26505, protocal)
},
handle26505(data) {
if (data.msg) {
nx.tbox(data.msg)
}
},
// 請求領取孵化產物
sender26506(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26506, protocal)
},
handle26506(data) {
if (data.msg) {
nx.tbox(data.msg)
}
if (data.result == 1 && data.awards) {
this.elfin_awards.push(data.awards);
let award = data.awards;
if( award ){
let awardss = [];
for (let i = 0; i < award.length; i++) {
let data = award[i];
let dataa = {};
dataa.base_id = data.item_bid;
dataa.num = data.item_num;
awardss.push( dataa );
}
// [{"item_bid":10040,"item_num":6},{"item_bid":112004,"item_num":1}]}
}
this.openElfSGainLottery( true, award );
}
this.model.calculateTreePutElfinRedStatus();
},
// 精靈孵化器激活s
sender26535(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26535, protocal)
},
handle26535(data) {
if (data.flag == 1) {
this.openElfinHatchUnlockPanel(false)
}
if (data.msg) {
nx.tbox(data.msg)
}
},
// 請求購買精靈蛋/砸蛋道具
sender26507(_type, item_id, num, hatch_id) {
// 標識是否購買成功後直接孵化
if (hatch_id) {
this.hatch_egg_bid_flag = item_id
this.hatch_id_flag = hatch_id
}
let protocal = {}
protocal.type = _type
protocal.item_id = item_id
protocal.num = num
this.SendProtocal(26507, protocal)
},
handle26507(data) {
if (data.msg) {
nx.tbox(data.msg)
}
if (data.result == 1 && data.count && data.item_id) {
this.model.updateElfinBuyInfoByBid(data.item_id, data.count)
gcore.GlobalEvent.fire(ElfinEvent.Buy_Elfin_Item_Success_Event, data.item_id)
// 購買成功後直接開始孵化
if (this.hatch_id_flag && this.hatch_egg_bid_flag && this.hatch_egg_bid_flag == data.item_id) {
this.sender26503(this.hatch_id_flag, data.item_id)
this.hatch_egg_bid_flag = null
this.hatch_id_flag = null
this.openElfSelectItemWindow(false)
}
}
},
// 請求精靈融合
sender26508(item_bid, num, pos) {
let protocal = {}
protocal.item_bid = item_bid
protocal.num = num
protocal.pos = pos
this.SendProtocal(26508, protocal)
},
handle26508(data) {
if (data.msg) {
nx.tbox(data.msg)
}
// 融合成功,關閉融合界面
if (data.result == 1 || data.result == 0) {
this.openElfinCompoundWindow(false)
this.openElfinEggSyntheticPanel(false)
if( data.result == 1 ){
gcore.GlobalEvent.fire( ElfinEvent.Buy_Elfin_Item_Success_Event );
}
}
},
// 請求精靈圖鑒數據
sender26509() {
this.SendProtocal(26509, {})
},
handle26509(data) {
if (data.awards) {
this.model.setActivatedElfinList(data.awards)
gcore.GlobalEvent.fire(ElfinEvent.Get_Activated_Elfin_Event)
}
},
// 請求古樹信息
sender26510() {
this.SendProtocal(26510, {})
},
handle26510(data) {
/***
* [26510]:{"lev":83,"break_lev":4,"atk":33350,"def_p":0,"def_s":0,"hp_max":133374,"speed":535,"hit_rate":9999,"dodge_rate":0,
* "crit_rate":2000,"crit_ratio":1200,"hit_magic":0,"dodge_magic":0,"def":1070,
* "sprites":[{"pos":4,"item_bid":111404},{"pos":3,"item_bid":113402},{"pos":2,"item_bid":113405},{"pos":1,"item_bid":113407}],"power":171642}
*/
this.model.setElfinTreeData({ type: 0 , data: data } );
gcore.GlobalEvent.fire(ElfinEvent.Get_Elfin_Tree_Data_Event, data );
},
// 請求古樹升級
sender26511() {
this.SendProtocal(26511, {})
},
handle26511(data) {
if (data.msg) {
nx.tbox(data.msg)
}
},
// 請求古樹進階
sender26512() {
this.SendProtocal(26512, {})
},
handle26512(data) {
if (data.msg) {
nx.tbox(data.msg)
}
if (data.result == 1) {
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Tree_Lv_Up_Event)
}
},
// 請求佈置精靈
sender26513(pos, item_bid) {
let protocal = {}
protocal.pos = pos
protocal.item_bid = item_bid
this.SendProtocal(26513, protocal)
},
handle26513(data) {
if (data.msg) {
nx.tbox(data.msg)
}
if (data.result == 1) {
this.updateEflinDrama()
}
},
// 請求批量佈置精靈
//@only_save 是否僅是保存(從 26560過來的 ) {
sender26514(sprites, only_save) {
let protocal = {}
protocal.sprites = sprites
this.SendProtocal(26514, protocal)
if (!only_save) {
this.can_save_drama = true
}
},
handle26514(data) {
if (this.can_save_drama) {
nx.tbox(data.msg);
}
if( !this.can_save_drama && !nx.dt.strEmpty( data.msg ) ){
nx.tbox(data.msg);
}
if (data.result == 1 && this.can_save_drama) {
this.can_save_drama = false
this.updateEflinDrama()
}
},
//更新劇情佈陣
updateEflinDrama() {
let data = this.model.getElfinTreeData()
if (data && data.sprites) {
this.send26560(PartnerConst.Fun_Form.Drama, data.sprites, 1, 1, true)
}
},
// 推送新激活的精靈
handle26520(data) {
if (data.awards) {
this.model.calculateElfinActivateRedStatus(data.awards)
}
},
////////////////////////////////////精靈召喚協議////////////////////////////////////
// 請求精靈召喚數據
send26550() {
let protocal = {}
this.SendProtocal(26550, protocal)
},
// 精靈召喚數據
handle26550(data) {
if (data) {
this.model.setElfinSummonData(data);
nx.mTip.openTip( "partner.wing.purchase.free", data.free_time == 0 );
gcore.GlobalEvent.fire(ElfinEvent.Update_Elfin_Summon_Data_Event, data)
}
},
// 請求精靈召喚
send26551(times, recruit_type, is_return_gain) {
this.is_return_gain = is_return_gain
let protocal = {}
protocal.times = times
protocal.recruit_type = recruit_type
this.SendProtocal(26551, protocal)
},
// 精靈召喚獲得
handle26551(data) {
nx.tbox(data.msg)
},
// 請求領取禮包
send26552(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26552, protocal)
},
// 領取保底禮包
handle26552(data) {
if( data.msg != "" ){
nx.tbox( data.msg );
}
},
// 精靈抽獎結果 打开僚机召唤相关的面板
handle26553(data) {
this.openElfGainWindowLottery( true, data.rewards );
},
// 設置幸運精靈(成功推送26550)
send26554(lucky_ids) {
let protocal = {}
protocal.lucky_ids = lucky_ids
this.SendProtocal(26554, protocal)
},
// 設置幸運精靈
handle26554(data) {
if( !nx.dt.strEmpty( data.msg )){
nx.tbox(data.msg);
}
},
// 精靈佈陣信息
send26555(type) {
let protocal = {}
protocal.type = type
this.SendProtocal(26555, protocal)
},
// 精靈佈陣信息
handle26555(data) {
this.model.freshDefaultScheme( data );
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_From_Info_Event, data)
},
// 精靈方案信息
send26556() {
let protocal = {}
this.SendProtocal(26556, protocal)
},
// 精靈方案信息
handle26556(data) {
/***
* [26556]:{"plan_list":[
* {"id":8,"name":"霸王","plan_sprites":[]},
* {"id":7,"name":"霸气","plan_sprites":[]},
* {"id":6,"name":"八六","plan_sprites":[]},
* {"id":5,"name":"巴武","plan_sprites":[]},
* {"id":4,"name":"巴斯","plan_sprites":[]},
* {"id":1,"name":"464646","plan_sprites":[{"pos":4,"item_bid":0},{"pos":3,"item_bid":111405},{"pos":2,"item_bid":113408},{"pos":1,"item_bid":113401}]},
* {"id":2,"name":"测试换名23","plan_sprites":[{"pos":4,"item_bid":0},{"pos":3,"item_bid":0},{"pos":2,"item_bid":0},{"pos":1,"item_bid":113401}]},
* {"id":3,"name":"3333","plan_sprites":[{"pos":4,"item_bid":0},{"pos":3,"item_bid":0},{"pos":2,"item_bid":0},{"pos":1,"item_bid":0}]}]}
*/
this.model.setPlanData(data)
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Info_Event, data)
},
// 精靈方案保存
send26557(id, sprites, type, team) {
let protocal = {}
protocal.id = id
protocal.sprites = sprites
protocal.type = type
protocal.team = team || 1
this.SendProtocal(26557, protocal)
},
// 精靈方案保存
handle26557(data) {
nx.tbox(data.msg)
},
// 精靈方案名字修改
send26558(id, name) {
let protocal = {}
protocal.id = id
protocal.name = name
this.SendProtocal(26558, protocal)
},
// 精靈方案名字修改
handle26558(data) {
nx.tbox(data.msg)
},
// 精靈方案信息(不能申請)
handle26559(data) {
/*******
* {"id":1,"name":"65656","plan_sprites":[{"pos":2,"item_bid":0},{"pos":1,"item_bid":0}]}
*/
this.model.setPlanData({ plan_list: [ data ] })
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Update_Event, data)
},
// 精靈佈陣自主保存
//@ only_save 從26514 過來的
send26560(_type, sprites, team, flag, only_save) {
let protocal = {}
protocal.type = _type
protocal.sprites = sprites
protocal.team = team || 1
protocal.flag = flag || 1
this.SendProtocal(26560, protocal)
if (_type == PartnerConst.Fun_Form.Drama && !only_save) {
this.sprites_26560 = sprites
}
},
// 精靈佈陣自主保存
handle26560(data) {
if (data.type == PartnerConst.Fun_Form.Drama) {
if (this.sprites_26560) {
//劇情陣容的
this.sender26514(this.sprites_26560, true)
this.sprites_26560 = null
nx.tbox(data.msg)
}
} else {
if (this.sprites_26560 == null) {
nx.tbox(data.msg)
}
}
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Save_From_Event, data)
},
// 精靈佈陣使用方案保存
send26561(id, _type, team, sprites) {
let protocal = {}
protocal.id = id
protocal.type = _type
protocal.team = team || 1
this.SendProtocal(26561, protocal)
if (_type == PartnerConst.Fun_Form.Drama && sprites) {
this.sprites_26561 = sprites
}
},
// 精靈佈陣使用方案保存
handle26561(data) {
nx.tbox(data.msg)
if (data.type == PartnerConst.Fun_Form.Drama && this.sprites_26561) {
this.sender26514(this.sprites_26561, true)
this.sprites_26561 = null
}
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Save_From_Event, data)
},
// 購買精靈方案
send26562(id) {
let protocal = {}
protocal.id = id
this.SendProtocal(26562, protocal)
},
// 購買精靈方案
handle26562(data) {
nx.tbox(data.msg)
if (data.flag == 1) {
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Buy_Event, data)
}
},
// 消耗精靈時是否需要彈提示框
send26563(base_id, num) {
let protocal = {}
protocal.base_id = base_id
protocal.num = num
this.SendProtocal(26563, protocal)
},
// 購買精靈方案
handle26563(data) {
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Plan_Must_Tips_Event, data)
},
// 多隊伍保存精靈佈陣隊伍順序調整(跨服競技場、巔峰冠軍賽)
send26564(_type, team_list) {
let protocal = {}
protocal.type = _type
protocal.team_list = team_list
this.SendProtocal(26564, protocal)
},
// 購買精靈方案
handle26564(data) {
nx.tbox(data.msg)
},
////////////// @ 紅點相關
// 監聽當前古樹升級、進階消耗的物品數量變化、精靈的數量變化
checkNeedUpdateRedStatus(item_list) {
if (item_list == null || Utils.next(item_list) == null) { return }
let cost_bid_list = this.model.getElfinTreeCostBidList()
let com_cost_bid_list = this.model.getElfinCompoundCostBidList()
let is_check_uplv = false // 是否更新古樹升級、進階的紅點
let is_check_elfin = false // 是否要更新古樹放置精靈的紅點
let is_check_com = false // 是否要更新上陣精靈合成的紅點
let is_check_egg = false // 是否要更新可孵化的靈窩和蛋的紅點
for (let k in item_list) {
let v = item_list[k]
if (v.config) {
if (BackPackConst.checkIsElfin(v.config.type)) {
is_check_elfin = true
}
if (BackPackConst.checkIsElfinEgg(v.config.type)) {
is_check_egg = true
}
if (cost_bid_list && Utils.next(cost_bid_list) != null) {
for (let i in cost_bid_list) {
let id = cost_bid_list[i]
if (id == v.config.id) {
is_check_uplv = true
break
}
}
}
if (com_cost_bid_list && Utils.next(com_cost_bid_list) != null) {
for (let i in com_cost_bid_list) {
let id = com_cost_bid_list[i]
if (id == v.config.id) {
is_check_com = true
break
}
}
}
}
if (is_check_uplv && is_check_elfin && is_check_com && is_check_egg) {
break
}
}
if (is_check_uplv) {
this.model.calculateTreeUplvRedStatus()
}
if (is_check_elfin) {
this.model.calculateTreePutElfinRedStatus()
this.model.calculateElfinHigherRedStatus()
}
if (is_check_com) {
this.model.calculateElfinCompoundRedStatus()
}
if (is_check_egg) {
this.model.calculateElfinHatchEggRedStatus()
}
},
// 使用钻石 换相关的材料方案等
openElfUseTipsWindow(status, _desc, _mats, _counts, _cb ) {
if (status == true) {
nx.bridge.createPanel( "WndUseDiamondUseLottery", {
desc : _desc,
mats : _mats,
counts : _counts,
cb : _cb
} )
} else {
nx.bridge.closePanel( "WndUseDiamondUseLottery" );
}
},
// 打開獲得精靈界面 僚机获取界面 抽奖获取
openElfSGainLottery( status, list ) {
if( !status ) {
nx.bridge.closePanel( "WndScientificReward" );
return;
}
nx.bridge.createPanel( "WndScientificReward", {
list: list,
} );
},
// 打開獲得精靈界面 僚机获取界面 抽奖获取
openElfGainWindowLottery( status, list, params ) {
if( !status ) {
nx.bridge.closePanel( "WndWingRewardShow" );
return;
}
nx.bridge.createPanel( "WndWingRewardShow", {
list: list,
params: params,
} );
},
// 打開精靈/錘子選擇界面 // 打开僚机选择研发目标
openElfSelectItemWindow(status, setting) {
if (status == true) {
nx.bridge.createPanel( "WndElfinScientficItem", setting );
} else {
nx.bridge.closePanel( "WndElfinScientficItem" );
}
},
// 引導需要
getElfinSelectRoot() {
if (this.elfin_select_item_wnd) {
return this.elfin_select_item_wnd.root_wnd
}
},
// 檢測精靈蛋孵化獲得彈窗
checkElfinGain() {
if (this.elfin_awards && Utils.next(this.elfin_awards || {}) != null) {
let awards = this.elfin_awards.shift()
if (awards) {
let awardss = [];
for (let i = 0; i < awards.length; i++) {
let data = {};
data.base_id = awards[i].item_bid;
data.num = awards[i].item_num;
awardss.push( data );
}
// [{"item_bid":111002,"item_num":1}]
this.openElfGainWindow(true, awardss)
}
}
},
// 特權靈窩提示彈窗
openElfinPrivilegeWindow(status) {
if (status == true) {
if (!this.elfin_privilege_wnd) {
let ElfinPrivilegeWindow = require("elfin_privilege_window")
this.elfin_privilege_wnd = new ElfinPrivilegeWindow(this)
}
this.elfin_privilege_wnd.open()
} else {
if (this.elfin_privilege_wnd) {
this.elfin_privilege_wnd.close()
this.elfin_privilege_wnd = null
}
}
},
// 打開精靈圖鑒 僚机预览
openElfinBookWindow(status) {
if (status == true) {
nx.bridge.createPanel( "WndElfinPreview" );
} else {
nx.bridge.closePanel( "WndElfinPreview" );
}
},
// 打開精靈圖鑒 僚机科研
openWingScientfic( status, _fromOther ) {
if (status == true) {
nx.bridge.createPanel( "WndElfinScientfic", _fromOther );
} else {
nx.bridge.closePanel( "WndElfinScientfic" );
}
},
// 打開召喚許願池 僚机 召唤采购主界面
openElfinWishWindow(status, data) {
if (status == true) {
nx.bridge.createPanel( "WndElfinProcurement", data );
} else {
nx.bridge.closePanel( "WndElfinProcurement" );
}
},
// 打開召喚許願池 僚机 许愿弹窗
openElfinWishTip(status, data) {
if (status == true) {
nx.bridge.createPanel( "WndElfinWishItem", data );
} else {
nx.bridge.closePanel( "WndElfinWishItem" );
}
},
// 打開精靈蛋合成界面
openElfinEggSyntheticPanel(status, data) {
if (status == true) {
nx.bridge.createPanel( "WndWingEggMerge", data );
} else {
nx.bridge.closePanel( "WndWingEggMerge" );
}
},
/**
* desc:购买僚机孵化
*/
openBuyPanel: function( status, data, _type, _cb ) {
if( status == false ) {
nx.bridge.closePanel( "WndOtherItemBuy" );
} else {
nx.bridge.createPanel( "WndOtherItemBuy", {
data : data,
type: _type,
cb : _cb
} );
}
},
// 打開精靈窩解鎖s界面 解锁 僚机解锁
openElfinHatchUnlockPanel(status, data) {
if (status == true) {
nx.bridge.createPanel( "WndUnlockedDesc", data );
} else {
nx.bridge.closePanel( "WndUnlockedDesc" );
}
},
// 打開精靈展示界面 僚机 科研获得
openElfinInfoWindow(status, data) {
if (status == true) {
if (!this.elfin_info_window) {
var ElfinInfoWindow = require("elfin_info_window")
this.elfin_info_window = new ElfinInfoWindow(this)
}
this.elfin_info_window.open(data);
} else {
if (this.elfin_info_window) {
this.elfin_info_window.close();
this.elfin_info_window = null;
}
gcore.GlobalEvent.fire(ElfinEvent.Elfin_Check_Show_Tips_Event)//檢測是否繼續彈tips
}
},
// 打開精靈古樹喚醒界面 进阶 堡垒
openElfinTreeStepWindow(status) {
if (status == true) {
nx.bridge.createPanel( "WndWingUpgrade" );
} else {
nx.bridge.closePanel( "WndWingUpgrade" );
}
},
// 打開精靈古樹喚醒成功界面
openElfinTreeRouseWindow(status, old_data, new_data) {
if (status == true) {
if (!this.tree_rouse_wnd) {
var ElfinTreeRouseWindow = require("elfin_tree_rouse_window")
this.tree_rouse_wnd = new ElfinTreeRouseWindow(this)
}
this.tree_rouse_wnd.open({old_data, new_data})
} else {
if (this.tree_rouse_wnd) {
this.tree_rouse_wnd.close()
this.tree_rouse_wnd = null
}
}
},
// 打開精靈融合界面 升级僚机技能
openElfinCompoundWindow(status, _item_bid, _sid, _pos, _from, _camp, _cb ) {
if (status == true) {
nx.bridge.createPanel( "WndElfinUpSkill", {
item_bid: _item_bid,
skill_id: _sid ,
pos : _pos,
from: _from,
camp: _camp || 0,
cb: _cb
} )
} else {
nx.bridge.closePanel( "WndElfinUpSkill" );
}
},
// 打開精靈調整界面 僚机 装配
openElfinAdjustWindow(status, _type, _team, _setting ) {
if (status == true) {
nx.bridge.createPanel( "WndElfinAssemble", {
type:_type,
team: _team,
setting: _setting
} );
} else {
nx.bridge.closePanel( "WndElfinAssemble" );
}
},
__delete() {
if (this.model != null) {
this.model.deleteMe()
this.model = null
}
},
})
module.exports = ElfinController