merge
This commit is contained in:
commit
7fccb1c162
@ -3,20 +3,32 @@ local BOX_HERO_CELL = "app/ui/shop/cell/box_hero_cell"
|
|||||||
|
|
||||||
local CELL_NUM = 4
|
local CELL_NUM = 4
|
||||||
local QLT_DELAY_TIME = {
|
local QLT_DELAY_TIME = {
|
||||||
[1] = 0.25,
|
[1] = 0.3, -- 预留
|
||||||
[2] = 0.25,
|
[2] = 0.3, -- 绿
|
||||||
[3] = 0.5,
|
[3] = 0.3, -- 蓝
|
||||||
[4] = 0.5,
|
[4] = 0.5, -- 紫
|
||||||
[5] = 0.75,
|
[5] = 0.5, -- 预留
|
||||||
[6] = 1
|
|
||||||
}
|
}
|
||||||
local FADE_TIME = 0.5
|
local FADE_TIME = 0.5
|
||||||
|
local MAX_SCREEN_CELL_COUNT = 12 -- 同屏界面能展示的最大数量
|
||||||
|
|
||||||
function BoxRewardUI:ctor(params)
|
function BoxRewardUI:ctor(params)
|
||||||
self.params = params or {}
|
self.params = params or {}
|
||||||
self.rewards = params.rewards or {}
|
self.rewards = params.rewards or {}
|
||||||
self.actionStatus = {}
|
self.actionStatus = {} -- 表现状态
|
||||||
|
self.cellDelayTime = {} -- {idx,time}
|
||||||
|
-- if #self.params.rewards > MAX_SCREEN_CELL_COUNT then
|
||||||
|
-- self.showAction = true
|
||||||
|
-- self.turnIdx = MAX_SCREEN_CELL_COUNT // CELL_NUM
|
||||||
|
-- self.maxIdx = math.ceil(#self.params.rewards / CELL_NUM)
|
||||||
|
-- end
|
||||||
|
if #self.params.rewards > MAX_SCREEN_CELL_COUNT then
|
||||||
|
for i = MAX_SCREEN_CELL_COUNT + 1, #self.params.rewards do
|
||||||
|
self.actionStatus[i] = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- 前端用展示奖励
|
||||||
self.fragmentRewards = {}
|
self.fragmentRewards = {}
|
||||||
self.coinNum = 0
|
self.coinNum = 0
|
||||||
local fragmentMap = {}
|
local fragmentMap = {}
|
||||||
@ -107,31 +119,40 @@ function BoxRewardUI:playCellAction(cell, idx)
|
|||||||
seq:Append(tween)
|
seq:Append(tween)
|
||||||
seq:AppendCallback(function()
|
seq:AppendCallback(function()
|
||||||
self.actionStatus[idx] = true
|
self.actionStatus[idx] = true
|
||||||
self:turnToNext(idx)
|
-- self:turnToNext(idx) -- 去掉滑动
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
function BoxRewardUI:turnToNext(idx)
|
-- function BoxRewardUI:turnToNext(idx)
|
||||||
if not self.showAction or idx ~= self.turnIdx * CELL_NUM then
|
-- if not self.showAction or idx ~= self.turnIdx * CELL_NUM then
|
||||||
return
|
-- return
|
||||||
end
|
-- end
|
||||||
self:performWithDelayGlobal(function()
|
-- self:performWithDelayGlobal(function()
|
||||||
self.scrollRect:moveToIndex((self.turnIdx - 6)*CELL_NUM + 1)
|
-- self.scrollRect:moveToIndex((self.turnIdx - (MAX_SCREEN_CELL_COUNT // CELL_NUM))*CELL_NUM + 1)
|
||||||
self.turnIdx = self.turnIdx + 1
|
-- self.turnIdx = self.turnIdx + 1
|
||||||
if self.turnIdx >= self.maxIdx then
|
-- if self.turnIdx >= self.maxIdx then
|
||||||
self.showAction = false
|
-- self.showAction = false
|
||||||
end
|
-- end
|
||||||
end, 0.025)
|
-- end, 0.025)
|
||||||
end
|
-- end
|
||||||
|
|
||||||
function BoxRewardUI:getCellDelayTime(idx)
|
function BoxRewardUI:getCellDelayTime(idx)
|
||||||
-- 品质对应时间
|
if not self.cellDelayTime[idx] then
|
||||||
if idx <= 35 then
|
local reward = self.fragmentRewards[idx]
|
||||||
return idx* 0.2 -- 0.05
|
local id = reward.id
|
||||||
else
|
local qlt = 2 -- 默认品质
|
||||||
local re = (idx - 1)%5 + 1
|
local heroCfgInfo = ConfigManager:getConfig("hero")[id]
|
||||||
return re* 0.1 -- 0.025
|
if heroCfgInfo then
|
||||||
end
|
qlt = heroCfgInfo.qlt
|
||||||
|
end
|
||||||
|
local cellDelayTime = QLT_DELAY_TIME[qlt] -- 这个cell的延迟时间
|
||||||
|
if idx == 1 then
|
||||||
|
self.cellDelayTime[idx] = cellDelayTime
|
||||||
|
else
|
||||||
|
self.cellDelayTime[idx] = cellDelayTime + self:getCellDelayTime(idx - 1)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return self.cellDelayTime[idx]
|
||||||
end
|
end
|
||||||
|
|
||||||
return BoxRewardUI
|
return BoxRewardUI
|
||||||
Loading…
x
Reference in New Issue
Block a user