using Fantasy.Async; using Fantasy.Network; using Fantasy.Network.Interface; // ReSharper disable ConditionIsAlwaysTrueOrFalseAccordingToNullableAPIContract namespace Fantasy; public class C2G_UseItemRequestHandler : MessageRPC { protected override async FTask Run(Session session, C2G_UseItemRequest request, G2C_UseItemResponse response, Action reply) { var account = session.GetComponent(); if (account == null) { session.Dispose(); return; } response.ErrorCode = ItemUseHelper.UseItem(account, (ContainerType)request.ContainerType, request.ItemId, request.Count); await FTask.CompletedTask; } }