123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- using System;
- using System.Collections.Generic;
- using ET;
- namespace GFGGame
- {
- public class ItemProxy
- {
- public static async ETTask<bool> GetItemInfos()
- {
- GameGlobal.PreDataInited = false;
- GameGlobal.AfterDataInited = false;
- M2C_GetItemInfos response = null;
- response = (M2C_GetItemInfos)await MessageHelper.SendToServer(new C2M_GetItemInfos());
- if (response != null)
- {
- if (response.Error == ErrorCode.ERR_Success)
- {
- //物品兑换
- for (int i = 0; i < response.KsItemExchange.Count; i++)
- {
- ItemDataManager.InitItemExchange(response.KsItemExchange[i], response.VsItemExchange[i]);
- }
- //服装数据与物品通步
- DressUpMenuSuitDataManager.InitData();
- DressUpMenuItemDataManager.InitData();
- //初始化物品
- ItemDataManager.InitServerData(response.Items);
- //自定义套装
- CustomSuitDataManager.InitServerData(response.CustomSuits);
- CustomSuitDataManager.currentIndex = response.CustomSuitPos;
- if (!RoleDataManager.CheckIsMonthCardOpenByType(CustomSuitDataManager.GetPosType(CustomSuitDataManager.currentIndex)))
- {
- CustomSuitDataManager.currentIndex = 0;
- }
- for (int i = 0; i < response.NewItems.Count; i++)
- {
- var itemId = response.NewItems[i];
- if (ItemDataManager.GetItemNum(itemId) <= 0) continue;
- var itemType = ItemDataManager.GetItemType(itemId);
- if (itemType == ConstItemType.DRESS_UP)
- {
- DressUpMenuItemDataManager.AddNewDressItem(response.NewItems[i]);
- }
- else if (itemType == ConstItemType.HEAD)
- {
- RoleInfoManager.Instance.AddNew(response.NewItems[i]);
- }
- }
- //!!!必须放在最后,标记数据初始化完成
- GameGlobal.PreDataInited = true;
- return true;
- }
- }
- return false;
- }
- public static async ETTask<int> GetItemAttributeInfos()
- {
- M2C_GetItemAttributeInfos m2C_GetItemAttributeInfos = null;
- Session session = null;
- try
- {
- session = GameGlobal.zoneScene.GetComponent<SessionComponent>().GateSession;
- m2C_GetItemAttributeInfos = (M2C_GetItemAttributeInfos)await session.Call(new C2M_GetItemAttributeInfos());
- }
- catch (Exception e)
- {
- Log.Debug(e.ToString());
- return ErrorCode.ERR_NetWorkError;
- }
- if (m2C_GetItemAttributeInfos.Error != ErrorCode.ERR_Success)
- {
- return m2C_GetItemAttributeInfos.Error;
- }
- ItemDataManager.InitServerDataItemAttribute(m2C_GetItemAttributeInfos.ItemAtrributes);
- return ErrorCode.ERR_Success;
- }
- //设置物品已读
- public static async ETTask<bool> ReqSetItemRead(int itemID)
- {
- S2C_SetItemRead response = null;
- response = (S2C_SetItemRead)await MessageHelper.SendToServer(new C2S_SetItemRead() { ItemId = itemID });
- if (response != null)
- {
- if (response.Error == ErrorCode.ERR_Success)
- {
- ItemCfg cfg = ItemCfgArray.Instance.GetCfg(response.ItemId);
- if (cfg.itemType == ConstItemType.DRESS_UP)
- {
- DressUpMenuItemDataManager.RemoveNewDressItem(response.ItemId);
- }
- else if (cfg.itemType == ConstItemType.HEAD)
- {
- RoleInfoManager.Instance.RemoveNew(response.ItemId);
- EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
- }
- return true;
- }
- }
- return false;
- }
- //使用背包物品
- public static async ETTask<bool> ReqUseItem(int itemID, long count)
- {
- S2C_UseItem response = null;
- response = (S2C_UseItem)await MessageHelper.SendToServer(new C2S_UseItem() { ItemId = itemID, itemNum = count });
- if (response != null)
- {
- if (response.Error == ErrorCode.ERR_Success)
- {
- List<ItemData> items = ItemUtil.CreateItemDataList(response.GotItemList);
- BonusController.TryShowBonusList(items);
- return true;
- }
- }
- return false;
- }
- //使用背包物品-自选礼包
- public static async ETTask<bool> ReqUseGiftBoxSelItem(int itemID, List<GiftBoxSelChildItemProto> giftBoxSelChildItems)
- {
- M2C_GiftBoxSelConsumption response = null;
- response = (M2C_GiftBoxSelConsumption)await MessageHelper.SendToServer(new C2M_GiftBoxSelConsumption()
- { ItemId = itemID, GiftBoxSelChildItems = giftBoxSelChildItems });
- if (response != null)
- {
- if (response.Error == ErrorCode.ERR_Success)
- {
- List<ItemData> items = ItemUtil.CreateItemDataList(response.GotItemList);
- BonusController.TryShowBonusList(items);
- EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
- return true;
- }
- }
- return false;
- }
- //使用背包物品-随机礼包
- public static async ETTask<bool> ReqUseRandomItem(int itemID, long count)
- {
- S2C_UseRandomItem response = null;
- response = (S2C_UseRandomItem)await MessageHelper.SendToServer(new C2S_UseRandomItem()
- { ItemId = itemID, itemNum = count });
- if (response != null)
- {
- if (response.Error == ErrorCode.ERR_Success)
- {
- List<ItemData> items = ItemUtil.CreateItemDataList(response.GotItemList);
- BonusController.TryShowBonusList(items);
- EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
- return true;
- }
- }
- return false;
- }
- }
- }
|