main.ts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. import { _decorator, Component, director, EventTouch, game, Node, PhysicsSystem, PhysicsSystem2D, Settings, Tween, UITransform, Vec3 } from 'cc';
  2. import { http } from './http';
  3. import { config } from './config';
  4. import { model_item_data, userData, userInfo } from './data';
  5. import { tools } from './tools';
  6. import { SdkUtil } from './sdkUtil';
  7. import { GameManager } from './GameManager';
  8. import { uiManager } from './manager/uiManager';
  9. import { userDataManager } from './manager/userDataManager';
  10. import { imageCacheManager } from './manager/imageCacheManager';
  11. import { home } from './ui/home/home';
  12. const { ccclass, property } = _decorator;
  13. @ccclass('main')
  14. export class main extends Component {
  15. @property(Node) home_node:Node = null;
  16. @property(Node) ui_parent = null;
  17. @property(Node) laoding_view_wait = null;
  18. @property(Node) send_msg_wait = null;
  19. protected start(): void {
  20. // game.frameRate = 60;
  21. // PhysicsSystem2D.instance.fixedTimeStep = 1 / 60;
  22. tools.init(this.node)
  23. this.home_node.removeAllChildren()
  24. this.initData(()=>{
  25. this.getUserCarList(this.initConfig.bind(this))
  26. })
  27. uiManager.Instance().init(this.ui_parent,this.laoding_view_wait,this.send_msg_wait)
  28. }
  29. onAllDataLoadingFinish(){
  30. imageCacheManager.start_cache(this.onAllResLoadingFinish.bind(this))
  31. }
  32. onAllResLoadingFinish(){
  33. uiManager.Instance().showUi(config.UI.home,this.home_node,(node:Node)=>{
  34. node.getComponent(home).init()
  35. this.home_node.active = true
  36. })
  37. }
  38. getUserCarList(cb){
  39. http.post(config.API.user_car_list,"",(err,d)=>{
  40. if(!err){
  41. let nd = JSON.parse(d)
  42. if(nd.code === config.status.SUCCESS){
  43. userDataManager.user_car_list = nd.content
  44. console.log("user_car_list", userDataManager.user_car_list)
  45. if(cb!=null){
  46. cb()
  47. }
  48. }
  49. }
  50. })
  51. }
  52. initConfig(){
  53. let count = 2;
  54. let num = 0;
  55. let call_back = ()=>{
  56. if(num>=count){
  57. this.onAllDataLoadingFinish()
  58. }
  59. }
  60. http.get(config.STATIC_API.levels,(err,d)=>{
  61. if(!err){
  62. let data = JSON.parse(d)
  63. if(data.code===config.status.SUCCESS){
  64. tools.levels = JSON.parse(data.content.levels_info)
  65. tools.tpl_list = data.content.tpl_list
  66. tools.game_config = JSON.parse(data.content.levels_config)
  67. // console.log("tools.levels",tools.levels)
  68. // console.log("tools.tpl_list",tools.tpl_list)
  69. console.log("tools.game_config",tools.game_config)
  70. num++;
  71. call_back()
  72. }
  73. }else{
  74. console.log("initData err",err)
  75. }
  76. })
  77. http.get(config.STATIC_API.car_list,(err,d)=>{
  78. if(!err){
  79. let data = JSON.parse(d)
  80. if(data.code===config.status.SUCCESS){
  81. tools.all_car_list = data.content
  82. console.log("tools.all_car_list",tools.all_car_list)
  83. num++;
  84. call_back()
  85. }
  86. }else{
  87. console.log("all_car_list err",err)
  88. }
  89. })
  90. }
  91. initData(login_finish_cb){
  92. this.Login((openid)=>{
  93. GameManager.openId = openid
  94. SdkUtil.getUserInfo((data:userInfo)=>{
  95. let opt;
  96. if(data!=null){
  97. opt = {"openid":GameManager.openId,"platform":config.Platform.platform,"avatarUrl":data.avatarUrl,"nickName":data.nickName,"region_id":1}
  98. }else{
  99. GameManager.openId = "asd"
  100. opt = {"openid":GameManager.openId,"platform":config.Platform.platform,"region_id":1,"nickName":"大靓仔"}
  101. }
  102. http.post(config.API.login,opt,(err,d)=>{
  103. if(!err){
  104. let nd = JSON.parse(d)
  105. if(nd.code === config.status.SUCCESS){
  106. userDataManager.user_data = nd.content
  107. if(login_finish_cb!=null){
  108. login_finish_cb()
  109. }
  110. }
  111. }
  112. })
  113. })
  114. })
  115. }
  116. Login(call_back){
  117. SdkUtil.login((res)=>{
  118. if(res!=null){
  119. http.post(config.API.get_dyopen_id,res,(err,data)=>{
  120. if(!err){
  121. let d = JSON.parse(data)
  122. if(d.code === config.status.SUCCESS){
  123. call_back(d.content.openid)
  124. }
  125. }
  126. })
  127. }else{
  128. call_back("123")
  129. }
  130. })
  131. }
  132. }