SettingLayer.ts 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import { _decorator,Node, Sprite, SpriteFrame } from 'cc';
  2. import platformSystem from '../platform/platformSystem';
  3. import BasePanel from '../core/component/BasePanel';
  4. import { audioMgr } from '../core/manager/AudioManager';
  5. import Data from '../core/manager/Data';
  6. import { settingData } from '../user/SettingData';
  7. import { GameConst } from '../core/common/GameConst';
  8. const { ccclass, property } = _decorator;
  9. @ccclass('SettingLayer')
  10. export class SettingLayer extends BasePanel {
  11. @property({type:SpriteFrame,tooltip:"选中的勾"})
  12. public gou_seleted: SpriteFrame = null!;
  13. @property({type:SpriteFrame,tooltip:"未选中的勾"})
  14. public not_gou_seleted: SpriteFrame = null!;
  15. @property({type:SpriteFrame,tooltip:"背景开图片"})
  16. public bg_music_open: SpriteFrame = null!;
  17. @property({type:SpriteFrame,tooltip:"背景关图片"})
  18. public bg_music_close: SpriteFrame = null!;
  19. @property({type:Sprite,tooltip:"背景节点精灵"})
  20. public bg_music_sp: Sprite = null!;
  21. @property({type:Sprite,tooltip:"背景勾节点精灵"})
  22. public bg_music_gou: Sprite = null!;
  23. @property({type:SpriteFrame,tooltip:"音效开图片"})
  24. public sound_open: SpriteFrame = null!;
  25. @property({type:SpriteFrame,tooltip:"音效关图片"})
  26. public sound_close: SpriteFrame = null!;
  27. @property({type:Sprite,tooltip:"音效节点精灵"})
  28. public sound_sp: Sprite = null!;
  29. @property({type:Sprite,tooltip:"音效勾节点精灵"})
  30. public sound_gou_sp: Sprite = null!;
  31. start(){
  32. platformSystem.platform.showInterstitialAd();
  33. this.updateUI();
  34. }
  35. updateUI(){
  36. this.bg_music_sp.spriteFrame = settingData.data.bgMusic ? this.bg_music_open : this.bg_music_close;
  37. this.bg_music_gou.spriteFrame = settingData.data.bgMusic ? this.gou_seleted : this.not_gou_seleted;
  38. this.sound_sp.spriteFrame = settingData.data.soundFx ? this.sound_open : this.sound_close;
  39. this.sound_gou_sp.spriteFrame = settingData.data.soundFx ? this.gou_seleted : this.not_gou_seleted;
  40. }
  41. onBtnClicked(event:any, customEventData:any) {
  42. audioMgr.playOneShot(GameConst.audios.btnclick);
  43. var btnName = event.target.name;
  44. switch (btnName) {
  45. case "btn_close":
  46. this.close();
  47. break;
  48. case "gou_sound":
  49. settingData.data.soundFx = !settingData.data.soundFx;
  50. settingData.saveToCache();
  51. Data.user.soundVolume = Data.user.soundVolume == 0 ? 1:0;
  52. this.updateUI();
  53. break;
  54. case "gou_music":
  55. let state: boolean = settingData.data.bgMusic;
  56. settingData.data.bgMusic = !state;
  57. if(state){
  58. audioMgr.stop(GameConst.audios.bg_music);
  59. }else{
  60. audioMgr.play(GameConst.audios.bg_music,true);
  61. }
  62. settingData.saveToCache();
  63. //Data.user.vibration = Data.user.vibration == 0?1:0;
  64. this.updateUI();
  65. break;
  66. }
  67. }
  68. }