UI_Life.ts 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { _decorator, Component, Node } from 'cc';
  2. import { Layout_Life } from './Layout_Life';
  3. import ui_base from 'db://assets/core/ui/ui_base';
  4. import { ModuleDef } from 'db://assets/Script/ModuleDef';
  5. import { GameUILayers, gui } from 'db://assets/core/ui/ui';
  6. import ch_audio from 'db://assets/ch/audio/audio';
  7. import { LvData } from '../../game/LvData/LvData';
  8. import { ani_ui } from '../../game/animation_utils';
  9. import { Hall } from '../../hall/Hall';
  10. import { data_type } from '../../game/PlayerData';
  11. import { audioManager } from '../../Audio/AudioManager';
  12. const { ccclass, property } = _decorator;
  13. @ccclass('UI_Life')
  14. export class UI_Life extends ui_base {
  15. life = Hall.getInstance().player.data.get(data_type.life)
  16. constructor() {
  17. super(ModuleDef.GAME, 'ui/UI_Life/lifeDlg', GameUILayers.HUD, Layout_Life);
  18. }
  19. protected onCreated() {
  20. ani_ui(this.node);
  21. const layout = this.getLayout<Layout_Life>();
  22. //获得生命值
  23. this.onButtonEvent(layout.Free_Get_Btn, async () => {
  24. if ( LvData.instance.life >= 5) {
  25. console.log("生命值已满");
  26. return;
  27. }
  28. audioManager.playOneShot('sound/click_Btn')
  29. let res = await chsdk.playRewardAd('获得体力');
  30. if (res) {
  31. LvData.instance.life = LvData.instance.life + 1;
  32. //Hall.getInstance().player.set_life(Hall.getInstance().player.get_life() + 1);
  33. // gui.get(UI_Hall).set_Life(LvData.instance.life);
  34. audioManager.resume();
  35. this.close();
  36. }
  37. })
  38. //关闭生命Dlg
  39. this.onButtonEvent(layout.No_Btn, () => {
  40. gui.close(UI_Life);
  41. })
  42. }
  43. update(deltaTime: number) {
  44. }
  45. }