2021-06-15 11:41:37 +08:00
|
|
|
|
local LingLongBaoJingPanel = {}
|
|
|
|
|
local data = {}
|
2021-06-10 15:36:59 +08:00
|
|
|
|
---转盘旋转类型
|
|
|
|
|
local TableTurnType={
|
|
|
|
|
Normal=1,--默认旋转
|
|
|
|
|
Expedite=2,--加快旋转
|
|
|
|
|
}
|
|
|
|
|
local curTurnPos=1 --当前位置
|
|
|
|
|
local sortingOrder = 0
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:New(gameObject)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
local b = {}
|
|
|
|
|
b.gameObject = gameObject
|
|
|
|
|
b.transform = gameObject.transform
|
2021-06-15 11:41:37 +08:00
|
|
|
|
setmetatable(b, { __index = LingLongBaoJingPanel })
|
2021-06-10 15:36:59 +08:00
|
|
|
|
return b
|
|
|
|
|
end
|
|
|
|
|
|
2021-06-16 17:55:19 +08:00
|
|
|
|
local a,b,c,d
|
|
|
|
|
local configs
|
2021-06-10 15:36:59 +08:00
|
|
|
|
---初始化组件(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:InitComponent(gameObject)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.spLoader = SpriteLoader.New()
|
|
|
|
|
self.luckyTurnPanel = Util.GetGameObject(self.gameObject,"Panel")
|
|
|
|
|
self.upView = SubUIManager.Open(SubUIConfig.UpView, self.luckyTurnPanel.transform, { showType = UpViewOpenType.ShowLeft })
|
|
|
|
|
self.mask = Util.GetGameObject(self.luckyTurnPanel,"Mask")
|
|
|
|
|
self.title = Util.GetGameObject(self.luckyTurnPanel,"BG/title"):GetComponent("Image")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
---跑马灯位置(物品位置)
|
|
|
|
|
self.itemList = {}
|
|
|
|
|
self.itemViewList = {}
|
|
|
|
|
for i = 1,2 do
|
|
|
|
|
if not self.itemList[i] then
|
|
|
|
|
self.itemList[i] = {}
|
|
|
|
|
end
|
|
|
|
|
self.itemList[i].go = Util.GetGameObject(self.luckyTurnPanel, "TurnTable/ItemList"..i)
|
|
|
|
|
self.itemList[i].pre = Util.GetGameObject(self.luckyTurnPanel, "TurnTable/pre"..i)
|
|
|
|
|
for j = 1,self.itemList[i].go.transform.childCount do
|
|
|
|
|
if not self.itemList[i][j] then
|
|
|
|
|
self.itemList[i][j] = {}
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.itemList[i][j].pos = Util.GetGameObject(self.itemList[i].go, "item"..j)
|
|
|
|
|
self.itemList[i][j].item = newObjToParent(self.itemList[i].pre,self.itemList[i][j].pos)
|
|
|
|
|
self.itemList[i][j].mask = Util.GetGameObject(self.itemList[i][j].item, "bg/mask")
|
|
|
|
|
self.itemList[i][j].itemPos = Util.GetGameObject(self.itemList[i][j].item, "itemPos")
|
|
|
|
|
self.itemList[i][j].get = Util.GetGameObject(self.itemList[i][j].item, "get")
|
|
|
|
|
self.itemList[i][j].selectKuang = Util.GetGameObject(self.itemList[i][j].item, "selectKuang")
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self.itemList[i][j].selectKuang.gameObject:SetActive(false)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self.itemList[i][j].itemView = SubUIManager.Open(SubUIConfig.ItemView, self.itemList[i][j].itemPos.transform)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.itemList[i][j].itemView.gameObject:SetActive(false)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--拥有道具数量
|
|
|
|
|
self.propBtn = Util.GetGameObject(self.luckyTurnPanel,"button/Prop")
|
|
|
|
|
self.propImage = Util.GetGameObject(self.luckyTurnPanel, "button/Prop/PropImage"):GetComponent("Image")--道具
|
|
|
|
|
self.propText =Util.GetGameObject(self.luckyTurnPanel, "button/Prop/PropText"):GetComponent("Text")
|
|
|
|
|
-- 奖励预览
|
|
|
|
|
self.btnPreview = Util.GetGameObject(self.gameObject, "button/previewBtn")
|
|
|
|
|
self.helpBtn = Util.GetGameObject(self.luckyTurnPanel,"button/helpBtn")
|
|
|
|
|
self.helpPosition = Util.GetGameObject(self.luckyTurnPanel,"BG/helpPos"):GetComponent("RectTransform").localPosition
|
|
|
|
|
|
|
|
|
|
self.slider = Util.GetGameObject(self.luckyTurnPanel,"Slider")
|
|
|
|
|
self.luckyValueNum = Util.GetGameObject(self.slider, "LuckyValue/LuckyValueNum"):GetComponent("Text")--幸运值
|
|
|
|
|
self.luckySlider = Util.GetGameObject(self.slider, "LuckySlider"):GetComponent("Slider")
|
|
|
|
|
|
|
|
|
|
self.rewardBoxList={}--奖励盒
|
|
|
|
|
self.rewardBox=Util.GetGameObject(self.slider,"RewardBox")
|
|
|
|
|
for i=1,5 do
|
2021-06-16 17:55:19 +08:00
|
|
|
|
if not self.rewardBoxList[i] then
|
|
|
|
|
self.rewardBoxList[i] = {}
|
|
|
|
|
end
|
|
|
|
|
self.rewardBoxList[i].go=Util.GetGameObject(self.rewardBox,"Item"..i)
|
|
|
|
|
self.rewardBoxList[i].icon =Util.GetGameObject(self.rewardBoxList[i].go,"icon"):GetComponent("Image")--幸运值
|
|
|
|
|
self.rewardBoxList[i].value =Util.GetGameObject(self.rewardBoxList[i].go,"Value"):GetComponent("Text")--幸运值
|
|
|
|
|
self.rewardBoxList[i].redPoint=Util.GetGameObject(self.rewardBoxList[i].go,"redPoint")
|
|
|
|
|
self.rewardBoxList[i].Num=Util.GetGameObject(self.rewardBoxList[i].go,"Num/Text"):GetComponent("Text")--幸运值
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
self.itemRewardList = {}
|
2021-06-16 17:55:19 +08:00
|
|
|
|
local config = ConfigManager.GetConfigData(ConfigName.SpecialConfig,117)
|
|
|
|
|
local strs = string.split(config.Value,"|")
|
|
|
|
|
self.costId = tonumber(strs[1])
|
|
|
|
|
strs = string.split(strs[2],"#")
|
|
|
|
|
a = tonumber(strs[1])
|
|
|
|
|
b = tonumber(strs[2])
|
|
|
|
|
c = tonumber(strs[3])
|
|
|
|
|
d = tonumber(strs[4])
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---绑定事件(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:BindEvent()
|
2021-06-10 15:36:59 +08:00
|
|
|
|
--帮助按钮
|
|
|
|
|
Util.AddClick(self.helpBtn,function()
|
|
|
|
|
--Log("==YSP==点击帮助按钮")
|
|
|
|
|
UIManager.OpenPanel(UIName.HelpPopup,HELP_TYPE.LuckyTurn,self.helpPosition.x,self.helpPosition.y)
|
|
|
|
|
end)
|
|
|
|
|
|
|
|
|
|
Util.AddClick(self.btnPreview, function()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
UIManager.OpenPanel(UIName.RewardPreviewPopup,PRE_REWARD_POOL_TYPE.LINGLONG)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
|
|
|
|
|
Util.AddClick(self.propBtn, function()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
if not self.enough then
|
|
|
|
|
PopupTipPanel.ShowTip("道具不足")
|
|
|
|
|
return
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
LingLongBaoJingManager.QiMenDunJiaDrawRequest(self.actId,function(idList,drop)
|
|
|
|
|
-- local drop = {}
|
|
|
|
|
-- drop.itemlist = {}
|
|
|
|
|
-- local idList = {1,1}
|
|
|
|
|
local x = function(isGetBigReward)
|
|
|
|
|
LingLongBaoJingManager.SetDataListState(idList)
|
|
|
|
|
local tempData = {}
|
|
|
|
|
for i = 1,#idList do
|
|
|
|
|
table.insert(tempData,data[idList[i]])
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self:RefreshTreasureTypeState(0,tempData)
|
|
|
|
|
UIManager.OpenPanel(UIName.RewardItemPopup,drop,1,function()
|
|
|
|
|
LuckyTurnTableManager.isCanGetWorldMessage=true
|
|
|
|
|
if isGetBigReward then
|
|
|
|
|
if LingLongBaoJingManager.IsAllGet() then
|
|
|
|
|
LingLongBaoJingManager.SetDataListState(nil,1)
|
|
|
|
|
self:RefreshTreasureTypeState(1)
|
|
|
|
|
end
|
|
|
|
|
LingLongBaoJingManager.SetDataListState(nil,2)
|
|
|
|
|
self:RefreshTreasureTypeState(2)
|
|
|
|
|
self.itemList[1][idList[2]].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
self.itemList[2][1].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
self.itemList[2][2].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
else
|
|
|
|
|
self.itemList[2][idList[1]].selectKuang.gameObject:SetActive(false)
|
2021-06-16 17:55:19 +08:00
|
|
|
|
end
|
|
|
|
|
self:SetPropShow()
|
|
|
|
|
self:RrFreshInfo()
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end)
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
curTurnPos = 1
|
|
|
|
|
self:SetTableTurnEffect(TableTurnType.Expedite,2,idList[1],function()
|
|
|
|
|
if idList[2] and idList[2] > 0 then
|
|
|
|
|
PopupTipPanel.ShowTip("播放一些开门的特效")
|
|
|
|
|
self:RefreshTreasureMaskByType(1,false)
|
|
|
|
|
curTurnPos = 1
|
|
|
|
|
self:SetTableTurnEffect(TableTurnType.Expedite,1,idList[2],function()
|
|
|
|
|
self:RefreshTreasureMaskByType(1,true)
|
|
|
|
|
x(true)
|
|
|
|
|
end)
|
|
|
|
|
else
|
|
|
|
|
x(false)
|
|
|
|
|
end
|
|
|
|
|
end)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end)
|
|
|
|
|
end)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---添加事件监听(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:AddListener()
|
|
|
|
|
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---移除事件监听(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RemoveListener()
|
|
|
|
|
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--界面打开时调用(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:OnOpen(_activityConfig,_index,parent)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.actConfig = _activityConfig
|
|
|
|
|
self.pageIndex = _index
|
|
|
|
|
self.parent = parent
|
|
|
|
|
end
|
|
|
|
|
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:OnSortingOrderChange(_sortingOrder)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.sortingOrder = _sortingOrder
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- 打开,重新打开时回调
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:OnShow(_sortingOrder)
|
2021-06-16 17:55:19 +08:00
|
|
|
|
self.parent.tabbox.gameObject:SetActive(false)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.gameObject:SetActive(true)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self.sortingOrder = _sortingOrder
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.actId = self.actConfig.ActId
|
|
|
|
|
self.actType = self.actConfig.ActiveType > 0 and self.actConfig.ActiveType or self.actConfig.FunType
|
|
|
|
|
if self.actConfig.IfBack == 1 then
|
|
|
|
|
if self.actConfig.ActiveType > 0 then
|
|
|
|
|
local id = ActivityGiftManager.IsActivityTypeOpen(self.actConfig.ActiveType)
|
|
|
|
|
if id and id > 0 then
|
|
|
|
|
self.actId = id
|
|
|
|
|
local config = ConfigManager.TryGetConfigDataByThreeKey(ConfigName.ActivityGroups,"PageType",self.actConfig.PageType,"ActiveType",self.actConfig.ActiveType,"ActId",id)
|
|
|
|
|
if config then
|
|
|
|
|
self.actConfig = config
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self.turnEffect = Timer.New()
|
|
|
|
|
self:RefreshTreasureType()
|
|
|
|
|
self:DelayMaskWithTime(1.5)
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self:SetPropShow()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
self:CreatBox()
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
--赋值
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RefreshTreasureType()
|
|
|
|
|
data = LingLongBaoJingManager.GetRewardList()
|
|
|
|
|
for k,v in pairs(data) do
|
|
|
|
|
self.itemList[v.typeIndex][v.address].itemView:OnOpen(false, v.reward,1,false,false,false,self.sortingOrder)
|
|
|
|
|
self.itemList[v.typeIndex][v.address].itemView.gameObject:SetActive(true)
|
|
|
|
|
self:RefreshTreasureTypeState(0,data)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:RefreshTreasureMaskByType(1,true)
|
|
|
|
|
self:RefreshTreasureMaskByType(2,false)
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
--刷新状态
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RefreshTreasureTypeState(typeIndex,_data)
|
|
|
|
|
--只重置_data
|
|
|
|
|
local tempData = {}
|
|
|
|
|
if typeIndex == 0 then
|
|
|
|
|
tempData = _data
|
|
|
|
|
--重置typeIndex对应的圈
|
2021-06-10 15:36:59 +08:00
|
|
|
|
else
|
2021-06-15 11:41:37 +08:00
|
|
|
|
data = LingLongBaoJingManager.GetRewardList()
|
|
|
|
|
tempData = data
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
for k,v in pairs(tempData) do
|
2021-06-16 13:42:32 +08:00
|
|
|
|
if (v.typeIndex == typeIndex) or typeIndex == 0 then
|
|
|
|
|
if v.state == 0 then
|
|
|
|
|
self.itemList[v.typeIndex][v.address].get.gameObject:SetActive(false)
|
|
|
|
|
else
|
|
|
|
|
self.itemList[v.typeIndex][v.address].get.gameObject:SetActive(true)
|
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
--外圈遮罩设置
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RefreshTreasureMaskByType(typeIndex,value)
|
|
|
|
|
for k,v in pairs(data) do
|
|
|
|
|
if v.typeIndex == typeIndex then
|
|
|
|
|
self.itemList[v.typeIndex][v.address].mask.gameObject:SetActive(value)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2021-06-10 15:36:59 +08:00
|
|
|
|
|
|
|
|
|
---界面关闭时调用(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:OnClose()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
self.parent.tabbox.gameObject:SetActive(true)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self.gameObject:SetActive(false)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
if self.thread then
|
|
|
|
|
coroutine.stop(self.thread)
|
|
|
|
|
self.thread=nil
|
|
|
|
|
end
|
|
|
|
|
if self.turnEffect then
|
|
|
|
|
self.turnEffect:Stop()
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self.turnEffect = nil
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---界面销毁时调用(用于子类重写)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:OnDestroy()
|
|
|
|
|
for k,v in ipairs(self.itemList) do
|
|
|
|
|
for n,m in ipairs(v) do
|
|
|
|
|
SubUIManager.Close(m.itemView)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
self.itemList = {}
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.spLoader:Destroy()
|
|
|
|
|
SubUIManager.Close(self.upView)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---设置转盘滚动 1旋转类型 2探宝类型 3服务器给的探宝后位置
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:SetTableTurnEffect(turnType,treasureType,pos,func)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
if turnType==TableTurnType.Normal then --默认旋转
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:TurnEffectReset(0.5,treasureType)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.turnEffect:Start()
|
|
|
|
|
elseif turnType==TableTurnType.Expedite then --抽奖旋转 至指定位置
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:DelayMaskWithBool(true)
|
|
|
|
|
self.thread = coroutine.start(function()
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self:TurnEffectReset(0.05,treasureType)
|
|
|
|
|
coroutine.wait(2)--2
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:TurnEffectReset(0.2,treasureType)
|
2021-06-16 13:42:32 +08:00
|
|
|
|
coroutine.wait(0.8)--0.8
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:TurnEffectReset(0.4,treasureType,true,pos,function()--当效果播放完毕后 从管理器取得数据
|
2021-06-10 15:36:59 +08:00
|
|
|
|
local timer=Timer.New(function()
|
2021-06-15 11:41:37 +08:00
|
|
|
|
self:DelayMaskWithBool(false)
|
|
|
|
|
if func then
|
|
|
|
|
func()
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
end,0.5,1,true)
|
|
|
|
|
timer:Start()
|
|
|
|
|
end)
|
|
|
|
|
end)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---转盘滚动特效重设 1移动速度,值越小越快 2是否停止 3停止位置
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:TurnEffectReset(turnSpeed,treasureType,isStop,pos,func)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.turnEffect:Reset(function()
|
2021-06-16 13:42:32 +08:00
|
|
|
|
if curTurnPos > #self.itemList[treasureType] then
|
|
|
|
|
curTurnPos = 1
|
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
if treasureType == 2 then
|
|
|
|
|
if curTurnPos == 1 or curTurnPos == 2 then
|
|
|
|
|
self.itemList[treasureType][#self.itemList[treasureType]].selectKuang.gameObject:SetActive(false)
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self.itemList[treasureType][1].selectKuang.gameObject:SetActive(true)
|
|
|
|
|
self.itemList[treasureType][2].selectKuang.gameObject:SetActive(true)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
else
|
|
|
|
|
self.itemList[treasureType][curTurnPos - 1].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
if curTurnPos == 3 then
|
|
|
|
|
self.itemList[treasureType][curTurnPos - 2].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self.itemList[treasureType][curTurnPos].selectKuang.gameObject:SetActive(true)
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end
|
2021-06-10 15:36:59 +08:00
|
|
|
|
else
|
2021-06-15 11:41:37 +08:00
|
|
|
|
if curTurnPos == 1 then
|
|
|
|
|
self.itemList[treasureType][#self.itemList[treasureType]].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
else
|
|
|
|
|
self.itemList[treasureType][curTurnPos - 1].selectKuang.gameObject:SetActive(false)
|
|
|
|
|
end
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self.itemList[treasureType][curTurnPos].selectKuang.gameObject:SetActive(true)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
if isStop then
|
2021-06-15 11:41:37 +08:00
|
|
|
|
if (pos == curTurnPos) or (treasureType == 2 and ((pos == 1 and curTurnPos == 2) or (pos == 2 and curTurnPos == 1))) then--如果停到对应位置
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.turnEffect:Stop()--暂停跑马灯
|
|
|
|
|
if func then--回调
|
|
|
|
|
func()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
if treasureType == 2 then
|
|
|
|
|
curTurnPos = curTurnPos == 1 and curTurnPos + 2 or curTurnPos + 1
|
2021-06-10 15:36:59 +08:00
|
|
|
|
else
|
2021-06-15 11:41:37 +08:00
|
|
|
|
curTurnPos = curTurnPos + 1
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
2021-06-15 11:41:37 +08:00
|
|
|
|
end,turnSpeed,-1,true)
|
2021-06-16 13:42:32 +08:00
|
|
|
|
self.turnEffect:Start()
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---设置道具拥有显示 1道具id 2探宝类型
|
2021-06-16 13:42:32 +08:00
|
|
|
|
function LingLongBaoJingPanel:SetPropShow()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
self.propImage.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(self.costId))
|
|
|
|
|
local count = BagManager.GetItemCountById(self.costId)
|
|
|
|
|
local singleCount = (a * 1^3 + b * 1^2 + c * 1 ^1 + d * 1^0)
|
|
|
|
|
local color
|
|
|
|
|
if singleCount <= count then
|
|
|
|
|
self.enough = true
|
|
|
|
|
color = "FFA000"
|
|
|
|
|
else
|
|
|
|
|
self.enough = false
|
|
|
|
|
color = "FF0000"
|
|
|
|
|
end
|
|
|
|
|
self.propText.text = string.format("<color=#%s>%s</color>",color,singleCount)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function LingLongBaoJingPanel:CreatBox()
|
|
|
|
|
self:RefreshLuckyValue()
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---刷新幸运值
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RefreshLuckyValue()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
configs = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId",self.actId)
|
|
|
|
|
local list = {}
|
|
|
|
|
for k,v in ipairs(configs) do
|
|
|
|
|
table.insert(list,v.Values[1][1])
|
|
|
|
|
end
|
|
|
|
|
table.sort(list,function(a,b) return a < b end)
|
|
|
|
|
local pos = self:CalutePos1(self.rewardBox,list)
|
|
|
|
|
for i = 1,5 do
|
|
|
|
|
local v3 = self.rewardBoxList[i].go:GetComponent("RectTransform").anchoredPosition3D
|
|
|
|
|
v3.x = pos[i]
|
|
|
|
|
self.rewardBoxList[i].go:GetComponent("RectTransform").anchoredPosition3D = v3
|
|
|
|
|
self.rewardBoxList[i].value.text = configs[i].Values[1][1]
|
|
|
|
|
self.rewardBoxList[i].redPoint.gameObject:SetActive(false)
|
|
|
|
|
if i < 5 then
|
|
|
|
|
self.rewardBoxList[i].Num.text = configs[i].Reward[1][2]
|
|
|
|
|
self.rewardBoxList[i].icon.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(configs[i].Reward[1][1]))
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
self.luckySlider.minValue = 0
|
|
|
|
|
self.luckySlider.maxValue = configs[#configs].Values[1][1]
|
|
|
|
|
self:RrFreshInfo()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function LingLongBaoJingPanel:CalutePos1(parent,list)
|
|
|
|
|
local pos = {}
|
|
|
|
|
local wi = parent.transform.rect.width
|
|
|
|
|
for i = 1,#list do
|
|
|
|
|
local pos1 = wi *(list[i]/list[#list])
|
|
|
|
|
table.insert(pos,pos1)
|
|
|
|
|
end
|
|
|
|
|
return pos
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---刷新信息
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:RrFreshInfo()
|
2021-06-16 17:55:19 +08:00
|
|
|
|
-- local actInfo = ActivityGiftManager.GetActivityInfoByType(ActivityTypeDef.lingLongBaoJing)
|
|
|
|
|
-- self.luckyValueNum.text = actInfo.value .."/" ..configs[#configs].Values[1][1]
|
|
|
|
|
--self.luckySlider.value = actInfo.value
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---延时遮罩 1按时间
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:DelayMaskWithTime(delayTime)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
self.mask.gameObject:SetActive(true)
|
|
|
|
|
local closeMask=Timer.New(function()
|
|
|
|
|
self.mask.gameObject:SetActive(false)
|
|
|
|
|
end,delayTime,1,true)
|
|
|
|
|
closeMask:Start()
|
|
|
|
|
end
|
|
|
|
|
---延时遮罩 1按bool
|
2021-06-15 11:41:37 +08:00
|
|
|
|
function LingLongBaoJingPanel:DelayMaskWithBool(b)
|
|
|
|
|
self.mask.gameObject:SetActive(b)
|
2021-06-10 15:36:59 +08:00
|
|
|
|
end
|
|
|
|
|
|
2021-06-15 11:41:37 +08:00
|
|
|
|
return LingLongBaoJingPanel
|