Files
fc/dev/project/library/imports/4a/4af8cc79-e5d0-4551-a55d-e7b31643a2cc.js
2026-05-24 10:21:26 +08:00

150 lines
4.3 KiB
JavaScript

"use strict";
cc._RF.push(module, '4af8cx55dBFUaVd57MWQ6LM', 'cmp.rank.item');
// Scripts/mod/rank/cmps/cmp.rank.item.js
"use strict";
var RankController = require("rank_controller");
var RankConstant = require("../rank_constant");
/***
* 排行主界面每个界面ui数据显示
* */
cc.Class({
"extends": cc.Component,
properties: {
nodBg: {
"default": null,
type: cc.Sprite
},
// 类型 以及相关描述
ranktitle: {
"default": null,
type: cc.Node
},
rankDesc: {
"default": null,
type: cc.Node
},
nodGuild: {
"default": null,
type: cc.Node
},
rankIcon: {
"default": null,
type: cc.Node
},
firstName: {
"default": null,
type: cc.Node
},
//公会信息
ghName: {
"default": null,
type: cc.Node
},
informBtn: {
"default": null,
type: cc.Button
},
fabHead: {
"default": null,
type: cc.Prefab
}
},
// 刷新基本信息
freshBase: function freshBase(_data) {
if (!_data) {
return;
}
/****
*
* {"type":4,"name":"十三水22","rid":4,"srv_id":"fx_1",
* "guild_name":"溜溜联盟","face_id":24302,"avatar_bid":1000,"val1":96501,"val2":2,"val3":1500,"face_update_time":0,"face_file":""}
* {"type":2,"name":"Kyofenor","rid":395,"srv_id":"fx_1",
* "guild_name":"","face_id":24406,"avatar_bid":1000,"val1":20010,"val2":0,"val3":0,"face_update_time":0,"face_file":""}
*/
var info = _data;
// if (!_data) {
// return;
// }
this.type = info.type;
var bg = null;
// 不同排行榜背景板切换
bg = cc.path.join("prefab/rank/ui", "rank_" + info.type);
nx.gui.setSpriteFrame(this.nodBg, "", bg);
var path = "";
switch (this.type) {
case RankConstant.RankType.drama:
path = "prefab/rank/ui/rank_31";
break;
case RankConstant.RankType.tower:
path = "prefab/rank/ui/rank_31";
break;
case RankConstant.RankType.power:
path = "prefab/rank/ui/rank_30";
nx.gui.setString(this.rankDesc, "type", nx.text.getKey("RankPowerArri"));
break;
case RankConstant.RankType.arena:
path = "prefab/rank/ui/rank_30";
nx.gui.setString(this.rankDesc, "type", nx.text.getKey("RankCupArri"));
path = "prefab/rank/ui/rank_29";
break;
case RankConstant.RankType.union:
nx.gui.setString(this.nodGuild, "name", info.guild_name);
break;
}
// ui显示相关
nx.gui.setSpriteFrame(this.rankDesc, "ticon", path);
nx.gui.setString(this.ranktitle, "", nx.text.getKey("lab_rank_name_" + this.type));
nx.gui.setActive(this.rankDesc, "", this.type != RankConstant.RankType.union);
nx.gui.setActive(this.nodGuild, "", this.type == RankConstant.RankType.union);
nx.gui.setString(this.firstName, "", nx.dt.strEmpty(info.name) ? nx.text.getKey("NoRankInfo") : info.name);
nx.gui.setString(this.ghName, "", nx.dt.strEmpty(info.guild_name) ? nx.text.getKey("NoUnion") : info.guild_name);
// 头名 头像相关
if (info.avatar_bid > 0) {
if (this.rankIcon) {
var node = cc.instantiate(this.fabHead);
node.parent = this.rankIcon;
this.cmpHead = node.getComponent("cmp.common.header");
}
var cfg = game.configs.avatar_data.data_avatar[info.avatar_bid];
var frame = cfg ? cfg.base_id : 0;
// 更新
this.cmpHead.setHeadRes(info.face_id);
this.cmpHead.setFrameRes(frame);
}
// 设置各个排行榜到达信息
var desc = "";
if (this.type == RankConstant.RankType.drama) {
var infos = gdata("dungeon_data", "data_drama_dungeon_info", [info.val1 || 0]);
if (infos) {
desc = infos.name;
} else {
desc = nx.text.getKey("RankNoDrama");
}
} else {
if (this.type == RankConstant.RankType.tower) {
desc = nx.text.format("RankArriInfo", info.val1);
} else {
desc = info.val1;
}
}
nx.gui.setString(this.rankDesc, "itemdesc", desc);
},
detailInform: function detailInform() {
var model = RankController.getInstance();
var lst = model.getFirstRankList();
if (!lst) {
return;
}
// console.log("当前的类型" + this.type + "curter" + lst.is_cluster);
model.openRankDetail(this.type, 0, lst.is_cluster);
}
});
cc._RF.pop();