| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 | using ET;using GFGGame;namespace ET{    //S2C_NoticeActivityOpen    public class S2C_NoticeActivityOpenHandler : AMHandler<S2C_NoticeActivityOpen>    {        protected override async ETTask Run(Session session, S2C_NoticeActivityOpen message)        {            ActivityInfo info = new ActivityInfo            {                ActivityId = message.ActivityId,                StartTime = message.StartTime,                EndTime = message.EndTime            };            info.EndTime = info.ActivityId == 501 ? 1689703200000 : info.EndTime;//临时屏蔽一个限时活动,测试结束后要删掉            if (info.ActivityId == 501 && (TimeHelper.ServerNow() < info.StartTime || TimeHelper.ServerNow() > info.EndTime))            {                ActivityGlobalDataManager.Instance.RemoveActivityInfo(info.ActivityId);            }            else            {                ActivityGlobalDataManager.Instance.AddActivityInfo(info);            }            await ETTask.CompletedTask;        }    }    //S2C_NoticeActivityClose    public class S2C_NoticeActivityCloseHandler : AMHandler<S2C_NoticeActivityClose>    {        protected override async ETTask Run(Session session, S2C_NoticeActivityClose message)        {            ActivityGlobalDataManager.Instance.RemoveActivityInfo(message.ActivityId);            await ETTask.CompletedTask;        }    }    //S2C_SyncActivityCountValue    public class S2C_SyncActivityCountValueHandler : AMHandler<S2C_SyncActivityCountValue>    {        protected override async ETTask Run(Session session, S2C_SyncActivityCountValue message)        {            ActivityGlobalDataManager.Instance.SetActivityCountValue(message.ActivityId, message.CountValue);            await ETTask.CompletedTask;        }    }}namespace GFGGame{    public class ActivityGlobalSProxy    {        public static async ETTask GetActivityInfo()        {            var c2SGetActivityList = new C2S_GetActivityList();            //获取活动数据,这里是一次性拉去所有活动数据,如果活动数据量大,可以分类型拉取            c2SGetActivityList.Type.Add(0);            var response = (S2C_GetActivityList)await MessageHelper.SendToServer(c2SGetActivityList);            if (!(response is { Error: ErrorCode.ERR_Success }))            {                Log.Error("GetActivityInfo error");                return;            }            response.ActivityList.ForEach(activityInfo =>            {                ActivityInfo info = new ActivityInfo                {                    ActivityId = activityInfo.ActivityId,                    StartTime = activityInfo.StartTime,                    EndTime = activityInfo.EndTime,                    GetRewards = activityInfo.GetRewards,                    CountValue = activityInfo.CountValue                };                info.EndTime = info.ActivityId == 501 ? 1689703200000 : info.EndTime;//临时屏蔽一个限时活动,测试结束后要删掉                if (info.ActivityId == 501 && (TimeHelper.ServerNow() < info.StartTime || TimeHelper.ServerNow() > info.EndTime))                {                    ActivityGlobalDataManager.Instance.RemoveActivityInfo(info.ActivityId);                    return;                }                ActivityGlobalDataManager.Instance.AddActivityInfo(info);            });        }        //C2S_CloseActivity        public static async ETTask<bool> ReqCloseActivity(int activityId)        {            var response =                (S2C_CloseActivity)await MessageHelper.SendToServer(new C2S_CloseActivity { ActivityId = activityId });            if (!(response is { Error: ErrorCode.ERR_Success }))            {                Log.Error("ReqCloseActivity error");                return false;            }            return true;        }        //C2S_GetActivityBonus        public static async ETTask<bool> ReqGetActivityBonus(int activityId, int bonusId)        {            var response =                (S2C_GetActivityBonus)await MessageHelper.SendToServer(new C2S_GetActivityBonus()                { ActivityId = activityId, BonusId = bonusId });            if (!(response is { Error: ErrorCode.ERR_Success })) return false;            //奖励弹窗            BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.itemList));            ActivityGlobalDataManager.Instance.AddActivityRewardInfo(activityId, bonusId);            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);            return false;        }    }}
 |