This commit is contained in:
xiekaidong 2023-05-08 11:02:42 +08:00
parent cb0e613e47
commit 18c83cfa0c
9 changed files with 49 additions and 28 deletions

View File

@ -24,7 +24,11 @@ function DataManager:initManager(name, path)
if self[name] then if self[name] then
self._cacheManager[name] = self[name] self._cacheManager[name] = self[name]
end end
if name == "BattleData" and self._cacheManager[name] then
else
self[name] = require(path):create() self[name] = require(path):create()
end
end end
function DataManager:checkDataBind() function DataManager:checkDataBind()
@ -100,7 +104,7 @@ function DataManager:initWithServerData(data)
self.todayFirstLogin = data.today_first_login self.todayFirstLogin = data.today_first_login
-- self.PlayerData:init(data.PlayerData) -- self.PlayerData:init(data.PlayerData)
self.ChapterData:init(data.chapter) self.ChapterData:init(data.chapter)
self.HeroData:init(data.bag.heros) self.HeroData:init(data.bag.heroes)
self.BagData:init(data.bag) self.BagData:init(data.bag)
self.FormationData:init(data.fight_info) self.FormationData:init(data.fight_info)
self.TutorialData:init(data.guide) self.TutorialData:init(data.guide)

View File

@ -157,6 +157,8 @@ if NOT_PUBLISH then
[SDKManager.tryLoadRewardedAdDelay] = true, [SDKManager.tryLoadRewardedAdDelay] = true,
[ScrollRectBase.refillCells] = true, [ScrollRectBase.refillCells] = true,
[DataManager.scheduleGlobal] = true, [DataManager.scheduleGlobal] = true,
[NetManager.performWithDelayGlobal] = true,
[NetManager.scheduleGlobal] = true,
} }
end end
end end

View File

@ -685,13 +685,13 @@ function GFunc.mergeRewards2(rewards, newRewards)
local items = {} local items = {}
for i,v in ipairs(rewards) do for i,v in ipairs(rewards) do
if v.type == GConst.REWARD_TYPE.ITEM then if v.type == GConst.REWARD_TYPE.ITEM then
items[v.item.cfg_id] = (items[v.item.cfg_id] or 0) + v.item.count items[v.item.id] = (items[v.item.id] or 0) + v.item.count
elseif v.type == GConst.REWARD_TYPE.EQUIP then elseif v.type == GConst.REWARD_TYPE.EQUIP then
table.insert(newRewards, v) table.insert(newRewards, v)
end end
end end
for k,v in pairs(items) do for k,v in pairs(items) do
table.insert(newRewards, {type = GConst.REWARD_TYPE.ITEM, item = {cfg_id = k, count = v}}) table.insert(newRewards, {type = GConst.REWARD_TYPE.ITEM, item = {id = k, count = v}})
end end
end end
@ -744,7 +744,7 @@ function GFunc.getRewardsStr(rewards)
local itemStr = "" local itemStr = ""
for k, v in ipairs(rewards) do for k, v in ipairs(rewards) do
if v.type == GConst.REWARD_TYPE.ITEM then if v.type == GConst.REWARD_TYPE.ITEM then
itemStr = itemStr .. v.type .. "." .. v.item.cfg_id .. "." .. v.item.count itemStr = itemStr .. v.type .. "." .. v.item.id .. "." .. v.item.count
end end
if k ~= #rewards then if k ~= #rewards then
itemStr = itemStr.. "|" itemStr = itemStr.. "|"
@ -1604,7 +1604,7 @@ function GFunc.getRewardNum(reward)
if reward.num_for_nothing then if reward.num_for_nothing then
return CS.BF.Utils.GetRewardNumber(reward.num_for_nothing) return CS.BF.Utils.GetRewardNumber(reward.num_for_nothing)
else else
return reward.num return reward.num or reward.count
end end
end end

View File

@ -56,7 +56,7 @@ function ChapterManager:endFight(id, combatReport)
combatReport = combatReport, combatReport = combatReport,
} }
self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterSettlementReq, parmas, {}, self.startFightFinish, BIReport.ITEM_GET_TYPE.CHAPTER_FIGHT_END) self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterSettlementReq, parmas, {}, self.endFightFinish, BIReport.ITEM_GET_TYPE.CHAPTER_FIGHT_END)
end end
function ChapterManager:endFightFinish(result) function ChapterManager:endFightFinish(result)
@ -68,7 +68,7 @@ function ChapterManager:endFightFinish(result)
GFunc.mergeRewards2(result.rewards, newRewards) GFunc.mergeRewards2(result.rewards, newRewards)
end end
ModuleManager.BattleManager:showBattleResultUI(newRewards, reqData.combatReport) ModuleManager.BattleManager:showBattleResultUI(newRewards, reqData.combatReport)
DataManager.ChapterData:fightChapter(reqData.chapter_id, result.current_chapter_id, result.max_wave) DataManager.ChapterData:fightChapter(reqData.chapter_id, result.max_chapter_id, result.max_wave)
-- 处理金猪 -- 处理金猪
DataManager.GodPigData:addGoldPigCount() DataManager.GodPigData:addGoldPigCount()

