using ET; using GFGGame; namespace ET { //S2C_NoticeActivityOpen public class S2C_NoticeActivityOpenHandler : AMHandler { protected override async ETTask Run(Session session, S2C_NoticeActivityOpen message) { ActivityGlobalDataManager.Instance.AddActivityInfo(new ActivityInfo { activityId = message.ActivityId, startTime = message.StartTime, endTime = message.EndTime }); await ETTask.CompletedTask; } } //S2C_NoticeActivityClose public class S2C_NoticeActivityCloseHandler : AMHandler { protected override async ETTask Run(Session session, S2C_NoticeActivityClose message) { ActivityGlobalDataManager.Instance.RemoveActivityInfo(message.ActivityId); 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 => { ActivityGlobalDataManager.Instance.AddActivityInfo(new ActivityInfo { // activityId = activityInfo.ActivityId, // startTime = activityInfo.StartTime, // endTime = activityInfo.EndTime, // GetRewards = activityInfo.GetRewards }); }); } //C2S_CloseActivity public static async ETTask 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 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); return false; } } }