XtGameKit/Packages/cn.xt.bag/Scripts/Hotfix/Client/Item_RemoveItemHandler.cs

17 lines
651 B
C#

namespace ET.Client
{
[MessageHandler(SceneType.Main)]
[FriendOf(typeof(BagComponent))]
public class Item_RemoveItemHandler : MessageHandler<Scene, Item_RemoveItem>
{
protected override async ETTask Run(Scene scene, Item_RemoveItem message)
{
BagComponent comp = scene.GetComponent<BagComponent>() ?? scene.AddComponent<BagComponent>();
comp.ItemMap.Remove(message.itemIndex);
comp.NewItemSet.Remove(message.itemIndex);
EventSystem.Instance.Publish(scene, new ItemChangedEvent { ItemIndex = message.itemIndex });
await ETTask.CompletedTask;
}
}
}