View File

@ -1,9 +1,13 @@
local ProtoMsgType = { local ProtoMsgType = {
FromMsgId = { FromMsgId = {
[109633552] = "PigLevelDownNtf",
[109700242] = "PigLevelDownReq",
[109702075] = "PigLevelDownRsp",
[132242856] = "ChapterSettlementReq", [132242856] = "ChapterSettlementReq",
[132244689] = "ChapterSettlementRsp", [132244689] = "ChapterSettlementRsp",
[516281556] = "GuideFundMarkReq", [516281556] = "GuideFundMarkReq",
[516283389] = "GuideFundMarkRsp", [516283389] = "GuideFundMarkRsp",
[531558517] = "PigPlayUpdateNtf",
[565555292] = "MallPayNtf", [565555292] = "MallPayNtf",
[565621982] = "MallPayReq", [565621982] = "MallPayReq",
[565623815] = "MallPayRsp", [565623815] = "MallPayRsp",
@ -56,6 +60,7 @@ local ProtoMsgType = {
[3370486928] = "MonCardRewardRsp", [3370486928] = "MonCardRewardRsp",
[3421843875] = "TaskDailyRewardReq", [3421843875] = "TaskDailyRewardReq",
[3421845708] = "TaskDailyRewardRsp", [3421845708] = "TaskDailyRewardRsp",
[3440328467] = "PigLevelUpNtf",
[3450440933] = "BattlePassTaskRewardReq", [3450440933] = "BattlePassTaskRewardReq",
[3450442766] = "BattlePassTaskRewardRsp", [3450442766] = "BattlePassTaskRewardRsp",
[3607879254] = "AuthReq", [3607879254] = "AuthReq",
@ -72,10 +77,14 @@ local ProtoMsgType = {
[4256335780] = "ExistRsp", [4256335780] = "ExistRsp",
}, },
FromMsgToId = { FromMsgToId = {
PigLevelDownNtf = 109633552,
PigLevelDownReq = 109700242,
PigLevelDownRsp = 109702075,
ChapterSettlementReq = 132242856, ChapterSettlementReq = 132242856,
ChapterSettlementRsp = 132244689, ChapterSettlementRsp = 132244689,
GuideFundMarkReq = 516281556, GuideFundMarkReq = 516281556,
GuideFundMarkRsp = 516283389, GuideFundMarkRsp = 516283389,
PigPlayUpdateNtf = 531558517,
MallPayNtf = 565555292, MallPayNtf = 565555292,
MallPayReq = 565621982, MallPayReq = 565621982,
MallPayRsp = 565623815, MallPayRsp = 565623815,
@ -128,6 +137,7 @@ local ProtoMsgType = {
MonCardRewardRsp = 3370486928, MonCardRewardRsp = 3370486928,
TaskDailyRewardReq = 3421843875, TaskDailyRewardReq = 3421843875,
TaskDailyRewardRsp = 3421845708, TaskDailyRewardRsp = 3421845708,
PigLevelUpNtf = 3440328467,
BattlePassTaskRewardReq = 3450440933, BattlePassTaskRewardReq = 3450440933,
BattlePassTaskRewardRsp = 3450442766, BattlePassTaskRewardRsp = 3450442766,
AuthReq = 3607879254, AuthReq = 3607879254,
@ -144,10 +154,14 @@ local ProtoMsgType = {
ExistRsp = 4256335780, ExistRsp = 4256335780,
}, },
FromMsgEnum = { FromMsgEnum = {
PigLevelDownNtf = "PigLevelDownNtf",
PigLevelDownReq = "PigLevelDownReq",
PigLevelDownRsp = "PigLevelDownRsp",
ChapterSettlementReq = "ChapterSettlementReq", ChapterSettlementReq = "ChapterSettlementReq",
ChapterSettlementRsp = "ChapterSettlementRsp", ChapterSettlementRsp = "ChapterSettlementRsp",
GuideFundMarkReq = "GuideFundMarkReq", GuideFundMarkReq = "GuideFundMarkReq",
GuideFundMarkRsp = "GuideFundMarkRsp", GuideFundMarkRsp = "GuideFundMarkRsp",
PigPlayUpdateNtf = "PigPlayUpdateNtf",
MallPayNtf = "MallPayNtf", MallPayNtf = "MallPayNtf",
MallPayReq = "MallPayReq", MallPayReq = "MallPayReq",
MallPayRsp = "MallPayRsp", MallPayRsp = "MallPayRsp",
@ -200,6 +214,7 @@ local ProtoMsgType = {
MonCardRewardRsp = "MonCardRewardRsp", MonCardRewardRsp = "MonCardRewardRsp",
TaskDailyRewardReq = "TaskDailyRewardReq", TaskDailyRewardReq = "TaskDailyRewardReq",
TaskDailyRewardRsp = "TaskDailyRewardRsp", TaskDailyRewardRsp = "TaskDailyRewardRsp",
PigLevelUpNtf = "PigLevelUpNtf",
BattlePassTaskRewardReq = "BattlePassTaskRewardReq", BattlePassTaskRewardReq = "BattlePassTaskRewardReq",
BattlePassTaskRewardRsp = "BattlePassTaskRewardRsp", BattlePassTaskRewardRsp = "BattlePassTaskRewardRsp",
AuthReq = "AuthReq", AuthReq = "AuthReq",

View File

@ -15,7 +15,7 @@ function RewardCell:refresh(reward)
local id local id
if reward.type == GConst.REWARD_TYPE.ITEM then if reward.type == GConst.REWARD_TYPE.ITEM then
self:_refreshItem(reward.item) self:_refreshItem(reward.item)
id = reward.item.cfg_id or reward.item.id id = reward.item.id
end end
if id then if id then
self:addClickListener(function() self:addClickListener(function()
@ -43,7 +43,7 @@ function RewardCell:refreshByConfig(reward, mask, check)
end end
function RewardCell:_refreshItem(item) function RewardCell:_refreshItem(item)
local info = ConfigManager:getConfig("item")[item.cfg_id or item.id] local info = ConfigManager:getConfig("item")[item.id]
if info == nil then if info == nil then
return return
end end

View File

@ -65,7 +65,7 @@ end
function RewardBox:_refreshScrollRect(onlyRefresh) function RewardBox:_refreshScrollRect(onlyRefresh)
for i,v in ipairs(self.params.rewards) do for i,v in ipairs(self.params.rewards) do
if self.params.rewards[i].type == GConst.REWARD_TYPE.ITEM then if self.params.rewards[i].type == GConst.REWARD_TYPE.ITEM then
local id = self.params.rewards[i].item.id or self.params.rewards[i].item.cfg_id local id = self.params.rewards[i].item.id or self.params.rewards[i].item.id
if id == GConst.ItemConst.ITEM_ID_GOLD or if id == GConst.ItemConst.ITEM_ID_GOLD or
id == GConst.ItemConst.ITEM_ID_GEM or id == GConst.ItemConst.ITEM_ID_GEM or
id == GConst.ItemConst.ITEM_ID_VIT id == GConst.ItemConst.ITEM_ID_VIT

View File

@ -7,7 +7,7 @@ local RECOVERY_TYPE_DAILY = 2
local SECONDS_PRE_DAY = 86400 local SECONDS_PRE_DAY = 86400
local CACHE_ITEM = { local CACHE_ITEM = {
cfg_id = 0, id = 0,
count = 0 count = 0
} }
@ -43,7 +43,7 @@ function ItemData:init(data)
local recoveryInfo = recoveryCfg[v.id] local recoveryInfo = recoveryCfg[v.id]
if recoveryInfo then if recoveryInfo then
local obj = { local obj = {
cfg_id = v.id, id = v.id,
ts = v.ts, ts = v.ts,
limit = recoveryInfo.limit, limit = recoveryInfo.limit,
recoveryType = recoveryInfo.type, recoveryType = recoveryInfo.type,
@ -95,13 +95,13 @@ function ItemData:getVit()
end end
function ItemData:addItemReward(item, itemGetType) function ItemData:addItemReward(item, itemGetType)
CACHE_ITEM.cfg_id = GFunc.getRewardId(item) CACHE_ITEM.id = GFunc.getRewardId(item)
CACHE_ITEM.count = GFunc.getRewardNum(item) CACHE_ITEM.count = GFunc.getRewardNum(item)
self:addItem(CACHE_ITEM, itemGetType) self:addItem(CACHE_ITEM, itemGetType)
end end
function ItemData:addItemCost(cost, itemGetType) function ItemData:addItemCost(cost, itemGetType)
CACHE_ITEM.cfg_id = GFunc.getRewardId(cost) CACHE_ITEM.id = GFunc.getRewardId(cost)
CACHE_ITEM.count = -GFunc.getRewardNum(cost) CACHE_ITEM.count = -GFunc.getRewardNum(cost)
self:addItem(CACHE_ITEM, itemGetType) self:addItem(CACHE_ITEM, itemGetType)
end end
@ -132,20 +132,20 @@ function ItemData:addItem(data, itemGetType)
end end
end end
self:_addItemNumById(data.cfg_id, data.count) self:_addItemNumById(data.id, data.count)
if data.cfg_id == GConst.ItemConst.ITEM_ID_GEM or data.cfg_id == GConst.ItemConst.ITEM_ID_GOLD then if data.id == GConst.ItemConst.ITEM_ID_GEM or data.id == GConst.ItemConst.ITEM_ID_GOLD then
if data.count < 0 then if data.count < 0 then
BIReport:postGemUse(data.count, itemGetType, data.cfg_id) BIReport:postGemUse(data.count, itemGetType, data.id)
else else
BIReport:postGemGet(data.count, itemGetType, data.cfg_id) BIReport:postGemGet(data.count, itemGetType, data.id)
end end
if data.cfg_id == GConst.ItemConst.ITEM_ID_GEM then if data.id == GConst.ItemConst.ITEM_ID_GEM then
CS.ThinkingAnalytics.ThinkingAnalyticsAPI.UserAdd("user_gem", data.count) CS.ThinkingAnalytics.ThinkingAnalyticsAPI.UserAdd("user_gem", data.count)
elseif data.cfg_id == GConst.ItemConst.ITEM_ID_GOLD then elseif data.id == GConst.ItemConst.ITEM_ID_GOLD then
CS.ThinkingAnalytics.ThinkingAnalyticsAPI.UserAdd("user_gold", data.count) CS.ThinkingAnalytics.ThinkingAnalyticsAPI.UserAdd("user_gold", data.count)
end end
elseif data.cfg_id == GConst.ItemConst.ITEM_ID_VIT then elseif data.id == GConst.ItemConst.ITEM_ID_VIT then
if data.count < 0 then if data.count < 0 then
BIReport:postVitUse(data.count) BIReport:postVitUse(data.count)
else else
@ -153,15 +153,15 @@ function ItemData:addItem(data, itemGetType)
end end
else else
if data.count < 0 then if data.count < 0 then
BIReport:postItemUse(data.count, data.cfg_id, itemGetType) BIReport:postItemUse(data.count, data.id, itemGetType)
else else
BIReport:postItemGet(data.count, data.cfg_id, itemGetType) BIReport:postItemGet(data.count, data.id, itemGetType)
end end
end end
end end
function ItemData:addItemNumById(id, num, itemGetType) function ItemData:addItemNumById(id, num, itemGetType)
CACHE_ITEM.cfg_id = id CACHE_ITEM.id = id
CACHE_ITEM.count = num CACHE_ITEM.count = num
self:addItem(CACHE_ITEM, itemGetType) self:addItem(CACHE_ITEM, itemGetType)
end end
@ -218,7 +218,7 @@ end
-- 按时间回复的在此回复 -- 按时间回复的在此回复
function ItemData:recoveryItem(data) function ItemData:recoveryItem(data)
-- 计算已经达到上限 -- 计算已经达到上限
local itemId = data.cfg_id local itemId = data.id
local currNum = self:getItemNumById(itemId) local currNum = self:getItemNumById(itemId)
if currNum >= data.limit then if currNum >= data.limit then
return return
@ -251,7 +251,7 @@ function ItemData:recoveryDailyItem(data)
if nowTime < data.ts then if nowTime < data.ts then
return return
end end
local itemId = data.cfg_id local itemId = data.id
local currNum = self:getItemNumById(itemId) local currNum = self:getItemNumById(itemId)
if currNum < data.limit then if currNum < data.limit then
self:addItemNumById(itemId, data.limit - currNum, BIReport.ITEM_GET_TYPE.CROSS_DAY) self:addItemNumById(itemId, data.limit - currNum, BIReport.ITEM_GET_TYPE.CROSS_DAY)

View File

@ -270,7 +270,7 @@ function BattleData:clearGridSequence()
end end
function BattleData:getGridEnties() function BattleData:getGridEnties()
return self.gridEntities return self.gridEntities or {}
end end
function BattleData:getGridEntity(posId) function BattleData:getGridEntity(posId)