Hall.ts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. import AudioManager from "./AudioManager";
  2. import Character from "./Character/Character";
  3. import LoadManager from "./LoadManager";
  4. import LocalData from "./LocalData";
  5. import { ButtonLock } from "./Template/MyComponent";
  6. const { ccclass, property } = cc._decorator;
  7. @ccclass
  8. export default class Hall extends cc.Component {
  9. //最高纪录
  10. @property(cc.Label)
  11. MaxRecordLabel: cc.Label = null;
  12. // //金币
  13. // @property(cc.Label)
  14. // GoldLabel: cc.Label = null;
  15. @property(cc.Node)
  16. UIParentNode: cc.Node = null;
  17. start() {
  18. this.init()
  19. AudioManager.instance.playHallBg()
  20. if (cc.sys.platform == cc.sys.WECHAT_GAME) {
  21. let Editer = this.node.getChildByName("UI").getChildByName("Editer")
  22. Editer.active = false
  23. }
  24. }
  25. init() {
  26. // LocalData.getInstance().setGold(99, '+')
  27. // LocalData.getInstance().setMaxRecord(99, '=')
  28. // this.GoldLabel.string = LocalData.getInstance().getGold().toString()
  29. this.initHight()
  30. this.initRole()
  31. }
  32. initHight() {
  33. this.MaxRecordLabel.string = LocalData.getInstance().getMaxRecord().toString();
  34. }
  35. initRole() {
  36. (async () => {
  37. let role = this.node.getChildByName("UI").getChildByName("Platform")
  38. let BeforeNode = role.getChildByName('BeforeNode')
  39. if (BeforeNode) {
  40. BeforeNode.destroy()
  41. }
  42. let RoleSkin = LocalData.getInstance().getCurrentCharacterSkin();
  43. let Prefab = await LoadManager.instance.LoadAssets<cc.Prefab>('res/Role/Role' + RoleSkin);
  44. if (cc.isValid(Prefab)) {
  45. let PrefabNode = cc.instantiate(Prefab)
  46. PrefabNode.removeComponent(Character)
  47. role.addChild(PrefabNode)
  48. PrefabNode.setScale(0.7)
  49. PrefabNode.setPosition(0, -73)
  50. PrefabNode.removeComponent(cc.RigidBody)
  51. PrefabNode.name = 'BeforeNode'
  52. let bundle = cc.assetManager.getBundle("sub");
  53. bundle.load("res/json/Skin", cc.JsonAsset, (error: Error, resource: cc.JsonAsset) => {
  54. if (error) {
  55. console.log(error.name);
  56. console.log(error.message);
  57. return;
  58. }
  59. let jsonData = resource.json;
  60. let element = jsonData.CharacterSkin[RoleSkin - 1];
  61. let label = this.node.getChildByName("UI").getChildByName("Platform").getChildByName("role").getChildByName("frame").getChildByName("label")
  62. label.getComponent(cc.Label).string = element.name
  63. });
  64. }
  65. })();
  66. }
  67. @ButtonLock(1, null)
  68. ClickSet() {
  69. cc.log('ClickSet');
  70. (async () => {
  71. const url = "res/Pop/Set"
  72. let Prefab = await LoadManager.instance.LoadAssets<cc.Prefab>(url);
  73. if (cc.isValid(Prefab)) {
  74. let a = cc.instantiate(Prefab);
  75. // a.setPosition(0,0)
  76. this.UIParentNode.addChild(a)
  77. this.scheduleOnce(() => { a.setPosition(cc.v2(0, 0)) }, 0)
  78. }
  79. })();
  80. }
  81. @ButtonLock(1, null)
  82. ClickFuLi() {
  83. cc.log('ClickFuLi');
  84. }
  85. @ButtonLock(1, null)
  86. ClickMeiRiJiangLi() {
  87. return
  88. cc.log('ClickMeiRiJiangLi');
  89. (async () => {
  90. const url = "res/Pop/Sign"
  91. let Prefab = await LoadManager.instance.LoadAssets<cc.Prefab>(url);
  92. if (cc.isValid(Prefab)) {
  93. let a = cc.instantiate(Prefab);
  94. this.UIParentNode.addChild(a)
  95. this.scheduleOnce(() => { a.setPosition(cc.v2(0, 0)) }, 0)
  96. }
  97. })();
  98. }
  99. @ButtonLock(1, null)
  100. ClickRank() {
  101. cc.log('ClickRank');
  102. }
  103. @ButtonLock(1, null)
  104. ClickShop() {
  105. cc.log('ClickShop');
  106. (async () => {
  107. const url = "res/Pop/Shop"
  108. let Prefab = await LoadManager.instance.LoadAssets<cc.Prefab>(url);
  109. if (cc.isValid(Prefab)) {
  110. let a = cc.instantiate(Prefab);
  111. this.UIParentNode.addChild(a)
  112. this.scheduleOnce(() => { a.setPosition(cc.v2(0, 0)) }, 0)
  113. }
  114. })();
  115. }
  116. @ButtonLock(1, null)
  117. ClickStart() {
  118. cc.log('ClickStart');
  119. cc.director.loadScene("Game")
  120. }
  121. @ButtonLock(1, null)
  122. ClickBjq() {
  123. cc.log('ClickGold');
  124. cc.director.loadScene("Editer")
  125. }
  126. }