RankingPlayerItem.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { _decorator, Component, Node, Sprite } from "cc";
  2. import BaseUI from "../base/BaseUI";
  3. import { AB } from "../base/AB";
  4. const { ccclass, property } = _decorator;
  5. @ccclass("RankingPlayerItem")
  6. export class RankingPlayerItem extends BaseUI {
  7. init(data: { rank: number; name: string; score: number }) {
  8. this.setText("lbl_rank", data.rank.toString());
  9. this.setText("lbl_player_name", "" + data.name);
  10. this.setText("lbl_score", "" + data.score);
  11. let bgPath = "textures/ranking/bg_";
  12. if (data.rank >= 4) {
  13. bgPath += 4;
  14. } else {
  15. bgPath += data.rank;
  16. }
  17. AB.inst.setBundleBallImage(bgPath, this.node.getComponent(Sprite));
  18. let rank_icon_path = "textures/ranking/i_";
  19. let rank_icon = this.FindAs("icon_rank", Sprite);
  20. if (data.rank > 3) {
  21. rank_icon.node.active = false;
  22. } else {
  23. rank_icon.node.active = true;
  24. rank_icon_path += data.rank;
  25. AB.inst.setBundleBallImage(rank_icon_path, rank_icon);
  26. }
  27. let bg_avatar = this.FindAs("bg_avatar", Sprite);
  28. let bg_avatar_path = "textures/ranking/a_";
  29. if (data.rank > 3) {
  30. bg_avatar.node.active = false;
  31. } else {
  32. bg_avatar.node.active = true;
  33. bg_avatar_path += data.rank;
  34. AB.inst.setBundleBallImage(bg_avatar_path, bg_avatar);
  35. }
  36. }
  37. }