local MJDefine = MJFramework.MJImport("mj.luaScript.MJDefine") local MJFunction = MJFramework.MJImport("mj.luaScript.MJFunction") local CommonMahjongCard = require("mj.luaScript.Common.2d.CommonMahjongCard") local Card2D = class("Card2D", CommonMahjongCard) local Color_Ting_Yong_Card = cc.c3b(255, 255, 215) function Card2D:ctor(...) self._isTingYongCard = false self._isDingQueCard = false Card2D.super.ctor(self, ...) end --- -- 刷新多头杠数量 -- @param cardNum -- @return -- -- function Card2D:refreshCardNum(cardNum, groupIndex) -- local viewId = self:getViewId() -- local imgFlag = self:getChildByName("img_cardnum_flag") -- if not imgFlag then -- imgFlag = cc.ImageView:create() -- self:addChild(imgFlag) -- end -- imgFlag:setVisible(cardNum > 4) -- if not (cardNum and cardNum > 4) then -- return -- end -- local imgPath = string.format("mj_yibinmajiang/res/zy_fangjian/card/flag_gang/yibinmajiang_flag_gang_%d.png", cardNum) -- imgFlag:loadTexture(imgPath, 0) -- imgFlag:setName("img_cardnum_flag") -- local cfg = nil -- local rotationCfg = nil -- if self._mjType == MJDefine.MJConfig_2d.MJType.Out then -- cfg = MJDefine.OutDuoGangFlagPos[MJDefine.DesktopType.ThreeD][viewId]; -- cfg.x = cfg.pos.x -- cfg.y = cfg.pos.y -- else -- cfg = MJDefine.MJConfig_2d.OpDuoGangFlagPos[viewId] -- rotationCfg = MJDefine.MJConfig_2d.OpDuoGangFlagRotationConfig[viewId] -- end -- if cfg then -- imgFlag:setPosition(cc.p(cfg.x, cfg.y)); -- imgFlag:setScale(cfg.scale); -- end -- if rotationCfg then -- imgFlag:setEulerRotation(cc.vec3(rotationCfg.x, rotationCfg.y, rotationCfg.z)) -- end -- end -- 设置状态 function Card2D:setStatus(status) self.status = status if status == MJDefine.MJStatus.Disable then self:setColor(cc.c3b(150, 150, 150)) else if self:getIsTingYongCard() then self:setColor(Color_Ting_Yong_Card) else self:setColor(cc.c3b(255, 255, 255)) end end end -- 设置为听用牌 function Card2D:setIsTingYongCard(isBool) self._isTingYongCard = isBool or false if isBool then self:setTingColor() else self:setStatus(MJDefine.MJStatus.Normal) end end -- 获取本牌是否是听用牌 function Card2D:getIsTingYongCard() return self._isTingYongCard end -- 设置为定缺牌 function Card2D:setIsDingQueCard(isBool) self._isDingQueCard = isBool or false end -- 获取本牌是否是定缺牌 function Card2D:getIsDingQueCard() return self._isDingQueCard end function Card2D:setValueImage(value) local imgName = string.format("mj_2d_mahjong_card_%x.png", value) self._mahjongImage:loadTextureFromPlist(imgName) end function Card2D:setTingColor() self:setColor(Color_Ting_Yong_Card) end return Card2D