Top.ts 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { _decorator, Button, Component, Label, Node, ProgressBar } from 'cc';
  2. import { ModulerBase } from '../../GameFrameWork/ModulerBase';
  3. import { GameInfo } from '../../../GameInfo';
  4. import { UIMgr } from '../../../Frames/UIManager';
  5. import { UIType } from '../../GameFrameWork/UIBase';
  6. const { ccclass, property } = _decorator;
  7. @ccclass('Top')
  8. export class Top extends ModulerBase {
  9. //我方防御塔血条
  10. private _myHp: Label = null;
  11. private _myCurHp: number = null;
  12. private _myTotalHp: number = null;
  13. private _myProgressBar: ProgressBar = null;
  14. //敌方防御塔血条
  15. private _enemyHp: Label = null;
  16. private _enemyCurHp: number = null;
  17. //敌人防御塔总血量通过数据表获取
  18. enemyTotalHp: number = null;
  19. private _enemyProgressBar: ProgressBar = null;
  20. //pause按钮
  21. private _btnPuase: Node = null;
  22. protected onLoad(): void {
  23. this._myHp = this.node.getChildByPath("BloodLeft/Label").getComponent(Label);
  24. this._myTotalHp = GameInfo.Instance.getMyTowerHp();
  25. this._myProgressBar = this.node.getChildByName("BloodLeft").getComponent(ProgressBar);
  26. this._enemyHp = this.node.getChildByPath("BloodRight/Label").getComponent(Label);
  27. this._enemyProgressBar = this.node.getChildByName("BloodRight").getComponent(ProgressBar);
  28. this._btnPuase = this.node.getChildByName("Button");
  29. }
  30. init() {
  31. this._myCurHp = this._myTotalHp;
  32. this._myHp.string = `${this._myCurHp}/${this._myTotalHp}`;
  33. this._myProgressBar.progress = this._myCurHp/this._myTotalHp;
  34. this._enemyCurHp = this.enemyTotalHp;
  35. this._enemyHp.string = `${this._enemyCurHp}/${this.enemyTotalHp}`;
  36. this._enemyProgressBar.progress = this._enemyCurHp/this.enemyTotalHp;
  37. this._btnPuase.getComponent(Button).node.on(Button.EventType.CLICK,this._onBtnPause,this)
  38. }
  39. updataMyHp(hp: number){
  40. this._myCurHp = hp;
  41. this._myHp.string = `${this._myCurHp}/${this._myTotalHp}`;
  42. this._myProgressBar.progress = this._myCurHp/this._myTotalHp;
  43. }
  44. updataEnemyHp(hp: number){
  45. this._enemyCurHp = hp;
  46. this._enemyHp.string = `${this._enemyCurHp}/${this.enemyTotalHp}`;
  47. this._enemyProgressBar.progress = this._enemyCurHp/this.enemyTotalHp;
  48. }
  49. private _onBtnPause(){
  50. UIMgr.openUI("Pause",UIType.PAGE);
  51. }
  52. }