TalentDetaile.ts 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. // Learn TypeScript:
  2. // - https://docs.cocos.com/creator/manual/en/scripting/typescript.html
  3. // Learn Attribute:
  4. // - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
  5. // Learn life-cycle callbacks:
  6. // - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html
  7. import { MateData } from "../datas/MateData";
  8. import GameM from "../manager/GameM";
  9. import TalentInfoItem from "./TalentInfoItem";
  10. const { ccclass, property } = cc._decorator;
  11. @ccclass
  12. export default class TalentDetaile extends cc.Component {
  13. @property(cc.Node)
  14. windowNode: cc.Node = null;
  15. @property(cc.Node)
  16. itemNode: cc.Node = null;
  17. //@property(cc.Sprite)
  18. //talentImg: cc.Sprite = null;
  19. //
  20. //@property(cc.Label)
  21. //talentName: cc.Label = null;
  22. //
  23. //@property(cc.Label)
  24. //mateName: cc.Label = null;
  25. //
  26. //@property(cc.RichText)
  27. //talentDes: cc.RichText = null;
  28. DisplayTalentDetaile() {
  29. this.node.active=true;
  30. this.windowNode.removeAllChildren();
  31. let data1 = MateData.Ins.mate1talentData;
  32. for (let i = 0; i < data1.length; i++) {
  33. if (data1[i].isUnlock) {
  34. this.InitDetaile(1, data1[i].id);
  35. }
  36. }
  37. let data2 = MateData.Ins.mate2talentData;
  38. for (let i = 0; i < data2.length; i++) {
  39. if (data2[i].isUnlock) {
  40. this.InitDetaile(2, data2[i].id);
  41. }
  42. }
  43. let data3 = MateData.Ins.mate3talentData;
  44. for (let i = 0; i < data3.length; i++) {
  45. if (data3[i].isUnlock) {
  46. this.InitDetaile(3, data3[i].id);
  47. }
  48. }
  49. let data4 = MateData.Ins.mate4talentData;
  50. for (let i = 0; i < data4.length; i++) {
  51. if (data4[i].isUnlock) {
  52. this.InitDetaile(4, data4[i].id);
  53. }
  54. }
  55. let data5 = MateData.Ins.mate5talentData;
  56. for (let i = 0; i < data5.length; i++) {
  57. if (data5[i].isUnlock) {
  58. this.InitDetaile(5, data5[i].id);
  59. }
  60. }
  61. }
  62. InitDetaile(mateid: number, talentid: number) {
  63. let copy = cc.instantiate(this.itemNode);
  64. copy.active = true;
  65. this.windowNode.addChild(copy);
  66. copy.getComponent(TalentInfoItem).Init(mateid, talentid);
  67. }
  68. /**
  69. * 显示天赋详情
  70. * @param mateid 伙伴id
  71. * @param talentid 天赋id
  72. */
  73. DisplayTalentDetaile1(mateid: number, talentid: number, pos: cc.Vec2) {
  74. //this.windowNode.setPosition(pos);
  75. //
  76. //let cfg = GameM.commonData.mateTalentCfg[mateid - 1];
  77. //let des = cfg.talents[talentid - 1].des;
  78. //let coins = cfg.talents[talentid - 1].uplevel_coin;
  79. //let eft = cfg.talents[talentid - 1].uplevel_effect;
  80. //let efttype = cfg.talents[talentid - 1].effect_type;
  81. //let talentlv = MateData.Ins.GetMateTalent(mateid, talentid).lv;
  82. //
  83. //cc.loader.loadRes("xiyou/talent/" + mateid + "-" + talentid, cc.SpriteFrame, (err, res) => {
  84. // if (err) {
  85. // return;
  86. // }
  87. // this.talentImg.spriteFrame = res;
  88. //});
  89. //this.talentName.string = cfg.talents[talentid - 1].name;
  90. //this.mateName.string = cfg.mate_name;
  91. //
  92. //let desStr = "<outline color=black width=2>";
  93. //for (let i = 0; i < des.length; i++) {
  94. // if (des[i] == "now_value") {
  95. // desStr += eft[talentlv - 1] + (efttype == 1 ? "" : "%") + "</outline><outline color=red width=2>"
  96. // } else if (des[i] == "next_value") {
  97. // if (talentlv < coins.length)
  98. // desStr += "</outline><color=#00FF00>(↑" + eft[talentlv] + (efttype == 1 ? "" : "%") + ")</color>";
  99. // } else {
  100. // desStr += des[i];
  101. // }
  102. //}
  103. //this.talentDes.string = desStr;
  104. //
  105. //this.node.active = true;
  106. }
  107. Click_CloseBtn() {
  108. this.node.active = false;
  109. }
  110. }