You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 rivejä
2.9 KiB

  1. local MJRoomToolView=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomToolView")
  2. local MJRoomMessageView=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomMessageView")
  3. local MJRoomPlayerView=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomPlayerView")
  4. local MJDefine=MJFramework.MJImport("mj.luaScript.MJDefine")
  5. local MJFunction=MJFramework.MJImport("mj.luaScript.MJFunction")
  6. local MJHandCardView=MJFramework.MJImport("mj.luaScript.Views.Game.MJHandCardView")
  7. local MJRoomDirection=MJFramework.MJImport("mj.luaScript.Views.Room.MJRoomDirection")
  8. local MJWanFa=MJFramework.MJImport("luaScript.SubGameDefine.MaJiang.MJWanFa")
  9. local MJAnimationCompnent=MJFramework.MJImport("mj.luaScript.Views.Compnent.MJAnimationCompnent")
  10. local MJSound=MJFramework.MJImport("mj.luaScript.MJSound")
  11. local MJRoomReplayView=MJFramework.MJFrameworkClassImprot("mj_xzdd.luaScript.Views.Room.xzddRoomReplayView")
  12. local xzdd2rRoomReplayView = class("xzdd2rRoomReplayView", MJRoomReplayView)
  13. function xzdd2rRoomReplayView:ctor(data)
  14. xzdd2rRoomReplayView.super.ctor(self,data)
  15. end
  16. --开始换牌
  17. function xzdd2rRoomReplayView:onHuanPai(data)
  18. if not data.huanPaiInfo or type(data.huanPaiInfo) ~= 'table' then
  19. return
  20. end
  21. -- 过滤一下0数据
  22. for i, v in ipairs(data.huanPaiInfo) do
  23. if v.cards then
  24. for i = #v.cards, 1, -1 do
  25. if v.cards[i] == 0 then
  26. table.remove(v.cards, i)
  27. end
  28. end
  29. end
  30. end
  31. for i,v in pairs(data.huanPaiInfo) do
  32. local viewId=app.room:getViewIdByUserId(v.nUserId)
  33. -- self.playerHandCards[viewId]:createSwapCards(v.cards)
  34. self:createSwapCards(viewId, v.cards, true) -- 使用新的创建交换牌方式
  35. local tselCards = {}
  36. for j,k in pairs(v.cards) do
  37. table.insert(tselCards,{card = k})
  38. end
  39. self.playerHandCards[viewId]:removeHandCard(tselCards)
  40. self.playerHandCards[viewId]:resetHandCards()
  41. local action = cc.Sequence:create(cc.DelayTime:create(1),cc.CallFunc:create(function()
  42. -- self.playerHandCards[viewId]:deleteSwapCards()
  43. self:removeAllSwapCard()
  44. end))
  45. self:runAction(action)
  46. end
  47. end
  48. --换牌完成
  49. function xzdd2rRoomReplayView:onHuanPaiDone(data)
  50. if not data.huanPaiInfo or type(data.huanPaiInfo) ~= 'table' then
  51. return
  52. end
  53. -- 过滤一下0数据
  54. for i, v in ipairs(data.huanPaiInfo) do
  55. if v.cards then
  56. for i = #v.cards, 1, -1 do
  57. if v.cards[i] == 0 then
  58. table.remove(v.cards, i)
  59. end
  60. end
  61. end
  62. end
  63. for i,v in pairs(data.huanPaiInfo) do
  64. local viewId=app.room:getViewIdByUserId(v.nUserId)
  65. -- self.playerHandCards[viewId]:createSwapCards(v.cards)
  66. self:createSwapCards(viewId, v.cards, true) -- 使用新的创建交换牌方式
  67. for i,v in pairs(v.cards) do
  68. self.playerHandCards[viewId]:onGetCard(nil,tonumber(v),true)
  69. end
  70. local action = cc.Sequence:create(cc.DelayTime:create(1),cc.CallFunc:create(function()
  71. -- self.playerHandCards[viewId]:deleteSwapCards()
  72. self:removeAllSwapCard()
  73. end))
  74. self:runAction(action)
  75. end
  76. end
  77. return xzdd2rRoomReplayView