【七界试炼】提交

dev_chengFeng
ZhangBiao 2021-09-17 19:29:58 +08:00
parent 488ad1caad
commit 949d159010
8 changed files with 1292 additions and 656 deletions

View File

@ -495,5 +495,9 @@ GameEvent = {
},
SerectTreasure = {
RechargeSuccess = "SerectTreasure.RechargeSuccess"--秘宝充值成功
}
},
QiJieShiLian = {
BuySingleTreasure = "QiJieShiLian.BuySingleTreasure",
CloseBuyTreasure = "QiJieShiLian.CloseBuyTreasure",
},
}

View File

@ -2,10 +2,11 @@ require("Base/BasePanel")
local GeneralTreasurePanel = Inherit(BasePanel)
local itemnum = 0
local LocalData = {
[ActivityTypeDef.QiJieTreasure] = {hp = HELP_TYPE.QiJieTreasure},--七界秘宝
[ActivityTypeDef.QiJieTreasure] = {hp = HELP_TYPE.QiJieTreasure,imgName = "d_danaotiangong_tiangongmibao_zh"},--七界秘宝
}
--初始化组件(用于子类重写)
function GeneralTreasurePanel:InitComponent()
self.spLoader = SpriteLoader.New()
--topBar/btnBack
self.btnBack = Util.GetGameObject(self.transform, "bg/btnBack")
self.buyBtn = Util.GetGameObject(self.transform, "bg/topBar/buyBtn")
@ -19,6 +20,8 @@ function GeneralTreasurePanel:InitComponent()
self.treasureList = Util.GetGameObject(self.transform, "bg/pageContent/treasureList")
self.itemPre = Util.GetGameObject(self.transform, "bg/pageContent/itemPro")
self.itemPos = Util.GetGameObject(self.transform, "bg/pageContent/itemPos")
--img
self.titleName = Util.GetGameObject(self.transform, "bg/titleName"):GetComponent("Image")
--设置滚动条
self.ScrollView = SubUIManager.Open(SubUIConfig.ScrollCycleView,self.treasureList.transform,self.itemPre,nil,Vector2.New(950, 1000),1,1,Vector2.New(100, 25))
@ -77,6 +80,7 @@ end
--topBar按钮状态
function GeneralTreasurePanel:topBar()
--设置礼包购买按钮状态
self.titleName.sprite = self.spLoader:LoadSprite(LocalData[self.curType].imgName)
self.buyBtn:GetComponent("Button").interactable = self.treasureData.treasureState == 0
self.Text1.text = self.treasureData.treasureState == 0 and "激活秘宝" or "已激活"
Util.AddOnceClick(self.buyBtn,function()
@ -236,7 +240,8 @@ function GeneralTreasurePanel:ShowTime()
self.time.text = "重置时间:"..TimeToDHMS(self.treasureData.endTime - GetTimeStamp())
local time = self.treasureData.endTime - GetTimeStamp()
if time <= 0 then
return
PopupTipPanel.ShowTip("本期秘宝活动结束!")
self:ClosePanel()
end
self.localTimer = Timer.New(function()
time = time - 1
@ -244,7 +249,8 @@ function GeneralTreasurePanel:ShowTime()
self.time.text = "重置时间:"..TimeToDHMS(0)
self.localTimer:Stop()
self.localTimer = nil
return
PopupTipPanel.ShowTip("本期秘宝活动结束!")
self:ClosePanel()
end
self.time.text = "重置时间:"..TimeToDHMS(time)
end,1,-1,true)
@ -253,6 +259,7 @@ end
--界面关闭时调用(用于子类重写)
function GeneralTreasurePanel:OnClose()
Game.GlobalEvent:DispatchEvent(GameEvent.QiJieShiLian.CloseBuyTreasure)
if self.localTimer then
self.localTimer:Stop()
self.localTimer = nil
@ -261,6 +268,7 @@ end
--界面销毁时调用(用于子类重写)
function GeneralTreasurePanel:OnDestroy()
self.spLoader:Destroy()
self.itemsList = {}
self.itemsList2 = {}
end

View File

@ -11,11 +11,21 @@ local _TabImgData = {select = "r_tongyong_xiaanniu_01", default = "r_tongyong_xi
local _TabFontColor = { default = Color.New(130 / 255, 128 / 255, 120 / 255, 1),
select = Color.New(243 / 255, 235 / 255, 202 / 255, 1) }
local _TabData = {
[1]= {txt = "全部"},
[2]= {txt = "白色"},
[3]= {txt = "蓝色"},
[4]= {txt = "金色"},
[5]= {txt = "红色"},
[1]= {txt = "全部",quality = 0},
[2]= {txt = "蓝色",quality = 2},
[3]= {txt = "紫色",quality = 3},
[4]= {txt = "金色",quality = 4},
[5]= {txt = "红色",quality = 5},
}
local QUALITY = {
-- [1] = {light="q_qjsl_yw_jhl",kuang="q_qjsl_yw_jsl"},
[2] = {light="q_qjsl_yw_jhl",kuang="q_qjsl_yw_jsl"},
[3] = {light="q_qjsl_yw_jhz",kuang="q_qjsl_yw_jsz"},
[4] = {light="q_qjsl_yw_jhhs",kuang="q_qjsl_yw_jshs"},
[5] = {light="q_qjsl_yw_jhh",kuang="q_qjsl_yw_jsh"},
[6] = {light="q_qjsl_yw_jhh",kuang="q_qjsl_yw_jsh"},
-- [7] = {light="q_qjsl_yw_jhl",kuang="q_qjsl_yw_jsl"},
}
--初始化组件(用于子类重写)
@ -49,10 +59,12 @@ end
--添加事件监听(用于子类重写)
function QiJieTreasure:AddListener()
Game.GlobalEvent:AddEvent(GameEvent.QiJieShiLian.BuySingleTreasure, self.Refresh,self)
end
--移除事件监听(用于子类重写)
function QiJieTreasure:RemoveListener()
Game.GlobalEvent:RemoveEvent(GameEvent.QiJieShiLian.BuySingleTreasure, self.Refresh,self)
end
--界面打开时调用(用于子类重写)
@ -73,8 +85,7 @@ function QiJieTreasure:SetTabBox()
end
local OnTabChange = function (index)
self.tabNum = index - 1
self:Refresh(self.tabNum)
self:Refresh(_TabData[index].quality)
end
self.TabCtrl = TabBox.New()
@ -84,8 +95,9 @@ function QiJieTreasure:SetTabBox()
end
function QiJieTreasure:Refresh(_tabNum)
LogRed("_tabNum:"..tostring(_tabNum))
self.dataList = QiJieShiLianManager.FormatTreasureData(_tabNum)
-- self.treasureNum.text = string.format( "%s/%s",#QiJieShiLianManager.treasureActiveList,#QiJieShiLianManager.treasureList)
self.treasureNum.text = string.format( "%s/%s",#QiJieShiLianManager.treasureActiveList,#QiJieShiLianManager.treasureList)
self.ScrollView:SetData(self.dataList, function(index, go)
self:SetSingleData(index,go,self.dataList[index])
end)
@ -98,8 +110,14 @@ function QiJieTreasure:SetSingleData(index,_go,_data)
obj:SetActive(true)
Util.GetGameObject(obj,"Name"):GetComponent("Text").text = _data[i].Name
local img = Util.GetGameObject(obj,"Image"):GetComponent("Image")
local imgLight = Util.GetGameObject(obj,"light"):GetComponent("Image")
local imgKuang = Util.GetGameObject(obj,"kuang"):GetComponent("Image")
img.sprite = self.spLoader:LoadSprite(artConfig[_data[i].Icon].Name)
Util.SetGray(img.gameObject,i%2==0)
imgLight.sprite = self.spLoader:LoadSprite(QUALITY[_data[i].Quality].light)
imgKuang.sprite = self.spLoader:LoadSprite(QUALITY[_data[i].Quality].kuang)
Util.SetGray(img.gameObject,_data[i].state == 2)
Util.SetGray(imgKuang.gameObject,_data[i].state == 2)
imgLight.gameObject:SetActive(_data[i].state == 1)
else
obj:SetActive(false)
end

View File

@ -286,14 +286,19 @@ function this:SetItem(direct,indirect)
end
end
function this:AddListener()
Game.GlobalEvent:AddEvent(GameEvent.QiJieShiLian.CloseBuyTreasure, self.CheckClose,self)
end
function this:RemoveListener()
Game.GlobalEvent:AddEvent(GameEvent.QiJieShiLian.CloseBuyTreasure, self.CheckClose,self)
end
--界面关闭时调用(用于子类重写)
function this:CheckClose()
if curType == 4 then
this:ClosePanel()
end
end
function this:OnClose()
for i = 1,#this.taskList do

View File

@ -22,7 +22,8 @@ function QiJieSingleTreasure:BindEvent()
Util.AddClick(self.activeBtn,function()
if BagManager.GetTotalItemNum(self.data.Cost[1])>=self.data.Cost[2] then
NetManager.SevenWorldRelicRequest(self.data.Id,function ()
self:Refresh()
Game.GlobalEvent:DispatchEvent(GameEvent.QiJieShiLian.BuySingleTreasure)
self.parent:ClosePanel()
end)
end
end)
@ -43,8 +44,8 @@ end
function QiJieSingleTreasure:Refresh()
self.title.text = self.data.Name
self.Img.sprite = self.spLoader:LoadSprite(artResourcesConfig[self.data.Icon].Name)
if self.data.state == 2 then
self.Img.sprite = self.spLoader:LoadSprite(artResourcesConfig[self.data.Icon].Name)
self.costIcon.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(self.data.Cost[1]))
local text1 = string.format( "%s/%s",BagManager.GetTotalItemNum(self.data.Cost[1]),self.data.Cost[2])
if BagManager.GetTotalItemNum(self.data.Cost[1]) < self.data.Cost[2] then
@ -56,7 +57,7 @@ function QiJieSingleTreasure:Refresh()
self.cost:SetActive(false)
if self.data.state == 1 then
self.activeText.text = "取消激活"
elseif self.data.state == 2 then
elseif self.data.state == 0 then
self.activeText.text = "激 活"
end
end

View File

@ -163,12 +163,12 @@ end
function this.FormatTreasureData(_tabNum)
local list = {}
for k,v in pairs(this.treasureList) do
list[k] = v
table.insert(list,v)
end
if _tabNum and _tabNum ~= 0 then
for k,v in pairs(list) do
if v.Quality ~= _tabNum then
table.remove(list,k)
if _tabNum and _tabNum > 0 then
for i = #list, 1,-1 do
if list[i].Quality ~= _tabNum then
table.remove(list,i)
end
end
end

View File

@ -168,7 +168,7 @@ function QiJieShiLianPanel:Refresh()
self.configData = self.qijieData.curStageData
-- LogGreen("当前层数Id:"..tostring(self.qijieData.curLevelId).." tempId:"..tostring(self.tempId))
local num = tonumber(ConfigManager.GetConfigData(ConfigName.SpecialConfig,128).Value)
self.giftBtn:SetActive(self.qijieData.curProgress >= num)
self.giftBtn:SetActive(true) --self.qijieData.curProgress >= num)
self.lastBtn:SetActive(not not QijieStage[QiJieShiLianManager.curLevelId-1])
self.nextBtn:SetActive(QiJieShiLianManager.curMaxStage~=QiJieShiLianManager.curLevelId)
self:SetTabBox()