Files

160 lines
4.9 KiB
JavaScript
Raw Permalink Normal View History

2026-05-24 10:21:26 +08:00
"use strict";
cc._RF.push(module, '27cf9eZec5JVpU47UsIuLa+', 'cmp.arena.loopc.item');
// Scripts/mod/pvp/arena/cmp/cmp.arena.loopc.item.js
"use strict";
var NxSpine = require("nx.fx.spine");
var ItemBase = require("cmp.item.base");
var SVCItem = require("nx.fx.sv.expand.item");
var TipsController = require("tips_controller");
var BackPackConst = require("backpack_const");
var Header = require("cmp.common.header");
var BIT = BackPackConst.item_type;
var ArenaController = require("arena_controller");
var PVPMod = require("pvp.mod");
var 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 rebind(_idx, _data, _key) {
this._super(_idx, _data, _key);
// 刷新
this.setData(_data);
},
// 重置
setData: function setData(_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 freshAll() {
this.freshHeader();
this.freshDesc();
this.freshOp();
this.freshPartnerRole();
},
freshHeader: function freshHeader() {
var cfg = game.configs.item_data.data_unit6[this.mdata.face];
var avatarc = 0;
if (!cfg) {
avatarc = 29982;
}
var avtar = {
face: avatarc != 0 ? avatarc : this.mdata.face,
avatar: 1000
};
this.nodHead.setData(avtar);
},
freshDesc: function freshDesc() {
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 freshOp() {
var model = ArenaController.getInstance().getModel();
var self_data = model.getMyLoopData();
var ffg = game.configs.arena_data.data_const.combat_num;
var cfg = game.configs.arena_data.data_const;
var free = self_data.can_combat_num <= ffg.val && self_data.can_combat_num > 0;
var 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 freshPartnerRole() {
var _this = this;
var partner = this.mdata.p_list[0];
if (partner) {
// 动画
var sinfo = nx.bridge.partner.parseShowInfo(partner.bid, partner.star, partner.use_skin);
if (sinfo) {
// 战斗迷你
this.nodRole.load(sinfo.sp_model, function (_e) {
if (!_e) {
_this.nodRole.action("stand2", true);
} else {
_this.nodRole.stop();
}
});
} else {
this.nodRole.stop();
}
} else {
this.nodRole.stop();
}
},
onTouchChallenge: function onTouchChallenge() {
var arena = ArenaController.getInstance();
var AC = ArenaController.getInstance().getModel();
var 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 onTouchIcon() {
// 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 );
// // }
}
});
cc._RF.pop();