提交背包获取协议
This commit is contained in:
@@ -9,6 +9,9 @@ public class C2Game_GetItemsRequestHandler : RouteRPC<Player, C2Game_GetItemsReq
|
||||
protected override async FTask Run(Player entity, C2Game_GetItemsRequest request, Game2C_GetItemsResponse response,
|
||||
Action reply)
|
||||
{
|
||||
|
||||
var itemContainer = entity.GetComponent<PlayerItemContainerComponent>();
|
||||
response.Items = itemContainer.GetItemInfos();
|
||||
response.Rigs = itemContainer.GetRigInfos();
|
||||
await FTask.CompletedTask;
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,7 @@ public static class ItemSystem
|
||||
return new ItemInfo()
|
||||
{
|
||||
Id = self.Id,
|
||||
ConfigId = self.Count,
|
||||
ConfigId = self.ConfigId,
|
||||
Count = self.Count,
|
||||
ExpirationTime = self.ExpirationTime,
|
||||
GetTime = self.GetTime,
|
||||
|
||||
@@ -136,7 +136,7 @@ public static class PlayerItemContainerComponentSystem
|
||||
|
||||
public static List<ItemInfo> GetItemInfos(this PlayerItemContainerComponent self)
|
||||
{
|
||||
List<ItemInfo> ret = new List<ItemInfo>();
|
||||
List<ItemInfo> ret = new List<ItemInfo>(self.Items.Count);
|
||||
foreach (var (_, item) in self.Items)
|
||||
{
|
||||
ret.Add(item.ToItemInfo());
|
||||
@@ -145,20 +145,34 @@ public static class PlayerItemContainerComponentSystem
|
||||
return ret;
|
||||
}
|
||||
|
||||
public static List<GearInfo> GetGearInfos(this PlayerItemContainerComponent self)
|
||||
// public static List<GearInfo> GetGearInfos(this PlayerItemContainerComponent self)
|
||||
// {
|
||||
// List<GearInfo> ret = new List<GearInfo>(self.FishingRig.Count);
|
||||
//
|
||||
// foreach (var (rod, rigs) in self.FishingRig)
|
||||
// {
|
||||
// GearInfo gearInfo = new GearInfo();
|
||||
// gearInfo.Rod = rod;
|
||||
// gearInfo.Rigs.AddRange(rigs);
|
||||
// ret.Add(gearInfo);
|
||||
// }
|
||||
//
|
||||
// return ret;
|
||||
// }
|
||||
|
||||
public static List<ItemBindInfo> GetRigInfos(this PlayerItemContainerComponent self)
|
||||
{
|
||||
List<GearInfo> ret = new List<GearInfo>();
|
||||
|
||||
List<ItemBindInfo> ret = new List<ItemBindInfo>(self.FishingRig.Count);
|
||||
foreach (var (rod, rigs) in self.FishingRig)
|
||||
{
|
||||
GearInfo gearInfo = new GearInfo();
|
||||
gearInfo.Rod = rod;
|
||||
gearInfo.Rigs.AddRange(rigs);
|
||||
ret.Add(gearInfo);
|
||||
ItemBindInfo gearInfo = new ItemBindInfo();
|
||||
gearInfo.Item = rod;
|
||||
gearInfo.BindItems.AddRange(rigs);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
Reference in New Issue
Block a user