|
-
- local Mahjong3DHuCardView = require("mj.luaScript.Common.3d.Mahjong3DHuCardView")
-
- local HuCardView_3d = class("HuCardView_3d", Mahjong3DHuCardView)
-
- function HuCardView_3d:ctor(...)
- HuCardView_3d.super.ctor(self, ...)
- end
-
- function HuCardView_3d:getHuCards(huCards, isClean)
- self._huCards = self._huCards or {};
-
- if isClean then
- self._huCards = {};
- end
-
- for k, v in ipairs(huCards or {}) do
- table.insert(self._huCards, v);
- end
-
- self:createHuCards(self._huCards)
-
- end
-
- function HuCardView_3d:refreshHuCardZOrder(huCardNodes)
- local viewId = self:getViewId()
-
- for k, mjCard in ipairs(huCardNodes or {}) do
- local col = k % 20 == 0 and 20 or k % 20 -- 列数,从右往左数
- local row = math.ceil(k / 20) -- 行数,从下往上
- local zorder = col
- if viewId == 1 then
- zorder = col
- elseif viewId == 2 then
- zorder = 10 - col
- zorder = zorder > 0 and -zorder or zorder
- if row >= 3 then
- row = row - 2
- end
- zorder = zorder + (row - 1) * 10
- elseif viewId == 4 then
- row = row % 2 == 0 and 2 or (row % 2)
- zorder = 10 - col
- zorder = zorder > 0 and -zorder or zorder
- zorder = zorder - (row - 1) * 10
- elseif viewId == 3 then
- zorder = 20 - col
- end
-
- mjCard:setLocalZOrder(zorder)
- end
- end
-
- return HuCardView_3d
|