using System.Collections.Generic; using System.Linq; using cfg.GfgCfg; using ET; namespace GFGGame { public class ActivityOpenCfgArray : SingletonBaseET { public bool CheckActivityIsOpen(int activityId, int enddelaySec = 0) { var activityOpenCfg = CommonDataManager.Tables.TblActivityOpenCfg.GetOrDefault(activityId); if (activityOpenCfg == null) { return false; } var openTime = TimeUtil.GetTimestamp(activityOpenCfg.OpenTime); var endTime = TimeUtil.GetTimestamp(activityOpenCfg.EndTime) + enddelaySec * 1000; var nowTime = TimeHelper.ServerNow(); return (nowTime >= openTime && nowTime < endTime); } //扫描套装是否是高级合成副本里的套装 public bool CheckSuitIsAdvancedCompoundCopy(int suitId) { List activityOpenCfgs = CommonDataManager.Tables.TblActivityOpenCfg.DataList .Where(a => a.Type == ActivityType.AdvancedCompoundCopy).ToList(); if (activityOpenCfgs == null) { Log.Error($"activityOpenCfg is null. type:{ActivityType.AdvancedCompoundCopy}"); return false; } foreach (var item in activityOpenCfgs) { if (item.Params1.Contains(suitId)) { return true; } } return false; } //gou策划说高级合成副本这个类型的活动,未来每个活动id都对应不一样的套装id. 有沟通过其他方案,但是执意如此,所以通过套装id扫描获取活动id. public ActivityOpenCfg GetAdvancedCompoundActivityOpenCfgBySuitId(int suitId) { List activityOpenCfgs = CommonDataManager.Tables.TblActivityOpenCfg.DataList .Where(a => a.Type == ActivityType.AdvancedCompoundCopy).ToList(); foreach (var item in activityOpenCfgs) { if (item.Params1.Contains(suitId)) { return item; } } return null; } //扫描关卡章节id是否是高级合成副本里的 public bool CheckLevelIsAdvancedCompoundCopy(int chapterId) { List activityOpenCfgs = CommonDataManager.Tables.TblActivityOpenCfg.DataList .Where(a => a.Type == ActivityType.AdvancedCompoundCopy).ToList(); foreach (var item in activityOpenCfgs) { if (item.Params3.Contains(chapterId)) { return true; } } return false; } } }