619 lines
18 KiB
Lua
619 lines
18 KiB
Lua
|
------------------------------------------------
|
|||
|
-- 作者: 王圣
|
|||
|
-- 日期: 2019-07-15
|
|||
|
-- 文件: GrowthWaySystem.lua
|
|||
|
-- 模块: GrowthWaySystem
|
|||
|
-- 描述: 成长之路系统类
|
|||
|
------------------------------------------------
|
|||
|
-- 引用
|
|||
|
local TaskData = require "Logic.GrowthWay.GrowthWayTaskData"
|
|||
|
local TreasureData = require "Logic.GrowthWay.GrowthWayTreasureData"
|
|||
|
local AttrData = require "Logic.GrowthWay.GrowthWayAttrData"
|
|||
|
local TimeUtils = CS.Thousandto.Core.Base.TimeUtils;
|
|||
|
local GrowthWaySystem = {
|
|||
|
-- 第几天
|
|||
|
CurDay = 0,
|
|||
|
-- 活动剩余时间
|
|||
|
LeftTime = 0,
|
|||
|
SyncTime = 0,
|
|||
|
-- 法宝道具Id
|
|||
|
FbItemId = 0,
|
|||
|
-- 当前星星个数
|
|||
|
CurStarNum = 0,
|
|||
|
-- 宝箱奖励
|
|||
|
ListTreasure = nil,
|
|||
|
-- 每日任务
|
|||
|
DicDailyTask = Dictionary:New(),
|
|||
|
-- 菜单红点
|
|||
|
DicMenuRedPoint = Dictionary:New(),
|
|||
|
|
|||
|
IsShowModel = false,
|
|||
|
ShowModelId = 0
|
|||
|
}
|
|||
|
|
|||
|
-- 初始化排行榜Cfg
|
|||
|
function GrowthWaySystem:Initialize()
|
|||
|
self.DicDailyTask:Clear()
|
|||
|
self.DicMenuRedPoint:Clear()
|
|||
|
DataConfig.DataNewSeverGrowup:Foreach(function(k, v)
|
|||
|
local task = TaskData:New()
|
|||
|
task:Parase(v)
|
|||
|
local key = v.Day
|
|||
|
local list = nil
|
|||
|
if self.DicDailyTask:ContainsKey(key) then
|
|||
|
list = self.DicDailyTask[key]
|
|||
|
list:Add(task)
|
|||
|
else
|
|||
|
list = List:New()
|
|||
|
list:Add(task)
|
|||
|
self.DicDailyTask:Add(key, list)
|
|||
|
end
|
|||
|
end)
|
|||
|
self.TimerEventId = GameCenter.TimerEventSystem:AddTimeStampDayEvent(10, 10, true, nil,
|
|||
|
function(id, remainTime, param)
|
|||
|
-- 跨天了 重新获取一下开服时间
|
|||
|
self.CurDay = Time.GetOpenSeverDay()
|
|||
|
end)
|
|||
|
|
|||
|
-- 初始化菜单按钮红点
|
|||
|
for i = 1, GrowthWayType.Count - 1 do
|
|||
|
self.DicMenuRedPoint:Add(i, false)
|
|||
|
end
|
|||
|
-- 设置法宝信息
|
|||
|
self:SetFaBaoInfo()
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:UnInitialize()
|
|||
|
self.ListTreasure = nil
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:GetListTreasure()
|
|||
|
if self.ListTreasure == nil then
|
|||
|
self.ListTreasure = List:New()
|
|||
|
-- 宝箱奖励配置初始化
|
|||
|
DataConfig.DataNewSeverGrowuprew:Foreach(function(k, v)
|
|||
|
local treasure = TreasureData:New()
|
|||
|
treasure:Parase(v)
|
|||
|
self.ListTreasure:Add(treasure)
|
|||
|
end)
|
|||
|
end
|
|||
|
return self.ListTreasure
|
|||
|
end
|
|||
|
|
|||
|
-- 获取对应key奖励的总分
|
|||
|
function GrowthWaySystem:GetTasksScore(key)
|
|||
|
local score = 0
|
|||
|
if self.DicDailyTask:ContainsKey(key) then
|
|||
|
local tasks = self.DicDailyTask[key]
|
|||
|
for i = 1, #tasks do
|
|||
|
score = score + tasks[i].Cfg.Rate
|
|||
|
end
|
|||
|
end
|
|||
|
return score
|
|||
|
end
|
|||
|
|
|||
|
-- 获取key对应的已经完成的任务积分
|
|||
|
function GrowthWaySystem:GetFinishTasksScore(key)
|
|||
|
local score = 0
|
|||
|
if self.DicDailyTask:ContainsKey(key) then
|
|||
|
local tasks = self.DicDailyTask[key]
|
|||
|
for i = 1, #tasks do
|
|||
|
if tasks[i].CurCount >= tasks[i].TotalCount and tasks[i].IsRward then
|
|||
|
score = score + tasks[i].Cfg.Rate
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
return score
|
|||
|
end
|
|||
|
|
|||
|
-- 获取key对应的任务列表
|
|||
|
function GrowthWaySystem:GetTaskListByIndex(day, subId)
|
|||
|
local listTask = self.DicDailyTask[day]
|
|||
|
if listTask == nil then
|
|||
|
return nil
|
|||
|
else
|
|||
|
listTask:Sort(function(a, b)
|
|||
|
if a.State == b.State then
|
|||
|
return a.Cfg.Id < b.Cfg.Id
|
|||
|
else
|
|||
|
return a.State < b.State
|
|||
|
end
|
|||
|
end)
|
|||
|
local list = List:New()
|
|||
|
for i = 1, #listTask do
|
|||
|
if listTask[i].Cfg.SubId == subId then
|
|||
|
list:Add(listTask[i])
|
|||
|
end
|
|||
|
end
|
|||
|
return list
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:CanSubmitTask(day, subId)
|
|||
|
local listTask = self.DicDailyTask[day]
|
|||
|
if listTask ~= nil then
|
|||
|
for i = 1, #listTask do
|
|||
|
local task = listTask[i]
|
|||
|
if task.CurCount >= task.TotalCount and not task.IsRward and task.Cfg.SubId == subId then
|
|||
|
return true
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
return false
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:GetProcessParam()
|
|||
|
local ret = nil
|
|||
|
local Score = 0
|
|||
|
local leftScore = 0
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
if self.CurStarNum >= leftScore and self.CurStarNum < _listTreasure[i].StarNum then
|
|||
|
ret = {
|
|||
|
LeftScore = leftScore,
|
|||
|
Score = _listTreasure[i].StarNum,
|
|||
|
Index = i
|
|||
|
}
|
|||
|
return ret
|
|||
|
end
|
|||
|
leftScore = _listTreasure[i].StarNum
|
|||
|
end
|
|||
|
if leftScore ~= 0 and ret == nil then
|
|||
|
ret = {
|
|||
|
LeftScore = leftScore,
|
|||
|
Score = _listTreasure[#_listTreasure].StarNum,
|
|||
|
Index = #_listTreasure
|
|||
|
}
|
|||
|
end
|
|||
|
return ret
|
|||
|
end
|
|||
|
|
|||
|
-- 获取index对应的宝箱奖励数据
|
|||
|
function GrowthWaySystem:GetTreasureDataByIndex(index)
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
if index <= #_listTreasure then
|
|||
|
return _listTreasure[index]
|
|||
|
end
|
|||
|
return nil
|
|||
|
end
|
|||
|
|
|||
|
-- 获取普通奖励宝箱数据
|
|||
|
function GrowthWaySystem:GetTreasureNormalData()
|
|||
|
local list = List:New()
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
local data = _listTreasure[i]
|
|||
|
if not data.IsModel then
|
|||
|
list:Add(data)
|
|||
|
end
|
|||
|
end
|
|||
|
return list
|
|||
|
end
|
|||
|
|
|||
|
-- 获取特殊奖励宝箱数据
|
|||
|
function GrowthWaySystem:GetTreasureSpecialData()
|
|||
|
local ret = nil
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
local data = _listTreasure[i]
|
|||
|
if data.IsModel then
|
|||
|
ret = data
|
|||
|
end
|
|||
|
end
|
|||
|
return ret
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:IsRewardFinal()
|
|||
|
-- 如果开服时间大于了功能存在的时间也返回true
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
if Time.GetOpenSeverDay() > 7 then
|
|||
|
return true
|
|||
|
end
|
|||
|
if _listTreasure[2].IsReward and _listTreasure[#_listTreasure].IsReward then
|
|||
|
return true
|
|||
|
else
|
|||
|
return false
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:GetGrowthWayModellID()
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
if not _listTreasure[2].IsReward then
|
|||
|
local item = _listTreasure[2].ListItem[1]
|
|||
|
local cfg = DataConfig.DataItem[item.Id]
|
|||
|
if cfg ~= nil then
|
|||
|
local list = Utils.SplitStr(cfg.ShowId, '_')
|
|||
|
return tonumber(list[1])
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
if not _listTreasure[#_listTreasure].IsReward then
|
|||
|
local item = _listTreasure[#_listTreasure].ListItem[1]
|
|||
|
local cfg = DataConfig.DataItem[item.Id]
|
|||
|
if cfg ~= nil then
|
|||
|
local list = Utils.SplitStr(cfg.ShowId, '_')
|
|||
|
return tonumber(list[1])
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 获取默认参数
|
|||
|
function GrowthWaySystem:GetDefaultParam()
|
|||
|
local ret = nil
|
|||
|
local tempRet = nil
|
|||
|
local tempTask = nil
|
|||
|
local length = self.CurDay
|
|||
|
if length > self.DicDailyTask:Count() then
|
|||
|
length = self.DicDailyTask:Count()
|
|||
|
end
|
|||
|
for i = 1, length do
|
|||
|
if tempTask == nil then
|
|||
|
local listTask = self.DicDailyTask[i]
|
|||
|
if listTask ~= nil then
|
|||
|
for m = 1, #listTask do
|
|||
|
local task = listTask[m]
|
|||
|
if i == 1 and m == 1 then
|
|||
|
tempRet = {
|
|||
|
Day = task.Cfg.Day,
|
|||
|
SubId = task.Cfg.SubId
|
|||
|
}
|
|||
|
end
|
|||
|
if task.CurCount >= task.TotalCount and not task.IsRward then
|
|||
|
ret = {
|
|||
|
Day = task.Cfg.Day,
|
|||
|
SubId = task.Cfg.SubId
|
|||
|
}
|
|||
|
return ret
|
|||
|
elseif task.CurCount < task.TotalCount and tempTask == nil then
|
|||
|
tempTask = task
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
else
|
|||
|
ret = {
|
|||
|
Day = tempTask.Cfg.Day,
|
|||
|
SubId = tempTask.Cfg.SubId
|
|||
|
}
|
|||
|
return ret
|
|||
|
end
|
|||
|
end
|
|||
|
ret = tempRet
|
|||
|
return ret
|
|||
|
end
|
|||
|
|
|||
|
-- 获取指定天数对应的参数
|
|||
|
function GrowthWaySystem:GetParamByDay(day)
|
|||
|
local ret = nil
|
|||
|
local tempRet = nil
|
|||
|
local tempTask = nil
|
|||
|
local listTask = self.DicDailyTask[day]
|
|||
|
if listTask == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
if listTask ~= nil then
|
|||
|
for i = 1, #listTask do
|
|||
|
local task = listTask[i]
|
|||
|
if i == 1 then
|
|||
|
tempRet = {
|
|||
|
Day = task.Cfg.Day,
|
|||
|
SubId = task.Cfg.SubId
|
|||
|
}
|
|||
|
end
|
|||
|
if task.CurCount >= task.TotalCount and not task.IsRward then
|
|||
|
ret = {
|
|||
|
Day = task.Cfg.Day,
|
|||
|
SubId = task.Cfg.SubId
|
|||
|
}
|
|||
|
return ret
|
|||
|
elseif task.CurCount < task.TotalCount and tempTask == nil then
|
|||
|
tempTask = task
|
|||
|
ret = {
|
|||
|
Day = tempTask.Cfg.Day,
|
|||
|
SubId = tempTask.Cfg.SubId
|
|||
|
}
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
if tempTask ~= nil then
|
|||
|
return ret
|
|||
|
else
|
|||
|
ret = tempRet
|
|||
|
return ret
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 设置法宝信息
|
|||
|
function GrowthWaySystem:SetFaBaoInfo()
|
|||
|
local str = DataConfig.DataGlobal[1552].Params
|
|||
|
local list = Utils.SplitStr(str, '_')
|
|||
|
if list ~= nil then
|
|||
|
self.FbItemId = tonumber(list[1])
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 获取法宝名字
|
|||
|
function GrowthWaySystem:GetFbName()
|
|||
|
local cfg = DataConfig.DataItem[self.FbItemId]
|
|||
|
if cfg ~= nil then
|
|||
|
return cfg.Name
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 获取剩余时间
|
|||
|
function GrowthWaySystem:GetLeftTime()
|
|||
|
return self.LeftTime - (Time.GetRealtimeSinceStartup() - self.SyncTime)
|
|||
|
end
|
|||
|
|
|||
|
-- 设置菜单红点Dic
|
|||
|
function GrowthWaySystem:UpdateMenuRedPointDic()
|
|||
|
-- 判断红点
|
|||
|
self.DicDailyTask:Foreach(function(k, v)
|
|||
|
local taskList = v
|
|||
|
if taskList == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
local canReward = false
|
|||
|
for i = 1, #taskList do
|
|||
|
canReward = taskList[i]:CanRewardItem()
|
|||
|
if canReward then
|
|||
|
if self.DicMenuRedPoint:ContainsKey(k) then
|
|||
|
self.DicMenuRedPoint[k] = true
|
|||
|
break
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
if not canReward then
|
|||
|
self.DicMenuRedPoint[k] = false
|
|||
|
end
|
|||
|
end)
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:GetTreasureParam()
|
|||
|
local retData = nil
|
|||
|
local preData = nil
|
|||
|
local list = List:New()
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
if i == 1 then
|
|||
|
preData = _listTreasure[i]
|
|||
|
if not preData.IsReward then
|
|||
|
retData = _listTreasure[i]
|
|||
|
end
|
|||
|
else
|
|||
|
if preData.IsReward and not _listTreasure[i].IsReward then
|
|||
|
retData = _listTreasure[i]
|
|||
|
preData = _listTreasure[i]
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
if retData == nil then
|
|||
|
return nil
|
|||
|
else
|
|||
|
if #retData.ListItem > 0 then
|
|||
|
return retData.ListItem[1].Id
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:Update(dt)
|
|||
|
local lp = GameCenter.GameSceneSystem:GetLocalPlayer()
|
|||
|
if lp == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
local isShow = false
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
self.DicDailyTask:Foreach(function(k, v)
|
|||
|
local taskList = v
|
|||
|
if taskList == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
local canReward = false
|
|||
|
for i = 1, #taskList do
|
|||
|
canReward = taskList[i]:CanRewardItem()
|
|||
|
if canReward and self.CurDay >= k then
|
|||
|
isShow = true
|
|||
|
break
|
|||
|
end
|
|||
|
end
|
|||
|
end)
|
|||
|
if not isShow then
|
|||
|
-- 判断是否有宝箱可以领取
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
local data = _listTreasure[i]
|
|||
|
local canReward = false
|
|||
|
if data.StarNum <= self.CurStarNum then
|
|||
|
canReward = true
|
|||
|
end
|
|||
|
if not data.IsReward then
|
|||
|
if canReward then
|
|||
|
isShow = true
|
|||
|
break
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
GameCenter.MainFunctionSystem:SetAlertFlag(FunctionStartIdCode.GrowthWay, isShow)
|
|||
|
if self.IsShowModel then
|
|||
|
if self:IsRewardFinal() then
|
|||
|
if lp ~= nil then
|
|||
|
lp.PropMoudle.GrowthWayModelId = 0
|
|||
|
self.ShowModelId = 0
|
|||
|
end
|
|||
|
self.IsShowModel = false
|
|||
|
else
|
|||
|
local modelId = self:GetGrowthWayModellID()
|
|||
|
if self.ShowModelId ~= modelId then
|
|||
|
if lp ~= nil then
|
|||
|
lp.PropMoudle.GrowthWayModelId = self:GetGrowthWayModellID()
|
|||
|
self.ShowModelId = modelId
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
else
|
|||
|
-- 如果没有显示模型 并且功能没有结束 且功能没有开启
|
|||
|
if not self:IsRewardFinal() and
|
|||
|
not GameCenter.MainFunctionSystem:FunctionIsVisible(FunctionStartIdCode.GrowthWay) then
|
|||
|
-- 设置默认模型
|
|||
|
if lp ~= nil then
|
|||
|
local cfg = DataConfig.DataGlobal[GlobalName.New_Sever_Growup_Show_Model_Value]
|
|||
|
if cfg ~= nil then
|
|||
|
local list = Utils.SplitStr(cfg.Params, ';')
|
|||
|
local values = Utils.SplitStr(list[1], '_')
|
|||
|
local modelId = tonumber(values[1])
|
|||
|
lp.PropMoudle.GrowthWayModelId = modelId
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
end
|
|||
|
|
|||
|
function GrowthWaySystem:IsRewardOver()
|
|||
|
local _ret = true
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
if not _listTreasure[i].IsReward then
|
|||
|
_ret = false
|
|||
|
break
|
|||
|
end
|
|||
|
end
|
|||
|
return _ret
|
|||
|
end
|
|||
|
|
|||
|
-------------------req消息(Msg)相关------------------
|
|||
|
-- 领取成长之路积分
|
|||
|
function GrowthWaySystem:ReqGrowUpPoint(index)
|
|||
|
GameCenter.Network.Send("MSG_OpenServerAc.ReqGrowUpPoint", {
|
|||
|
id = index
|
|||
|
})
|
|||
|
end
|
|||
|
-- 领取积分奖励
|
|||
|
function GrowthWaySystem:ReqGrowUpPointReward(index)
|
|||
|
GameCenter.Network.Send("MSG_OpenServerAc.ReqGrowUpPointReward", {
|
|||
|
id = index
|
|||
|
})
|
|||
|
end
|
|||
|
------------------res消息(Msg)-------------------
|
|||
|
-- 成长之路服务器主动推送消息 (上线的时候发送一次)
|
|||
|
function GrowthWaySystem:ResGrowUpInfo(result)
|
|||
|
if result == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
-- 计算剩余时间
|
|||
|
-- 计算服务器开启了第几天
|
|||
|
self.CurDay = Time.GetOpenSeverDay() -- GameCenter.ServeCrazySystem:GetCurOpenTime()
|
|||
|
local totalDay = tonumber(DataConfig.DataGlobal[1567].Params) - 1
|
|||
|
local liveSeconds = totalDay * (24 * 60 * 60)
|
|||
|
|
|||
|
local seconds = 24 * 3600
|
|||
|
local hour, min, sec = TimeUtils.GetStampTimeHHMMSS(math.floor(GameCenter.HeartSystem.ServerTime))
|
|||
|
local curSeconds = hour * 3600 + min * 60 + sec
|
|||
|
self.LeftTime = liveSeconds - ((self.CurDay - 1) * (24 * 60 * 60) + curSeconds)
|
|||
|
self.SyncTime = Time.GetRealtimeSinceStartup()
|
|||
|
|
|||
|
self.CurStarNum = result.point
|
|||
|
for i = 1, #result.growups do
|
|||
|
local key = DataConfig.DataNewSeverGrowup[result.growups[i].id].Day
|
|||
|
local taskList = nil
|
|||
|
if self.DicDailyTask:ContainsKey(key) then
|
|||
|
taskList = self.DicDailyTask[key]
|
|||
|
for m = 1, #taskList do
|
|||
|
if taskList[m].CfgId == result.growups[i].id then
|
|||
|
taskList[m]:ParaseMsg(result.growups[i])
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
-- 判断宝箱领取状态
|
|||
|
local index = 0
|
|||
|
local mark = 1
|
|||
|
local isRewardOver = true
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
mark = 1 << index
|
|||
|
_listTreasure[i]:SetReward(result.hasGet, mark)
|
|||
|
index = index + 1
|
|||
|
--IsReward
|
|||
|
if not _listTreasure[i].IsReward then
|
|||
|
isRewardOver = false
|
|||
|
end
|
|||
|
end
|
|||
|
if isRewardOver then
|
|||
|
GameCenter.MainFunctionSystem:SetFunctionVisible(FunctionStartIdCode.GrowthWay, false)
|
|||
|
end
|
|||
|
self:UpdateMenuRedPointDic()
|
|||
|
-- GameCenter.PushFixEvent(LogicLuaEventDefine.EID_EVENT_GROWTHWAYFORM_UPDATE)
|
|||
|
if not self:IsRewardFinal() then
|
|||
|
local lp = GameCenter.GameSceneSystem:GetLocalPlayer()
|
|||
|
if lp ~= nil then
|
|||
|
lp.PropMoudle.GrowthWayModelId = self:GetGrowthWayModellID()
|
|||
|
self.ShowModelId = lp.PropMoudle.GrowthWayModelId
|
|||
|
end
|
|||
|
self.IsShowModel = true
|
|||
|
end
|
|||
|
end
|
|||
|
-- 更新成长之路列表
|
|||
|
function GrowthWaySystem:ResGrowUpList(result)
|
|||
|
if result == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
if result.growups ~= nil then
|
|||
|
for i = 1, #result.growups do
|
|||
|
local key = DataConfig.DataNewSeverGrowup[result.growups[i].id].Day
|
|||
|
local taskList = nil
|
|||
|
if self.DicDailyTask:ContainsKey(key) then
|
|||
|
taskList = self.DicDailyTask[key]
|
|||
|
for m = 1, #taskList do
|
|||
|
if taskList[m].CfgId == result.growups[i].id then
|
|||
|
taskList[m]:ParaseMsg(result.growups[i])
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
self:UpdateMenuRedPointDic()
|
|||
|
-- 发送消息更新UI
|
|||
|
GameCenter.PushFixEvent(LogicLuaEventDefine.EID_EVENT_GROWTHWAYFORM_UPDATE, false)
|
|||
|
end
|
|||
|
-- 完成任务后成长之路积分返回
|
|||
|
function GrowthWaySystem:ResGrowUpPoint(result)
|
|||
|
if result == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
self.CurStarNum = result.point
|
|||
|
|
|||
|
local tab = nil
|
|||
|
local taskList = nil
|
|||
|
local day = DataConfig.DataNewSeverGrowup[result.id].Day
|
|||
|
if self.DicDailyTask:ContainsKey(day) then
|
|||
|
taskList = self.DicDailyTask[day]
|
|||
|
for m = 1, #taskList do
|
|||
|
if taskList[m].CfgId == result.id then
|
|||
|
taskList[m].IsRward = true
|
|||
|
taskList[m].State = 3
|
|||
|
tab = {
|
|||
|
Day = day,
|
|||
|
SubId = taskList[m].Cfg.SubId
|
|||
|
}
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
self:UpdateMenuRedPointDic()
|
|||
|
GameCenter.PushFixEvent(LogicLuaEventDefine.EID_EVENT_GROWTHUP_TASKUPDATE, tab)
|
|||
|
end
|
|||
|
-- 成长之路预览奖励返回
|
|||
|
function GrowthWaySystem:ResGrowUpPointReward(result)
|
|||
|
if result == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
local _listTreasure = self:GetListTreasure()
|
|||
|
for i = 1, #_listTreasure do
|
|||
|
if _listTreasure[i].CfgId == result.id then
|
|||
|
_listTreasure[i].IsReward = true
|
|||
|
end
|
|||
|
end
|
|||
|
GameCenter.PushFixEvent(LogicLuaEventDefine.EID_EVENT_GROWTHWAYFORM_UPDATE, false)
|
|||
|
end
|
|||
|
return GrowthWaySystem
|