Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

145 řádky
4.2 KiB

  1. local MJDefine=MJFramework.MJImport("mj.luaScript.MJDefine")
  2. -- 单局战绩单元Layout
  3. local MJZhanJiDanJuItem = class("MJZhanJiDanJuItem", cc.UIView)
  4. -- require("SanRenXingDef")
  5. --[[
  6. jushu:局数
  7. curJuShuData:每一个小局数据
  8. totalRoomJuShuData:该房间所有的局数数据
  9. ]]
  10. function MJZhanJiDanJuItem:ctor(jushu,curJuShuData,zhanjiInfo,fromClub)
  11. self.ui = loadUI("mj/res/ui/ui_zhanji/mj_dt_danju_zhanji_tiao.ui")
  12. self.curJuShuData = curJuShuData
  13. self.jushu = jushu
  14. self.zhanjiInfo = zhanjiInfo
  15. self.fromClub=fromClub
  16. if self.fromClub then
  17. self.protocolZhanJi = app.club_zhanji
  18. else
  19. self.protocolZhanJi = app:getProtocolZhanJi(app.gameId)
  20. end
  21. self:init()
  22. print(table.tostring(zhanjiInfo))
  23. --self:bindEvent(self.protocolZhanJi , "getZhanJiDetailResponse" , handler(self , self.goToRecordView));
  24. end
  25. function MJZhanJiDanJuItem:init()
  26. --回放
  27. self.ui.Items.Button_replay:registerClick(handler(self, self.onClickRecord))
  28. --时间
  29. -- local time = os.date("%m-%d %H:%M",self.curJuShuData.endtime )
  30. local time = os.date("%Y-%m-%d %H:%M",self.curJuShuData.endtime)
  31. self.ui.Items.Text_time:setText(time)
  32. --编号
  33. self.ui.Items.Text_num:setText("第"..(self.jushu or 0).."局")
  34. -- 所有的玩家
  35. local index=1
  36. for uid, score in pairs(self.curJuShuData.score) do
  37. local playerInfo = app.playerInfoManager:getPlayerInfo(uid)
  38. if playerInfo then
  39. -- 名称
  40. local name=playerInfo.name and getSubStringNickname(playerInfo.name) or ""
  41. self.ui.Items["name_"..index]:setText(name)
  42. end
  43. --分数
  44. self.ui.Items["score_"..index]:setText(score)
  45. index=index+1
  46. end
  47. for i=1,4 do
  48. if index-1<i then
  49. self.ui.Items["Layout_"..i]:setVisible(false)
  50. end
  51. end
  52. end
  53. function MJZhanJiDanJuItem:onClickRecord()
  54. if app.club_php.tableIdx and app.club_php.tableIdx~=0 then
  55. showTooltip("在房间内无法查看回放!")
  56. return
  57. end
  58. app.waitDialogManager:showWaitNetworkDialog();
  59. if self.protocolZhanJi then
  60. self.protocolZhanJi:getZhanJiDetail(self.zhanjiInfo.pid, self.curJuShuData.subid, function()
  61. app.waitDialogManager:closeWaitNetworkDialog()
  62. self.curJuShuData.nbound = self.zhanjiInfo.nbound
  63. self.curJuShuData.roomid = self.zhanjiInfo.roomid
  64. if not self.curJuShuData then
  65. showPHPFailedResult("回放数据不存在")
  66. return
  67. end
  68. local haveOper = false
  69. if self.curJuShuData.ops then
  70. haveOper = string.len(self.curJuShuData.ops) > 0
  71. if self.curJuShuData.flag == MJDefine.StopFlag.STOP_FLAG_NORMAL then
  72. haveOper = true
  73. end
  74. end
  75. if not self.curJuShuData.user or not haveOper then
  76. showTooltip("游戏解散了")
  77. return
  78. end
  79. local MJRoomReplayView=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomReplayView")
  80. local view = MJRoomReplayView:new(self.curJuShuData)
  81. view:setAnchorPoint(cc.p(0.5, 0.5))
  82. app:showWaitDialog(view)
  83. end)
  84. end
  85. --showTooltip("敬请期待")
  86. --self.isQuest = true
  87. --self.protocolZhanJi:getZhanJiDetail(self.totalRoomJuShuData.pid,self.curJuShuData.subid,self.curJuShuData.logid)
  88. end
  89. -- function MJZhanJiDanJuItem:goToRecordView()
  90. -- if not self.isQuest then
  91. -- return
  92. -- end
  93. -- self.isQuest = false
  94. -- local zhanjiInfo = self.protocolZhanJi.zhanjiInfoList[self.totalRoomJuShuData.pid]
  95. -- local detil=zhanjiInfo.detail[tostring(self.curJuShuData.turn)]["1"]
  96. -- detil.roomid=self.totalRoomJuShuData.roomid
  97. -- detil.nbound=self.totalRoomJuShuData.nbound
  98. -- print(table.tostring(detil))
  99. -- local roomData = self.protocolZhanJi.roomData
  100. -- roomData.result.curCount = self.jushu
  101. -- roomData.result.totalCount = self.totalRoomJuShuData.nbound
  102. -- roomData.result.roomNum = self.totalRoomJuShuData.roomid
  103. -- local roomData = roomData.result
  104. -- logD("roomData:"..table.tostring(roomData))
  105. -- if not roomData or not roomData.user then
  106. -- showPHPFailedResult("回放数据不存在")
  107. -- return
  108. -- end
  109. -- for k,v in pairs(roomData.user) do
  110. -- if not v.hand then
  111. -- showTooltip("游戏解散了")
  112. -- return
  113. -- end
  114. -- end
  115. -- local MJRoomReplayView=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomReplayView")
  116. -- local view = MJRoomReplayView:new(detil)
  117. -- -- app:gotoView(MJRoomReplayView:new(detil))
  118. -- view:setAnchorPoint(cc.p(0.5, 0.5))
  119. -- app:showWaitDialog(view)
  120. -- end
  121. return MJZhanJiDanJuItem