using System.Collections; using UnityEngine; using GFGGame; using ET; namespace ET { public class ActivityLoginInfoProtoHandler : AMHandler { /// /// 活动的开启/结束/充值 /// /// /// /// protected override async ETTask Run(Session session, S2C_PushActivityLoginInfo message) { var info = message.ActivityLoginInfo; var afuGiftDataManager = ActivityAfuGiftDataManager.Instance; afuGiftDataManager.SetIsBuy(info.IsBuy); afuGiftDataManager.IsOpen = info.ActivityIsOpen; afuGiftDataManager.SetRewardStateList(info.FreeRewardStatusList, false); afuGiftDataManager.SetRewardStateList(info.PayRewardStatusList, true); EventAgent.DispatchEvent(ConstMessage.AFU_GIFT_CHANGED); EventAgent.DispatchEvent(ConstMessage.RED_CHANGE); await ETTask.CompletedTask; } } } namespace GFGGame { public class ActivityAfuGiftSProxy { /// /// 登陆游戏初始化 /// /// public static async ETTask GetAfuGiftInfo() { var response = (S2C_GetActivityLoginInfo)await MessageHelper.SendToServer(new C2S_GetActivityLoginInfo { }); if (!(response is { Error: ErrorCode.ERR_Success })) return; var info = response.ActivityLoginInfo; var activityAfuGiftDataManager = ActivityAfuGiftDataManager.Instance; activityAfuGiftDataManager.SetIsBuy(info.IsBuy); activityAfuGiftDataManager.SetIndexDay(info.IndexDay); activityAfuGiftDataManager.IsOpen = info.ActivityIsOpen; activityAfuGiftDataManager.SetRewardStateList(info.FreeRewardStatusList, false); activityAfuGiftDataManager.SetRewardStateList(info.PayRewardStatusList, true); EventAgent.DispatchEvent(ConstMessage.AFU_GIFT_CHANGED); EventAgent.DispatchEvent(ConstMessage.RED_CHANGE); } /// /// 单个领奖 /// /// /// /// public static async ETTask ReqGetReward(bool isPay, int rewardDay) { var response = (S2C_GetActivityLoginReward)await MessageHelper.SendToServer(new C2S_GetActivityLoginReward() { IsPay = isPay, RewardDay = rewardDay }); if (!(response is { Error: ErrorCode.ERR_Success })) return false; var info = response.ActivityLoginInfo; var activityAfuGiftDataManager = ActivityAfuGiftDataManager.Instance; // 奖励弹窗 BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.BonusList)); activityAfuGiftDataManager.SetRewardStateList(info.FreeRewardStatusList, false); activityAfuGiftDataManager.SetRewardStateList(info.PayRewardStatusList, true); EventAgent.DispatchEvent(ConstMessage.RED_CHANGE); return false; } /// /// 一键领取 /// /// /// /// public static async ETTask ReqGetAllReward() { var response = (S2C_GetAllActivityLoginReward)await MessageHelper.SendToServer(new C2S_GetAllActivityLoginReward() { }); if (!(response is { Error: ErrorCode.ERR_Success })) return false; var info = response.ActivityLoginInfo; var activityAfuGiftDataManager = ActivityAfuGiftDataManager.Instance; // 奖励弹窗 BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.BonusList)); activityAfuGiftDataManager.SetRewardStateList(info.FreeRewardStatusList, false); activityAfuGiftDataManager.SetRewardStateList(info.PayRewardStatusList, true); EventAgent.DispatchEvent(ConstMessage.RED_CHANGE); return false; } } }