const GuildBatMod = require("guildbat.mod"); const BridgeWindow = require( "bridge.window" ); const GuildwarEvent = require("guildwar_event"); cc.Class({ extends: BridgeWindow, properties: { content:{ default:null, type:cc.Node }, logItem:{ default:null, type:cc.Node } }, // LIFE-CYCLE CALLBACKS: onLoad () { this.mod = GuildBatMod.getInstance(); this.ruins_type = { [0]:nx.text.getKey("GuildBatRuin"), [1]:nx.text.getKey("GuildBatFortress"), [2]:nx.text.getKey("GuildBatRuin") }; this.log_type={ [1]:nx.text.getKey("GuildBatLog2_"), [2]:nx.text.getKey("GuildBatLog3_"), [3]:"", [4]:nx.text.getKey("GuildBatLog4_"), [5]:"", [6]:"", } this.bindGEvent(GuildwarEvent.UpdateBatLogEvent,this.updateLogs.bind(this)); }, onOpenConfigs() { this.mod.requestBattleLogData(); }, updateLogs(data){ nx.bridge.NodeChidrenDestroy(this.content); for(let i in data.guild_war_log){ let log_data = data.guild_war_log[i]; let str = "";//總體描述 let svid0 = log_data.srv_id2.split( '_' ); let svid1 = log_data.srv_id1.split( '_' ); let resultT = log_data.int_args[4].val == 2?nx.text.getKey("FAil"):nx.text.getKey("Success"); if(log_data.flag1 == 0){//敵方 str += cc.js.formatStr(nx.text.getKey("GuildBatLog1_"), nx.text.format( "Srever", svid0[1] ),log_data.name2,nx.text.format( "Srever", svid1[1] ),log_data.name1,this.ruins_type[log_data.flag2],resultT); }else{//我方 str += cc.js.formatStr(nx.text.getKey("GuildBatLog1_"),nx.text.format( "Srever", svid1[1] ),log_data.name1,nx.text.format( "Srever", svid0[1] ),log_data.name2,this.ruins_type[log_data.flag2],resultT); } //結算 for(let v in log_data.int_args){ let arg = log_data.int_args[v]; if(arg.key == 1 || arg.key == 2 || arg.key == 4){ str += cc.js.formatStr(this.log_type[arg.key],arg.val); } } let item = cc.instantiate(this.logItem); if(item){ item.parent = this.content; nx.gui.setString(item,"",str); } } }, onPreClosed() { nx.bridge.NodeChidrenDestroy(this.content); }, });