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.

72 regels
1.9 KiB

  1. local MJDefine = MJFramework.MJImport("mj.luaScript.MJDefine")
  2. local MJFunction = MJFramework.MJImport("mj.luaScript.MJFunction")
  3. local BaseMahjong3DCard = MJFramework.MJFrameworkClassImprot("mj.luaScript.Common.3d.Mahjong3DCard")
  4. local Card3D = class("Card3D", BaseMahjong3DCard)
  5. local Color_Ting_Yong_Card = cc.c3b(255, 255, 215)
  6. function Card3D:ctor(...)
  7. self._isTingYongCard = false
  8. self._isDingQueCard = false
  9. Card3D.super.ctor(self, ...)
  10. end
  11. -- 设置状态
  12. function Card3D:setStatus(status)
  13. self.status = status
  14. if status == MJDefine.MJStatus.Disable then
  15. self:setColor(cc.c3b(150, 150, 150))
  16. else
  17. if self:getIsTingYongCard() then
  18. self:setColor(Color_Ting_Yong_Card)
  19. else
  20. self:setColor(cc.c3b(255, 255, 255))
  21. end
  22. end
  23. end
  24. -- 设置为听用牌
  25. function Card3D:setIsTingYongCard(isBool)
  26. self._isTingYongCard = isBool or false
  27. if isBool then
  28. self:setTingColor()
  29. else
  30. self:setStatus(MJDefine.MJStatus.Normal)
  31. end
  32. end
  33. -- 获取本牌是否是听用牌
  34. function Card3D:getIsTingYongCard()
  35. return self._isTingYongCard
  36. end
  37. -- 设置为定缺牌
  38. function Card3D:setIsDingQueCard(isBool)
  39. self._isDingQueCard = isBool or false
  40. end
  41. -- 获取本牌是否是定缺牌
  42. function Card3D:getIsDingQueCard()
  43. return self._isDingQueCard
  44. end
  45. function Card3D:setValueImage(value)
  46. local imgName = string.format("mj_3d_mahjong_card2_%x.png", value)
  47. if self._mjType == MJDefine.MJConfig_3d.MJType.Stand and self._viewId == MJDefine.MyViewId then
  48. imgName = string.format( "mj_3d_mahjong_card_%x.png", value)
  49. end
  50. local md5Name = MJFunction.get3dCardMd5ByName(imgName)
  51. if not md5Name then
  52. logD("[LUA ERROR] Mahjong3DCard:initBackImage imgName:" .. imgName)
  53. return
  54. end
  55. self._mahjongImage:loadTextureFromPlist(md5Name)
  56. end
  57. function Card3D:setTingColor()
  58. self:setColor(Color_Ting_Yong_Card)
  59. end
  60. return Card3D