local Mahjong3DOutCardView = MJFramework.MJFrameworkClassImprot("mj.luaScript.Common.3d.Mahjong3DOutCardView") local MJDefine=MJFramework.MJImport("mj.luaScript.MJDefine") local OutCardView3D = class("OutCardView3D", Mahjong3DOutCardView) function OutCardView3D:ctor(...) OutCardView3D.super.ctor(self, ...) end function OutCardView3D:refreshZOrder() if app.room.roomInfo.nMaxPlayCount~=2 then local viewId = self:getViewId() for cardIndex, card in ipairs(self._outCardNodes or {}) do local row = math.ceil( cardIndex / 11 ) local col = cardIndex % 11 col = (col == 0) and 11 or col local zorder = col if viewId == 1 then if cardIndex > 22 then row = row - 2 end zorder = (3 - row) * 10 - col elseif viewId == 2 then zorder = 6 - col zorder = zorder > 0 and -zorder or zorder if cardIndex > 22 then row = row - 2 end zorder = zorder - row * 10 elseif viewId == 4 then zorder = 6 - col zorder = zorder > 0 and -zorder or zorder if cardIndex > 22 then row = row - 2 end zorder = zorder + row * 10 elseif viewId == 3 then if cardIndex > 22 then row = row - 2 end zorder = col - (row - 2) * 10 end card:setLocalZOrder(zorder) end return end local viewId = self:getViewId() for cardIndex, card in ipairs(self._outCardNodes or {}) do local row = math.ceil( cardIndex / 19 ) local col = cardIndex % 19 col = (col == 0) and 19 or col local zorder = col if viewId == 2 then zorder = 10 - col zorder = zorder > 0 and -zorder or zorder if cardIndex > 57 then row = row - 3 end zorder = zorder - row * 10 elseif viewId == 4 then zorder = col - 10 zorder = zorder > 0 and -zorder or zorder zorder = zorder + row * 10 end card:setLocalZOrder(zorder) end end return OutCardView3D