GamePause.ts 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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. import PopManger, { GameOver } from "./PopManger";
  11. const { ccclass, property } = cc._decorator;
  12. @ccclass
  13. export default class GamePause extends PopComponet {
  14. @property(cc.SpriteFrame)
  15. Open: cc.SpriteFrame = null
  16. @property(cc.SpriteFrame)
  17. Close: cc.SpriteFrame = null
  18. @property(cc.Node)
  19. Music: cc.Node = null
  20. @property(cc.Node)
  21. Effects: cc.Node = null
  22. @property(cc.Node)
  23. Shake: cc.Node = null
  24. static GamePause = false
  25. onEnable(): void {
  26. this.initBtn()
  27. GamePause.GamePause = true
  28. }
  29. ClickMusic() {
  30. //音乐
  31. LocalData.getInstance().setMusic(!LocalData.getInstance().getMusic())
  32. this.initBtn()
  33. }
  34. ClickSoundEffects() {
  35. //音效
  36. LocalData.getInstance().setEffects(!LocalData.getInstance().getEffects())
  37. this.initBtn()
  38. }
  39. ClickShake() {
  40. //震动
  41. LocalData.getInstance().setVibrate(!LocalData.getInstance().getVibrate())
  42. this.initBtn()
  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. onDisable(): void {
  51. GamePause.GamePause = false
  52. }
  53. //继续游戏
  54. GameContinue() {
  55. this.Surpclose()
  56. }
  57. //放弃认输
  58. GiveUp() {
  59. this.Surpclose()
  60. cc.director.loadScene("Start")
  61. //发送服务器游戏成功or 失败
  62. PopManger.getInstance().GameOver(GameOver.fail)
  63. }
  64. }