ModBridgeController.lua 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. local ModBridgeController = class('ModBridgeController', framework.Mediator)
  2. ModBridgeController.NAME = "ModBridgeController"
  3. local cjson = require("cjson")
  4. function ModBridgeController:ctor()
  5. ModBridgeController.super.ctor(self, self.NAME)
  6. self._uploadData = {}
  7. end
  8. function ModBridgeController:GN_selectGameMod(data)
  9. end
  10. function ModBridgeController:GN_onSelectServer(data)
  11. if global.isDebugMode then
  12. return nil
  13. end
  14. if not data then
  15. return nil
  16. end
  17. self._uploadData.user_id = data.userId
  18. self._uploadData.server_id = data.zoneId
  19. self._uploadData.server_name = data.zoneName
  20. local AuthProxy = global.Facade:retrieveProxy(global.ProxyTable.AuthProxy)
  21. AuthProxy:uploadData(1, self._uploadData)
  22. end
  23. function ModBridgeController:GN_onNewRole(data)
  24. if global.isDebugMode then
  25. return nil
  26. end
  27. if not data then
  28. return nil
  29. end
  30. self._uploadData.server_id = data.zoneId
  31. self._uploadData.server_name = data.zoneName
  32. self._uploadData.role_id = data.roleId
  33. self._uploadData.role_name = data.roleName
  34. self._uploadData.role_level = data.roleLevel
  35. self._uploadData.role_create_time = data.roleCTime
  36. self._uploadData.rein_level = data.reinLevel
  37. local AuthProxy = global.Facade:retrieveProxy(global.ProxyTable.AuthProxy)
  38. if AuthProxy:IsQQChannel() then
  39. AuthProxy:uploadDataQQGame(2,self._uploadData)
  40. AuthProxy:uploadDataQQGame(6,self._uploadData)
  41. else
  42. AuthProxy:uploadData(2, self._uploadData)
  43. AuthProxy:uploadBoxData(2, self._uploadData)
  44. end
  45. end
  46. function ModBridgeController:GN_onEnterGame(data)
  47. if global.isDebugMode then
  48. return nil
  49. end
  50. if not data then
  51. return nil
  52. end
  53. self._uploadData.server_id = data.zoneId
  54. self._uploadData.server_name = data.zoneName
  55. self._uploadData.role_id = data.roleId
  56. self._uploadData.role_name = data.roleName
  57. self._uploadData.role_level = data.roleLevel
  58. self._uploadData.role_create_time = data.roleCTime
  59. self._uploadData.role_career = data.roleCareer
  60. self._uploadData.role_sex = data.roleSex
  61. self._uploadData.rein_level = data.reinLevel
  62. local AuthProxy = global.Facade:retrieveProxy(global.ProxyTable.AuthProxy)
  63. if AuthProxy:IsQQChannel() then
  64. AuthProxy:uploadDataQQGame(3,self._uploadData)
  65. else
  66. AuthProxy:uploadData(3, self._uploadData)
  67. end
  68. end
  69. function ModBridgeController:GN_onLevelChanged(data)
  70. if global.isDebugMode then
  71. return nil
  72. end
  73. if not data then
  74. return nil
  75. end
  76. self._uploadData.role_level = data.roleLevel
  77. self._uploadData.rein_level = data.reinLevel
  78. local AuthProxy = global.Facade:retrieveProxy(global.ProxyTable.AuthProxy)
  79. AuthProxy:uploadData(4, self._uploadData)
  80. end
  81. function ModBridgeController:GN_onQuestIDChanged(data)
  82. end
  83. function ModBridgeController:GN_buyItemWithYB(data)
  84. end
  85. function ModBridgeController:GN_kefu()
  86. local platform = cc.Application:getInstance():getTargetPlatform()
  87. if platform == cc.PLATFORM_OS_ANDROID or global.isOHOS then
  88. local propertyProxy = global.Facade:retrieveProxy( global.ProxyTable.PlayerProperty )
  89. local loginProxy = global.Facade:retrieveProxy( global.ProxyTable.Login )
  90. local AuthProxy = global.Facade:retrieveProxy( global.ProxyTable.AuthProxy )
  91. local jData = {}
  92. jData.userId = tostring( AuthProxy:GetUID() )
  93. jData.serverId = loginProxy:GetSelectedServerId()
  94. jData.roleId = global.playerManager:GetMainPlayerID()
  95. jData.roleName = loginProxy:GetSelectedRoleName()
  96. local jsonString = jData and cjson.encode(jData) or ""
  97. local methodName = "GN_kefu"
  98. NativeBridgeCtl:Inst():sendMessage2Native(methodName, jsonString)
  99. end
  100. end
  101. return ModBridgeController