miduo_client/Assets/ManagedResources/~Lua/Modules/NewActivity/CommonActPageManager.lua

502 lines
24 KiB
Lua
Raw Normal View History

CommonActPageManager = {}
2021-04-16 14:58:40 +08:00
local this = CommonActPageManager
2021-04-16 16:21:34 +08:00
local dataList = {}
2021-04-25 15:07:36 +08:00
this.TaSuiLingXiaoMsg = nil
2021-04-26 16:20:22 +08:00
this.TaSuiLingXiaoHistoryDmg = 0
2021-07-24 18:13:40 +08:00
this.DynamicActType = 0
2021-04-16 14:58:40 +08:00
function this.Initialize()
end
2021-04-20 11:17:50 +08:00
--初始化活动的特殊数据
2021-04-21 11:37:55 +08:00
local TypeUpdateFunc = {
2021-04-20 11:17:50 +08:00
[ActivityTypeDef.YunYouShangRen] = function ()
local curData = dataList[ActivityTypeDef.YunYouShangRen]
local configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.ComposeActivity,"ActivityId",curData.activityId)
for i = 1, #curData.rewards do
for j = 1, #configData do
if curData.rewards[i].missionId == configData[j].Id then
curData.rewards[i].otherData.needItems = configData[j].NeedItems
curData.rewards[i].otherData.count = configData[j].Count
curData.rewards[i].otherData.composeType = configData[j].ComposeType
curData.rewards[i].otherData.selectId = 0
end
end
end
2021-04-21 11:37:55 +08:00
table.sort(dataList[ActivityTypeDef.YunYouShangRen].rewards,function (a,b)
2021-04-27 20:44:45 +08:00
if a.progress == 0 and b.progress > 0 then
return false
2021-04-21 11:37:55 +08:00
end
2021-04-27 20:44:45 +08:00
if a.progress > 0 and b.progress == 0 then
return true
end
return a.missionId < b.missionId
-- if a.progress == b.progress then
-- else
-- return a.progress > b.progress
-- end
2021-04-21 11:37:55 +08:00
end)
2021-04-20 20:32:36 +08:00
end,
[ActivityTypeDef.ContinuityRecharge] = function ()
this.GetExpertData(3,ActivityTypeDef.ContinuityRecharge)
end,
[ActivityTypeDef.UpStarExper] = function ()--进阶达人
this.GetExpertData(1,ActivityTypeDef.UpStarExper)
end,
[ActivityTypeDef.Talisman] = function ()--法宝达人
this.GetExpertData(1,ActivityTypeDef.Talisman)
end,
[ActivityTypeDef.SoulPrint] = function ()--魂印达人
this.GetExpertData(1,ActivityTypeDef.SoulPrint)
end,
[ActivityTypeDef.EquipExper] = function ()--装备达人
this.GetExpertData(1,ActivityTypeDef.EquipExper)
end,
[ActivityTypeDef.EnergyExper] = function ()--体力达人
this.GetExpertData(2,ActivityTypeDef.EnergyExper)
end,
[ActivityTypeDef.FindTreasureExper] = function ()--寻宝达人
this.GetExpertData(1,ActivityTypeDef.FindTreasureExper)
end,
[ActivityTypeDef.ExpeditionExper] = function ()--天宫达人
this.GetExpertData(1,ActivityTypeDef.ExpeditionExper)
end,
[ActivityTypeDef.FastExplore] = function ()--极速达人
this.GetExpertData(2,ActivityTypeDef.FastExplore)
end,
[ActivityTypeDef.GoldExper] = function ()--点金达人
this.GetExpertData(2,ActivityTypeDef.GoldExper)
end,
[ActivityTypeDef.FightExper] = function ()--副本达人
this.GetExpertData(2,ActivityTypeDef.FightExper)
end,
[ActivityTypeDef.AreaExper] = function ()
this.GetExpertData(2,ActivityTypeDef.AreaExper)
end,
[ActivityTypeDef.slhjExper] = function ()--森罗幻境达人
this.GetExpertData(2,ActivityTypeDef.slhjExper)
end,
[ActivityTypeDef.LuckyTurnExper] = function ()--探宝达人
this.GetExpertData(2,ActivityTypeDef.LuckyTurnExper)
end,
[ActivityTypeDef.RecruitExper] = function ()--征募达人
this.GetExpertData(2,ActivityTypeDef.RecruitExper)
end,
[ActivityTypeDef.SecretBoxExper] = function ()--秘宝达人
this.GetExpertData(2,ActivityTypeDef.SecretBoxExper)
end,
[ActivityTypeDef.AccumulativeRechargeExper] = function ()---日累计充值
2021-05-19 10:56:30 +08:00
local curData = dataList[ActivityTypeDef.AccumulativeRechargeExper]
local configData = ConfigManager.GetConfigData(ConfigName.GlobalActivity,curData.activityId)
if configData.ShowArt == FUNCTION_OPEN_TYPE.EXPERT then
this.GetExpertData(2,ActivityTypeDef.AccumulativeRechargeExper)
else
this.GetMissionData(1,ActivityTypeDef.AccumulativeRechargeExper)
2021-05-19 10:56:30 +08:00
end
2021-04-20 20:32:36 +08:00
end,
[ActivityTypeDef.UpLvAct] = function ()---升级限时
this.GetExpertData(4,ActivityTypeDef.UpLvAct)
end,
[ActivityTypeDef.DynamicAct_recharge] = function ()---周累计充值
this.GetMissionData(1,ActivityTypeDef.DynamicAct_recharge)
2021-04-20 20:32:36 +08:00
end,
2021-04-23 15:39:46 +08:00
[ActivityTypeDef.TaSuiLingXiao] = function ()--踏碎凌霄
local curData = dataList[ActivityTypeDef.TaSuiLingXiao]
local configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId",curData.activityId)
for i = 1, #curData.rewards do
for j = 1, #configData do
if curData.rewards[i].missionId == configData[j].Id then
2021-04-25 15:07:36 +08:00
curData.rewards[i].otherData.Values = configData[j].Values
curData.rewards[i].otherData.Reward = configData[j].Reward
curData.rewards[i].otherData.Sort = configData[j].Sort
2021-04-23 15:39:46 +08:00
end
end
end
2021-04-27 18:02:51 +08:00
table.sort(curData.rewards,function (a,b)
if a.state == b.state then
return a.missionId < b.missionId
else
return a.state < b.state
end
end)
end,
[ActivityTypeDef.DynamicAct] = function ()--主题活动任务
local curData = dataList[ActivityTypeDef.DynamicAct]
this.InitTaskData(curData,TaskTypeDef.DynamicActTask,ConfigName.ThemeActivityTaskConfig)
end,
2021-07-23 11:27:28 +08:00
[ActivityTypeDef.ChaoFanRuSheng] = function ()--超凡入圣
2021-06-17 17:18:42 +08:00
local curData = dataList[ActivityTypeDef.ChaoFanRuSheng]
2021-06-18 10:50:04 +08:00
this.InitMissionDdataUpStar(curData)
2021-06-17 17:18:42 +08:00
end,
2021-06-17 15:26:10 +08:00
[ActivityTypeDef.SurpriseBox] = function ()--惊喜礼盒
local curData = dataList[ActivityTypeDef.SurpriseBox]
local configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.SurpriseBoxConfig,"ActivityId",curData.activityId)
local rechargeConfig = ConfigManager.GetConfig(ConfigName.RechargeCommodityConfig)
for i = 1, #curData.rewards do
for j = 1, #configData do
if curData.rewards[i].missionId == configData[j].Id then
curData.rewards[i].otherData.PackId = configData[j].PackId
curData.rewards[i].otherData.BuyDay = configData[j].BuyDay
curData.rewards[i].otherData.Name = rechargeConfig[configData[j].PackId].Name
curData.rewards[i].otherData.Reward = rechargeConfig[configData[j].PackId].RewardShow
curData.rewards[i].otherData.Price = rechargeConfig[configData[j].PackId].Price
curData.rewards[i].otherData.Warning = configData[j].Warning
2021-06-18 17:52:09 +08:00
curData.rewards[i].otherData.Rule = configData[j].Rule
2021-06-17 15:26:10 +08:00
end
end
end
2021-06-17 17:43:56 +08:00
for i = #curData.rewards, 1,-1 do
if curData.rewards[i].progress == 5 then
table.remove(curData.rewards,i)
end
end
2021-07-19 13:51:57 +08:00
table.sort(curData.rewards,function (a,b)
return a.otherData.PackId < b.otherData.PackId
end)
2021-06-17 15:26:10 +08:00
end,
2021-06-30 18:38:20 +08:00
[ActivityTypeDef.TeHuiShenZhuang] = function ()--特惠神装
local curData = dataList[ActivityTypeDef.TeHuiShenZhuang]
local configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.SurpriseBoxConfig,"ActivityId",curData.activityId)
local rechargeConfig = ConfigManager.GetConfig(ConfigName.RechargeCommodityConfig)
for i = 1, #curData.rewards do
for j = 1, #configData do
if curData.rewards[i].missionId == configData[j].Id then
curData.rewards[i].otherData.PackId = configData[j].PackId
curData.rewards[i].otherData.Name = rechargeConfig[configData[j].PackId].Name
curData.rewards[i].otherData.Reward = rechargeConfig[configData[j].PackId].RewardShow
curData.rewards[i].otherData.Price = rechargeConfig[configData[j].PackId].Price
2021-07-01 19:56:28 +08:00
curData.rewards[i].otherData.skinArtId = tonumber(configData[1].Warning)
2021-07-05 10:57:47 +08:00
curData.rewards[i].otherData.canBuyDay = configData[j].BuyDay - curData.value
2021-06-30 18:38:20 +08:00
end
end
end
table.sort(curData.rewards,function (a,b)
return a.missionId < b.missionId
end)
end,
2021-07-14 11:33:33 +08:00
--山河试炼
[ActivityTypeDef.ShanHeShiLian] = function ()--山河试炼
local curData = dataList[ActivityTypeDef.ShanHeShiLian]
local configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId",curData.activityId)
for i = 1, #curData.rewards do
for j = 1, #configData do
if curData.rewards[i].missionId == configData[j].Id then
curData.rewards[i].otherData.Values = configData[j].Values
curData.rewards[i].otherData.Reward = configData[j].Reward
curData.rewards[i].otherData.Sort = configData[j].Sort
end
end
end
table.sort(curData.rewards,function (a,b)
if a.state == b.state then
2021-07-15 16:08:39 +08:00
return a.otherData.Sort < b.otherData.Sort
2021-07-14 11:33:33 +08:00
else
return a.state < b.state
end
end)
end,
[ActivityTypeDef.XunBaoMiZong] = function () --寻宝迷踪
local curData = dataList[ActivityTypeDef.XunBaoMiZong]
2021-09-16 14:05:07 +08:00
local DiamondBoxContain = ConfigManager.GetConfigDataByKey(ConfigName.LotterySetting,"ActivityId",curData.activityId).DiamondBoxContain[1][1]
local rewards = ConfigManager.GetAllConfigsDataByKey(ConfigName.LotteryRewardConfig,"Pool",DiamondBoxContain)
local weightAll = 0
for i = 1, #rewards do
weightAll = weightAll + rewards[i].WeightShow
end
for i = 1, #rewards do
local data = {}
data.Id = rewards[i].Id
data.Reward = rewards[i].Reward
data.ItemName = rewards[i].ItemName
data.WeightShow = string.format("%.2f",rewards[i].WeightShow/weightAll*100).."%" --rewards[i].WeightShow/weightAll*100.."%"
table.insert(curData.FreelyData,data)
end
table.sort(curData.FreelyData,function (a,b)
return a.Id < b.Id
end)
end
2021-04-20 11:17:50 +08:00
}
2021-06-18 10:50:04 +08:00
function this.InitMissionDdataUpStar(curData)
local actRewardConfigs = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId", curData.activityId)
for i = 1, #curData.rewards do
for j = 1, #actRewardConfigs do
if curData.rewards[i].missionId == actRewardConfigs[j].Id then
curData.rewards[i].state = curData.rewards[i].state
curData.rewards[i].targetId = actRewardConfigs[j].Values[1][1]
curData.rewards[i].targetStar = actRewardConfigs[j].Values[1][2]
curData.rewards[i].targetNum = actRewardConfigs[j].Values[2][1]
2021-06-18 18:24:04 +08:00
curData.rewards[i].heroShows = {[1] = {curData.rewards[i].targetId,0,nil,curData.rewards[i].targetStar}}
2021-06-18 10:50:04 +08:00
curData.rewards[i].giftId = actRewardConfigs[j].Values[3][1]
curData.rewards[i].giftConfig = ConfigManager.GetConfigData(ConfigName.RechargeCommodityConfig,curData.rewards[i].giftId)
curData.rewards[i].giftShows = curData.rewards[i].giftConfig.RewardShow
curData.rewards[i].giftData = OperatingManager.GetGiftGoodsInfo(curData.rewards[i].giftConfig.Type,curData.rewards[i].giftId)
2021-06-18 18:24:04 +08:00
curData.rewards[i].freeShows = actRewardConfigs[j].Reward
2021-06-18 10:50:04 +08:00
break
end
end
end
end
function this.InitTaskData(curData,taskType,configName)
local allListData = ConfigManager.GetAllConfigsDataByKey(configName, "ActivityId", curData.activityId)
local allMissionData = TaskManager.GetTypeTaskList(taskType)
2021-07-26 15:07:49 +08:00
Log("this.DynamicActType:"..this.DynamicActType)
for i=1,#allListData do
for j=1,#allMissionData do
2021-07-26 09:48:18 +08:00
-- LogGreen("this.DynamicActType:"..this.DynamicActType)
2021-07-24 19:33:54 +08:00
if allListData[i].Id == allMissionData[j].missionId and (this.DynamicActType == 0 or allListData[i].Type == this.DynamicActType) then
local data = {}
data.missionId = allMissionData[j].missionId
data.taskType = taskType
local strs = string.split(GetLanguageStrById(allListData[i].Show),"#")
data.progress = allMissionData[j].progress
data.value = allListData[i].TaskValue[2][1]
data.state = allMissionData[j].state
if data.state == 2 or data.state == 1 then
data.itemName = string.format("%s(%s/%s)",strs[1],data.value,data.value)
else
data.itemName = string.format("%s(%s/%s)",strs[1],(data.progress > data.value and data.value or data.progress),data.value)
end
data.content = strs[2]
data.shows = {
[1] = {
allListData[i].Integral[1][1],
allListData[i].Integral[1][2]
},
}
data.type = allListData[i].Type
data.jump = allListData[i].Jump[1]
-- LogGreen("missionId:"..tostring(data.missionId).." taskType:"..tostring(data.taskType).." itemName:"..tostring(data.itemName))
table.insert(curData.rewards,data)
end
end
end
local typeIndex = {
[0] = 1,
[1] = 0,
[2] = 2,
}
table.sort(curData.rewards, function(a,b)
if typeIndex[a.state] == typeIndex[b.state] then
if a.type == b.type then
return a.missionId < b.missionId
else
return a.type < b.type
end
else
return typeIndex[a.state] < typeIndex[b.state]
end
end)
end
function this.GetMissionData(indexType,actType)
local curData = dataList[actType]
local actId = ActivityGiftManager.GetActivityIdByType(actType)
local actRewardConfigs = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId", actId)
for i = 1, #curData.rewards do
for j = 1, #actRewardConfigs do
if curData.rewards[i].missionId == actRewardConfigs[j].Id then
if indexType == 2 then
curData.rewards[i].progress = curData.rewards[i].progress
else
curData.rewards[i].progress = curData.value
end
2021-05-19 10:56:30 +08:00
if actType == ActivityTypeDef.DynamicAct_recharge or actType == ActivityTypeDef.AccumulativeRechargeExper then
curData.rewards[i].value = actRewardConfigs[j].Values[1][1]
else
curData.rewards[i].value = actRewardConfigs[j].Values[2][1]
end
if curData.rewards[i].state == 1 then
curData.rewards[i].state = 2
else
if curData.rewards[i].progress < curData.rewards[i].value then
curData.rewards[i].state = 0
else
curData.rewards[i].state = 1
end
end
curData.rewards[i].title = string.format("累计充值金额:%s元",curData.rewards[i].value)
curData.rewards[i].buyInfo = string.format("(%s/%s)",curData.rewards[i].progress,curData.rewards[i].value)
curData.rewards[i].shows = actRewardConfigs[j].Reward
curData.rewards[i].jump = actRewardConfigs[j].Jump[1]
end
end
end
local typeIndex = {
[0] = 1,
[1] = 0,
[2] = 2,
}
table.sort(dataList[actType].rewards,function (a,b)
if typeIndex[a.state] == typeIndex[b.state] then
return a.missionId < b.missionId
else
return typeIndex[a.state] < typeIndex[b.state]
end
end)
end
2021-04-20 20:32:36 +08:00
function this.GetExpertData(indexType,actType)
local curData = dataList[actType]
2021-04-21 11:37:55 +08:00
local actId = ActivityGiftManager.GetActivityIdByType(actType)
local actRewardConfigs = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId", actId)
2021-04-20 20:32:36 +08:00
for i = 1, #curData.rewards do
for j = 1, #actRewardConfigs do
if curData.rewards[i].missionId == actRewardConfigs[j].Id then
2021-04-20 20:32:36 +08:00
if indexType == 3 then -- 3 积天豪礼
curData.rewards[i].otherData.Values = actRewardConfigs[j].Values[1][2]
2021-04-26 18:46:19 +08:00
curData.rewards[i].otherData.info = ""
2021-04-20 20:32:36 +08:00
if curData.rewards[i].state == 1 then
curData.rewards[i].otherData.state = 2
elseif curData.rewards[i].progress == 1 then
curData.rewards[i].otherData.state = 0
2021-04-21 11:37:55 +08:00
else
curData.rewards[i].otherData.state = 1
2021-04-20 20:32:36 +08:00
end
elseif indexType == 4 then --升级限量豪礼
curData.rewards[i].otherData.Values = actRewardConfigs[j].Values[2][1]
curData.rewards[i].otherData.info = ""
if curData.rewards[i].state == 1 then
curData.rewards[i].otherData.state = 2
else
if curData.rewards[i].progress > 0 then
if PlayerManager.level >= curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.state = 0
else
curData.rewards[i].otherData.state = 1
end
else
curData.rewards[i].otherData.state = 3
end
if PlayerManager.level >= curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].otherData.Values,curData.rewards[i].otherData.Values)
else
curData.rewards[i].otherData.info = string.format("%s/%s",PlayerManager.level,curData.rewards[i].otherData.Values)
end
end
2021-07-14 11:33:33 +08:00
if PlayerManager.level >= curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].otherData.Values,curData.rewards[i].otherData.Values)
else
curData.rewards[i].otherData.info = string.format("%s/%s",PlayerManager.level,curData.rewards[i].otherData.Values)
end
2021-04-20 20:32:36 +08:00
else --日累计充值 达人
if actType == ActivityTypeDef.AccumulativeRechargeExper or actType == ActivityTypeDef.DynamicAct_recharge then
2021-04-20 20:32:36 +08:00
curData.rewards[i].otherData.Values = actRewardConfigs[j].Values[1][1]
2021-04-21 11:37:55 +08:00
else
2021-04-20 20:32:36 +08:00
curData.rewards[i].otherData.Values = actRewardConfigs[j].Values[2][1]
end
if curData.rewards[i].state == 1 then
curData.rewards[i].otherData.state = 2
2021-04-21 11:37:55 +08:00
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].otherData.Values,curData.rewards[i].otherData.Values)
2021-04-20 20:32:36 +08:00
else
if indexType == 1 then
if curData.rewards[i].progress < curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.state = 1
2021-04-21 11:37:55 +08:00
else
curData.rewards[i].otherData.state = 0
2021-04-20 20:32:36 +08:00
end
2021-04-21 11:37:55 +08:00
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].progress,curData.rewards[i].otherData.Values)
2021-04-27 17:05:53 +08:00
if curData.rewards[i].progress > curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].otherData.Values,curData.rewards[i].otherData.Values)
end
2021-04-20 20:32:36 +08:00
elseif indexType == 2 then
2021-04-21 11:37:55 +08:00
-- LogPink("curData.value:"..tostring(curData.value).." "..tostring(curData.rewards[i].otherData.Values))
2021-04-20 20:32:36 +08:00
if curData.value < curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.state = 1
2021-04-21 11:37:55 +08:00
else
curData.rewards[i].otherData.state = 0
2021-04-20 20:32:36 +08:00
end
curData.rewards[i].otherData.info = string.format("%s/%s",curData.value,curData.rewards[i].otherData.Values)
2021-04-27 17:05:53 +08:00
if curData.value > curData.rewards[i].otherData.Values then
curData.rewards[i].otherData.info = string.format("%s/%s",curData.rewards[i].otherData.Values,curData.rewards[i].otherData.Values)
end
2021-04-20 20:32:36 +08:00
end
end
end
curData.rewards[i].otherData.Reward = actRewardConfigs[j].Reward
curData.rewards[i].otherData.ContentsShow = actRewardConfigs[j].ContentsShow
curData.rewards[i].otherData.Sort = actRewardConfigs[j].Sort
if actRewardConfigs[j].Jump then
curData.rewards[i].otherData.Jump = actRewardConfigs[j].Jump[1]
end
2021-04-20 20:32:36 +08:00
end
end
end
2021-04-22 15:53:47 +08:00
table.sort(dataList[actType].rewards,function (a,b)
if a.state == b.state then
return a.missionId < b.missionId
else
return a.state < b.state
end
end)
2021-04-20 20:32:36 +08:00
end
2021-04-16 14:58:40 +08:00
function this.GetData(actType)
if dataList[actType] then
dataList[actType] = nil
2021-04-16 14:58:40 +08:00
end
dataList[actType] = this.InitSingleTypeData(actType)
if TypeUpdateFunc[actType] and dataList[actType] then
2021-04-20 16:43:16 +08:00
TypeUpdateFunc[actType]()
end
2021-04-17 14:01:12 +08:00
return dataList[actType]
2021-04-16 14:58:40 +08:00
end
2021-04-16 16:21:34 +08:00
function this.InitSingleTypeData(actType)
local singleTypeData = nil
2021-04-17 14:01:12 +08:00
local data = ActivityGiftManager.GetActivityTypeInfo(actType)
if data then
singleTypeData = {}
2021-07-01 16:33:40 +08:00
Log("初始化数据activityId:"..tostring(data.activityId).." value:"..tostring(data.value).." startTime:"..tostring(data.startTime).." endTime:"..tostring(data.endTime).." mission:"..tostring(#data.mission))
singleTypeData.activityId = data.activityId --活动ID
singleTypeData.value = data.value --value值
singleTypeData.startTime = data.startTime --开始时间
singleTypeData.endTime = data.endTime --结束时间
singleTypeData.rewards = {} --奖励数据
if data.mission and #data.mission > 0 then
for i = 1, #data.mission do
local reward = {}
reward.missionId = data.mission[i].missionId or 0 --任务Id
reward.progress = data.mission[i].progress or 0 --进度
reward.state = data.mission[i].state or 0 --状态
reward.otherData = {} --其他数据(单条奖励信息或显示文字)
table.insert(singleTypeData.rewards,reward)
2021-04-19 19:44:54 +08:00
end
2021-04-17 14:01:12 +08:00
end
singleTypeData.FreelyData = {} --其他信息(整个活动的一些信息)
end
return singleTypeData
2021-04-16 14:58:40 +08:00
end
2021-04-22 10:59:32 +08:00
function this.CheckSingleRed(data)
local NeedCost = ConfigManager.GetConfigData(ConfigName.ComposeBook,data.otherData.needItems[1]).NeedCost
if data.progress > 0 then
if BagManager.GetTotalItemNum(NeedCost[1][1]) >= NeedCost[1][2] then
local list = BagManager.GetBagItemDataByItemType(ItemBaseType.Equip)
local EquipedEquipList = HeroManager.GetEquipedEquipList()
for i = 1, #data.otherData.needItems do
for j = 1, #list do
if data.otherData.needItems[i] == list[j].itemConfig.Id then
return true
end
2021-04-22 10:59:32 +08:00
end
end
for i = 1, #data.otherData.needItems do
for j = 1, #EquipedEquipList do
if data.otherData.needItems[i] == EquipedEquipList[j] then
return true
end
2021-04-22 10:59:32 +08:00
end
end
end
end
return false
end
2021-04-16 14:58:40 +08:00
return CommonActPageManager