179 lines
5.3 KiB
JavaScript
179 lines
5.3 KiB
JavaScript
|
|
const NxSpine = require( "nx.fx.spine" );
|
||
|
|
const ItemBase = require( "cmp.item.base" );
|
||
|
|
const SVCItem = require( "nx.fx.sv.expand.item" );
|
||
|
|
const TipsController = require("tips_controller");
|
||
|
|
const BackPackConst = require( "backpack_const" );
|
||
|
|
const Header = require( "cmp.common.header" );
|
||
|
|
const BIT = BackPackConst.item_type;
|
||
|
|
const ArenaController = require( "arena_controller" );
|
||
|
|
const PVPMod = require( "pvp.mod" );
|
||
|
|
const HeroController = require( "hero_controller" );
|
||
|
|
|
||
|
|
cc.Class( {
|
||
|
|
|
||
|
|
extends: SVCItem,
|
||
|
|
|
||
|
|
properties: {
|
||
|
|
|
||
|
|
nodHead: { default: null, type: Header },
|
||
|
|
nodLev: { default: null, type: cc.Node },
|
||
|
|
nodDesc: { default: null, type: cc.Node },
|
||
|
|
nodOp: { default: null, type: cc.Node },
|
||
|
|
nodRole: { default: null, type: NxSpine },
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
// 数据重置
|
||
|
|
rebind: function( _idx, _data, _key ) {
|
||
|
|
|
||
|
|
this._super( _idx, _data, _key );
|
||
|
|
|
||
|
|
// 刷新
|
||
|
|
this.setData( _data );
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
// 重置
|
||
|
|
setData: function( _data, _count ) {
|
||
|
|
/***
|
||
|
|
* // -->{"_evt_idx":0,"_evt_list":{},"idx":1,"rid":1,"srv_id":"","name":"Youadsha","lev":92,"sex":0,"face":20301,"power":6941,"score":1000,"get_score":22,"status":0,
|
||
|
|
* "p_list":[{"pos":1,"bid":30301,"lev":1,"star":3,"break_lev":0,"use_skin":0,"resonate_lev":0},
|
||
|
|
* {"pos":2,"bid":10305,"lev":1,"star":3,"break_lev":0,"use_skin":0,"resonate_lev":0},
|
||
|
|
* {"pos":3,"bid":20301,"lev":1,"star":3,"break_lev":0,"use_skin":0,"resonate_lev":0},
|
||
|
|
* {"pos":4,"bid":10304,"lev":1,"star":3,"break_lev":0,"use_skin":0,"resonate_lev":0},
|
||
|
|
* {"pos":5,"bid":20304,"lev":1,"star":3,"break_lev":0,"use_skin":0,"resonate_lev":0}],
|
||
|
|
* "face_update_time":0,"face_file":"","gid":0,"gsrv_id":"","gname":""}
|
||
|
|
*/
|
||
|
|
|
||
|
|
this.mdata = _data;
|
||
|
|
if( !this.mdata ){
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
this.freshAll();
|
||
|
|
// console.log( "需要处理的数据pvp----->" + JSON.stringify( this.mdata ) );
|
||
|
|
},
|
||
|
|
|
||
|
|
freshAll: function(){
|
||
|
|
|
||
|
|
this.freshHeader();
|
||
|
|
this.freshDesc();
|
||
|
|
this.freshOp();
|
||
|
|
this.freshPartnerRole();
|
||
|
|
},
|
||
|
|
|
||
|
|
freshHeader: function(){
|
||
|
|
|
||
|
|
let cfg = game.configs.item_data.data_unit6[ this.mdata.face ];
|
||
|
|
let avatarc = 0;
|
||
|
|
if( !cfg ){
|
||
|
|
avatarc = 29982;
|
||
|
|
}
|
||
|
|
let avtar = {
|
||
|
|
face: avatarc != 0 ? avatarc : this.mdata.face,
|
||
|
|
avatar: 1000,
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
this.nodHead.setData( avtar );
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
|
||
|
|
freshDesc: function(){
|
||
|
|
|
||
|
|
nx.gui.setString( this.nodLev, "", nx.text.format( "LvNumber" , this.mdata.lev ) );
|
||
|
|
nx.gui.setString( this.nodDesc, "name", this.mdata.name );
|
||
|
|
nx.gui.setString( this.nodDesc, "power/txt", this.mdata.power );
|
||
|
|
nx.gui.setString( this.nodDesc, "point/txt", this.mdata.score );
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
freshOp: function( ){
|
||
|
|
|
||
|
|
let model = ArenaController.getInstance().getModel();
|
||
|
|
|
||
|
|
let self_data = model.getMyLoopData();
|
||
|
|
let ffg = game.configs.arena_data.data_const.combat_num;
|
||
|
|
let cfg = game.configs.arena_data.data_const;
|
||
|
|
let free = self_data.can_combat_num <= ffg.val && self_data.can_combat_num > 0;
|
||
|
|
|
||
|
|
let nod = nx.gui.find( this.nodOp, "mat" );
|
||
|
|
nx.bridge.setIconS( nod, "icon", cfg.arena_ticket.val, "resDB/empty/icon" );
|
||
|
|
nx.gui.setString( nod, "txt", free ? nx.text.getKey( "Free" ) : nx.text.getKey( "Challenge" ) )
|
||
|
|
nx.gui.setActive( nod, "icon", !free );
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
freshPartnerRole: function(){
|
||
|
|
|
||
|
|
let partner = this.mdata.p_list[0];
|
||
|
|
if( partner ){
|
||
|
|
// 动画
|
||
|
|
let sinfo = nx.bridge.partner.parseShowInfo( partner.bid, partner.star, partner.use_skin );
|
||
|
|
if( sinfo ) {
|
||
|
|
|
||
|
|
// 战斗迷你
|
||
|
|
this.nodRole.load( sinfo.sp_model, ( _e ) => {
|
||
|
|
if( !_e ) {
|
||
|
|
this.nodRole.action( "stand2", true );
|
||
|
|
} else {
|
||
|
|
this.nodRole.stop();
|
||
|
|
}
|
||
|
|
} );
|
||
|
|
|
||
|
|
}
|
||
|
|
else {
|
||
|
|
this.nodRole.stop();
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
this.nodRole.stop();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
|
||
|
|
onTouchChallenge: function(){
|
||
|
|
|
||
|
|
let arena = ArenaController.getInstance();
|
||
|
|
let AC = ArenaController.getInstance().getModel();
|
||
|
|
let skip = 0;
|
||
|
|
if( AC ){
|
||
|
|
skip = AC.getSkip();
|
||
|
|
}
|
||
|
|
if( skip == 0 ){
|
||
|
|
HeroController.getInstance().openFormGoFightPanel(true,1,{
|
||
|
|
fight : this.mdata
|
||
|
|
},1);
|
||
|
|
}else{
|
||
|
|
arena.sender20203( this.mdata.rid, this.mdata.srv_id, skip );
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
// AC.sender20203( this.mdata.rid, this.mdata.srv_id );
|
||
|
|
// nx.bridge.closePanel( "WndArenaLoopChallenge" );
|
||
|
|
// const PVP = PVPMod.getInstance();
|
||
|
|
// if( PVP ) {
|
||
|
|
// PVP.openPVPWindow( false );
|
||
|
|
// }
|
||
|
|
},
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
onTouchIcon: function(){
|
||
|
|
|
||
|
|
// let AC = ArenaController.getInstance();
|
||
|
|
// AC.requestLoopChallengeRoleInfo( this.mdata.rid, this.mdata.srv_id );
|
||
|
|
// // nx.bridge.closePanel( "WndArenaLoopChallenge" );
|
||
|
|
// // const PVP = PVPMod.getInstance();
|
||
|
|
// // if( PVP ) {
|
||
|
|
// // PVP.openPVPWindow( false );
|
||
|
|
// // }
|
||
|
|
},
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
} );
|