前言
当接到一个需求当时候,首先会想到有没有类似功能,或者当以后再接到这类功能时如何处理,这次接到一个每周限时活动的任务,把具有共通点的活动时间统一管理,以后写活动只需专注自己的功能即可
每周活动限时管理
需求:活动日程为每周x日x点到y点
时间数据
时间放在全局配置表,对应活动id
--全局变量
SettingConfig.SettingType = {
LuckyShop = 1, --幸运商店
TokenTimeMgr = 2, --战令活动时间管理
WeeklyActivityMgr = 3, --限时活动管理
}
function WeeklyActivityMgr:Init()
--获取库数据
self.cache = server.settingCenter:GetData(SettingConfig.SettingType.WeeklyActivityMgr)
--初始化活动数据
self.cache = self.cache or {}
self.cache.data = self.cache.data or {}
for _, id in pairs(WeeklyActivityConfig.ActiveType) do
self.cache.data[id] = self.cache.data[id] or {id = id,state