Seting.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. // Learn TypeScript:
  2. // - https://docs.cocos.com/creator/2.4/manual/en/scripting/typescript.html
  3. // Learn Attribute:
  4. // - https://docs.cocos.com/creator/2.4/manual/en/scripting/reference/attributes.html
  5. // Learn life-cycle callbacks:
  6. // - https://docs.cocos.com/creator/2.4/manual/en/scripting/life-cycle-callbacks.html
  7. import LocalData from "../Template/LocalData";
  8. import PopComponet from "../Template/PopComponet";
  9. import AudioManager from "./AudioManager";
  10. const { ccclass, property } = cc._decorator;
  11. @ccclass
  12. export default class Seting extends PopComponet {
  13. @property(cc.SpriteFrame)
  14. Open: cc.SpriteFrame = null
  15. @property(cc.SpriteFrame)
  16. Close: cc.SpriteFrame = null
  17. @property(cc.Node)
  18. Music: cc.Node = null
  19. @property(cc.Node)
  20. Effects: cc.Node = null
  21. @property(cc.Node)
  22. Shake: cc.Node = null
  23. onEnable(): void {
  24. this.initBtn()
  25. }
  26. ClickMusic() {
  27. //音乐
  28. LocalData.getInstance().setMusic(!LocalData.getInstance().getMusic())
  29. this.initBtn()
  30. }
  31. ClickSoundEffects() {
  32. //音效
  33. LocalData.getInstance().setEffects(!LocalData.getInstance().getEffects())
  34. this.initBtn()
  35. }
  36. ClickShake() {
  37. //震动
  38. LocalData.getInstance().setVibrate(!LocalData.getInstance().getVibrate())
  39. this.initBtn()
  40. }
  41. problemBtn() {
  42. console.log('问题反馈');
  43. }
  44. initBtn() {
  45. this.Music.getComponent(cc.Sprite).spriteFrame = LocalData.getInstance().getMusic() ? this.Open : this.Close
  46. this.Effects.getComponent(cc.Sprite).spriteFrame = LocalData.getInstance().getEffects() ? this.Open : this.Close
  47. this.Shake.getComponent(cc.Sprite).spriteFrame = LocalData.getInstance().getVibrate() ? this.Open : this.Close
  48. AudioManager.instance.UpdateVolume()
  49. }
  50. }