Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

102 рядки
3.0 KiB

  1. -- 房间中的卡牌
  2. local ZPFuc = ZPFramework.ZPImport("zp_base.luaScript.ZPFunctions")
  3. local ZPDef = ZPFramework.ZPImport("zp_base.luaScript.ZPDef")
  4. local xichongRoomCard = class("xichongRoomCard")
  5. --[[
  6. @parm:cardValueList:牌值1,牌值2,牌值3,
  7. @parm:cardType:牌文件类型.
  8. @parm:lieshu:牌属于哪一列
  9. @parm:isLiangShowPai:是否是亮手牌需要的UI
  10. ]]
  11. function xichongRoomCard:ctor(cardValueList,cardType,lieshu,isKan,isLiangShowPai,deskType)
  12. self.deskType = deskType or ZPDef.GameStyleType.XIANDAI
  13. --精灵
  14. if isLiangShowPai then
  15. self.ui = loadUI("zp_xichong/res/ui/ui_fangjian/xichong_ui_cardLiang.ui")
  16. else
  17. if deskType and deskType == ZPDef.GameStyleType.JINGDIAN then
  18. self.ui = loadUI("zp_xichong/res/ui/ui_fangjian/xichong_ui_card_jingdian.ui")
  19. else
  20. self.ui = loadUI("zp_xichong/res/ui/ui_fangjian/xichong_ui_card.ui")
  21. end
  22. end
  23. self.LayoutList = {}
  24. self.imgList = {}
  25. for i = 1 ,4 do
  26. name = "Layout_"..i
  27. self.LayoutList[i] = self.ui.Items[name]
  28. name = "ImageView_"..i
  29. self.imgList[i] = self.ui.Items[name]
  30. end
  31. self.cardVauleList = cardValueList or nil
  32. --串单独处理:当为串的时候,删除需要数据所以这里for 4,在单个item数组记录的时候只记录了行的下3个
  33. if self.cardVauleList ~= nil then
  34. for k = 1,4 do
  35. if cardValueList[k] ~= nil then
  36. local fileName = ZPFuc.getZPCardImgByValue(cardValueList[k],cardType,self.deskType)
  37. self.imgList[k]:loadTextureFromPlist(fileName)
  38. self.imgList[k]:setVisible(true)
  39. if self.imgList[k]:getChildren()[1] then
  40. self.imgList[k]:getChildren()[1]:setVisible(false)
  41. end
  42. if isKan and not isLiangShowPai then
  43. self.imgList[k]:setColor(cc.c3b(125,125,125))
  44. end
  45. if cardValueList.jiaopaiIdx and k == cardValueList.jiaopaiIdx then--查叫牌
  46. self.imgList[k]:setColor(cc.c3b(115,115,115))
  47. end
  48. self.imgList[k].value = cardValueList[k]
  49. self.imgList[k].isKan = isKan
  50. self.imgList[k].lieshu = lieshu
  51. self.imgList[k].hangshu = k
  52. else
  53. if self.imgList[k]:getChildren()[1] then
  54. self.imgList[k]:getChildren()[1]:setVisible(false)
  55. end
  56. self.imgList[k]:setVisible(false)
  57. self.imgList[k].lieshu = lieshu
  58. self.imgList[k].hangshu = k
  59. self.imgList[k].value = nil
  60. self.imgList[k].isKan = false
  61. end
  62. end
  63. else
  64. for i = 1, 4 do
  65. local fileName = ZPFuc.getZPCardImgByValue(26,cardType) -- 使用牌背
  66. self.imgList[i]:loadTextureFromPlist(fileName)
  67. self.imgList[i].lieshu = lieshu
  68. self.imgList[i].hangshu = k
  69. self.imgList[i].value = nil
  70. self.imgList[i]:setVisible(false)
  71. self.imgList[i].isKan = false
  72. if self.imgList[k]:getChildren()[1] then
  73. self.imgList[k]:getChildren()[1]:setVisible(false)
  74. end
  75. end
  76. end
  77. end
  78. function xichongRoomCard:getCardWidth()
  79. local width = 0
  80. for i = 1 ,4 do
  81. local name = "Layout_"..i
  82. local layout = self.ui.Items[name]
  83. if layout then
  84. local size = layout:getSize()
  85. width = size.width
  86. break;
  87. end
  88. end
  89. return width
  90. end
  91. return xichongRoomCard;