MakeBRTPXieYi.js 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. var Global = require("Global")
  2. var ProtocolGameServer = require("ProtocolGameServer")
  3. var BRTPGameProtocol = require("BRTPGameProtocol")
  4. cc.Class({
  5. extends: cc.Component,
  6. properties: {
  7. },
  8. statics: {
  9. makeGameData(m, s, data) {
  10. switch (m) {
  11. case ProtocolGameServer.MDM_GF_FRAME: {
  12. return this.makeFrameGameData(s, data);
  13. }
  14. break;
  15. case ProtocolGameServer.MDM_GF_GAME: {
  16. return this.makeGFGameData(s, data);
  17. }
  18. break;
  19. case ProtocolGameServer.MDM_GR_PRIVATE: {
  20. return this.makePrivateGameData(s, data);
  21. }
  22. break;
  23. default:
  24. break;
  25. }
  26. return null;
  27. },
  28. makePrivateGameData(s, data) {
  29. switch (s) {
  30. case ProtocolGameServer.SUB_GR_PRIVATE_DISMISS: {
  31. return this.makePrivateDismiss(data);
  32. }
  33. break;
  34. default:
  35. break;
  36. }
  37. return null;
  38. },
  39. makeFrameGameData(s, data) {
  40. switch (s) {
  41. case ProtocolGameServer.SUB_GR_TABLE_TALK: {
  42. return this.makeTableTalk(data);
  43. }
  44. case ProtocolGameServer.SUB_GR_TABLE_VOICE: {
  45. return this.makeTabelVoice(data);
  46. }
  47. default:
  48. break;
  49. }
  50. return null;
  51. },
  52. makeGFGameData(s, data) {
  53. switch (s) {
  54. case BRTPGameProtocol.SUB_C_PLACE_JETTON: {//用户下注
  55. return this.makeChip(data);
  56. }
  57. break;
  58. case BRTPGameProtocol.SUB_C_APPLY_BANKER: {//用户申请上庄
  59. return this.makeApplyBanker(data);
  60. }
  61. break;
  62. case BRTPGameProtocol.SUB_C_CANCEL_BANKER: {//申请下庄
  63. return this.makeDownBank(data);
  64. }
  65. break;
  66. case BRTPGameProtocol.SUB_C_ONLINE_PLAYER: {//获取在线列表
  67. //return this.makeZhuangList(data);
  68. }
  69. break;
  70. case BRTPGameProtocol.SUB_C_BANK_LIST: {//获取庄家列表
  71. return this.makeZhuangList(data);
  72. }
  73. break;
  74. case BRTPGameProtocol.SUB_C_XUYA: {//用户续押
  75. return this.makeXuya(data);
  76. }
  77. break;
  78. case BRTPGameProtocol.SUB_C_GAME_RECORD_INFO: {//请求游戏记录信息
  79. return this.makeReqGameRecord(data);
  80. }
  81. default:
  82. break;
  83. }
  84. return null;
  85. },
  86. makeTableTalk: function (data) {//SUB_GR_TABLE_TALK
  87. var arrayBuffer = new ArrayBuffer(138 + data.TalkSize + 8);
  88. var dv = new DataView(arrayBuffer);
  89. dv.pos = 8;
  90. Global.SetUint8(dv, data.Type);
  91. Global.SetUint8(dv, data.ChairID);
  92. Global.WriteChar(dv, data.String, 128);
  93. Global.SetUint32(dv, data.TalkSize);
  94. for (let index = 0; index < data.TalkSize; index++) {
  95. // if(index < data.TalkSize) {
  96. // }
  97. // else{
  98. // Global.SetUint8(dv, 0);
  99. // }
  100. Global.SetUint8(dv, data.TalkData[index]);
  101. }
  102. return dv;
  103. },
  104. makeTabelVoice: function (data) {//
  105. var str = Global.ToUTF_8(data.SerVerID, true);
  106. var len = str.length - 2 + 4;
  107. var arrayBuffer = new ArrayBuffer(len + 1 + 8);
  108. var dv = new DataView(arrayBuffer);
  109. dv.pos = 8;
  110. Global.SetUint8(dv, data.ChairID);
  111. Global.WriteString(dv, data.SerVerID);
  112. return dv;
  113. },
  114. makePrivateDismiss: function (data) { //SUB_GR_PRIVATE_DISMISS
  115. var arrayBuffer = new ArrayBuffer(1 + 8);
  116. var dv = new DataView(arrayBuffer);
  117. dv.pos = 8;
  118. Global.SetUint8(dv, data.Dismiss);
  119. return dv;
  120. },
  121. ///////////游戏逻辑
  122. makeChip: function (data) {//下注
  123. var arrayBuffer = new ArrayBuffer(8 + 1 + 8);
  124. var dv = new DataView(arrayBuffer);
  125. dv.pos = 8;
  126. Global.SetUint8(dv, data.dwIndex);
  127. Global.WriteLL(dv, data.lScore);
  128. return dv;
  129. },
  130. makeApplyBanker: function (data) {//申请庄家
  131. var arrayBuffer = new ArrayBuffer(8 + 2);
  132. var dv = new DataView(arrayBuffer);
  133. dv.pos = 8;
  134. Global.SetUint16(dv, data.wApplyUser);
  135. return dv;
  136. },
  137. makeDownBank: function (data) {//取消上庄
  138. var arrayBuffer = new ArrayBuffer(8 + 2);
  139. var dv = new DataView(arrayBuffer);
  140. dv.pos = 8;
  141. Global.SetUint16(dv, data.wCancelUser);
  142. return dv;
  143. },
  144. makeZhuangList: function (data) {//庄家列表
  145. var arrayBuffer = new ArrayBuffer(8);
  146. var dv = new DataView(arrayBuffer);
  147. dv.pos = 8;
  148. return dv;
  149. },
  150. makeXuya:function(data){
  151. var arrayBuffer = new ArrayBuffer(8);
  152. var dv = new DataView(arrayBuffer);
  153. dv.pos = 8;
  154. return dv;
  155. },
  156. makeReqGameRecord: function(data) {
  157. var arrayBuffer = new ArrayBuffer(8);
  158. var dv = new DataView(arrayBuffer);
  159. dv.pos = 8;
  160. return dv;
  161. }
  162. },
  163. start() {
  164. },
  165. });