GameManager.ts 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. import { _decorator, Component, Node, SpriteFrame, sys } from 'cc';
  2. import { config } from './config';
  3. import { settingData } from './data';
  4. import { http } from './http';
  5. import { imageCacheManager } from './manager/imageCacheManager';
  6. import { userDataManager } from './manager/userDataManager';
  7. import { SdkUtil } from './sdkUtil';
  8. import { uiManager } from './manager/uiManager';
  9. const { ccclass, property } = _decorator;
  10. @ccclass('GameManager')
  11. export class GameManager extends Component {
  12. public static openId:string = 'asd'
  13. public static settingData:settingData = null
  14. public static getUserDefaultHomeCarSf():SpriteFrame {
  15. let sf = imageCacheManager.getHomeCarImageById(userDataManager.user_car_list.default_car_id)
  16. return sf
  17. }
  18. public static getUserDefaultRankCarSf():SpriteFrame {
  19. let sf = imageCacheManager.getRankCarImageById(userDataManager.user_car_list.default_car_id)
  20. return sf
  21. }
  22. // 设置
  23. public static getSettingData():settingData {
  24. if(GameManager.settingData!=null) {
  25. return GameManager.settingData
  26. }
  27. let str = sys.localStorage.getItem(config.SETTING_DATA)
  28. if(str==undefined||str==""||str==null){
  29. GameManager.settingData = new settingData
  30. } else {
  31. let data:settingData = JSON.parse(str)
  32. GameManager.settingData = data
  33. }
  34. return GameManager.settingData;
  35. }
  36. public static saveSettingData(data:settingData) {
  37. sys.localStorage.setItem(config.SETTING_DATA, JSON.stringify(data));
  38. }
  39. public static vibrateShort() {
  40. if(GameManager.settingData.isOpenZhendong) {
  41. SdkUtil.vibrateShort()
  42. }
  43. }
  44. //请求广播
  45. public static requestGuangbo(cb=null) {
  46. http.get(config.STATIC_API.msg, (err,d)=>{
  47. if(!err){
  48. let nd = JSON.parse(d)
  49. if(nd.code === config.status.SUCCESS){
  50. // console.log("system_msg", nd.content)
  51. if(cb!=null){
  52. cb(nd.content)
  53. }
  54. }
  55. }
  56. })
  57. }
  58. //请求用户车列表
  59. public static requestUserCarList(cb=null) {
  60. http.post(config.API.user_car_list,null,(err,d)=>{
  61. if(!err){
  62. let nd = JSON.parse(d)
  63. if(nd.code === config.status.SUCCESS){
  64. // console.log("user_car_list", nd.content)
  65. if(cb!=null){
  66. cb(nd.content)
  67. }
  68. }
  69. }
  70. },'GET')
  71. }
  72. // 请求用户注册/设置地区 stype 1:注册 2:重新设置
  73. public static requestUserSetRegion(region_id:number,stype:number,cb) {
  74. let opt = {'region_id':region_id, 'stype':stype}
  75. http.post(config.API.user_set_region, opt, (err,d)=>{
  76. let nd = JSON.parse(d)
  77. if(nd.code === config.status.SUCCESS){
  78. if(cb!=null){
  79. cb(nd.content)
  80. }
  81. }
  82. })
  83. }
  84. // 请求我的排行 stype 0:全国 1:省 2:市
  85. public static requestMineRank(stype:number, cb) {
  86. let opt = {'stype': stype}
  87. http.post(config.API.user_ranking, opt, (err,d)=>{
  88. if(!err){
  89. let data = JSON.parse(d)
  90. if(data.code===config.status.SUCCESS){
  91. if(cb!=null) {
  92. cb(data.content)
  93. }
  94. }
  95. } else{
  96. console.log("user rank Data err",err)
  97. }
  98. })
  99. }
  100. // 请求排行列表
  101. public static requestRankList(region_id:number, cb) {
  102. http.get(config.STATIC_API.rankings(region_id),(err,d)=>{
  103. if(!err){
  104. let data = JSON.parse(d)
  105. if(data.code===config.status.SUCCESS){
  106. // console.log('data=',data.content)
  107. if(cb!=null) {
  108. cb(data.content)
  109. }
  110. }
  111. } else{
  112. console.log("rankList err",err)
  113. }
  114. })
  115. }
  116. // 请求tt侧边栏用户奖励
  117. public static requestTTSidebarUserReward(status=config.USER_TT_SIDEBAR_REWARD.GET, success_cb, fail_cb=null) {
  118. if(sys.platform != sys.Platform.BYTEDANCE_MINI_GAME) {
  119. success_cb(null)
  120. return
  121. }
  122. if(status != config.USER_TT_SIDEBAR_REWARD.GET) {
  123. uiManager.Instance().showLoading()
  124. }
  125. http.post(config.API.unlock_number_status,{'stype':status}, (err,data)=>{
  126. if(status!= config.USER_TT_SIDEBAR_REWARD.GET) {
  127. uiManager.Instance().hideLoading()
  128. }
  129. if(!err) {
  130. let _data = JSON.parse(data)
  131. if(_data.code==config.status.SUCCESS) {
  132. if(success_cb) {
  133. success_cb(_data.content)
  134. }
  135. } else {
  136. if(fail_cb) {
  137. fail_cb()
  138. }
  139. }
  140. } else {
  141. if(fail_cb) {
  142. fail_cb()
  143. }
  144. }
  145. })
  146. }
  147. }