LocalStorageMgr.ts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /*============================================================================================================*/
  2. /**
  3. * 用户本地存储模块
  4. */
  5. /*============================================================================================================*/
  6. // import { sys } from 'cc';
  7. // window.xx = window.xx || {};
  8. export class LocalStorageMgr {
  9. /*============================================================================================================*/
  10. /**
  11. */
  12. /*============================================================================================================*/
  13. public InitStorage(storage_file) {
  14. // this._storage_config = require(storage_file);
  15. }
  16. /*============================================================================================================*/
  17. /**
  18. */
  19. /*============================================================================================================*/
  20. public Set(key, value) {
  21. value = JSON.stringify(value);
  22. cc.sys.localStorage.setItem(key, value);
  23. }
  24. /*============================================================================================================*/
  25. /**
  26. */
  27. /*============================================================================================================*/
  28. public Get(key) {
  29. let v = cc.sys.localStorage.getItem(key);
  30. v = JSON.parse(v);
  31. return v;
  32. }
  33. /*============================================================================================================*/
  34. /**
  35. */
  36. /*============================================================================================================*/
  37. public SetNumber(key, value) {
  38. value = JSON.stringify(value);
  39. cc.sys.localStorage.setItem(key, value);
  40. }
  41. /*============================================================================================================*/
  42. /**
  43. * default: null => 0
  44. */
  45. /*============================================================================================================*/
  46. public GetNumber(key) {
  47. let value = cc.sys.localStorage.getItem(key);
  48. value = JSON.parse(value) || 0;
  49. return value;
  50. }
  51. public Remove(key) {
  52. cc.sys.localStorage.removeItem(key)
  53. }
  54. /*============================================================================================================*/
  55. /**
  56. * 保存搜索路径
  57. */
  58. /*============================================================================================================*/
  59. public Clear() {
  60. cc.sys.localStorage.clear();
  61. }
  62. /*============================================================================================================*/
  63. /**
  64. */
  65. /*============================================================================================================*/
  66. public GetMusicVolume() {
  67. let value = this.Get('music_volume');
  68. (value === null) && (value = 1);
  69. return value;
  70. }
  71. public SetMusicVolume(value) {
  72. if (value < 0.03) value = 0;
  73. this.Set('music_volume', value);
  74. }
  75. public GetEffectVolume() {
  76. let value = this.Get('effect_volume');
  77. (value === null) && (value = 1);
  78. return value;
  79. }
  80. public SetEffectVolume(value) {
  81. if (value < 0.03) value = 0;
  82. this.Set('effect_volume', value);
  83. }
  84. }