Implement Basic SummonUnit

This commit is contained in:
Somebody
2024-08-29 21:08:50 +08:00
parent f7a8564237
commit 85293dbe11
217 changed files with 1541 additions and 794 deletions

View File

@@ -11,22 +11,6 @@ public class PacketSceneGroupRefreshScNotify : BasePacket
{
var proto = new SceneGroupRefreshScNotify();
Dictionary<int, GroupRefreshInfo> refreshInfo = [];
foreach (var e in addEntity ?? [])
{
var group = new GroupRefreshInfo
{
GroupId = (uint)e.GroupID
};
group.RefreshEntity.Add(new SceneEntityRefreshInfo
{
AddEntity = e.ToProto()
});
if (refreshInfo.TryGetValue(e.GroupID, out var value))
value.RefreshEntity.AddRange(group.RefreshEntity);
else
refreshInfo[e.GroupID] = group;
}
foreach (var e in removeEntity ?? [])
{
@@ -45,6 +29,23 @@ public class PacketSceneGroupRefreshScNotify : BasePacket
refreshInfo[e.GroupID] = group;
}
foreach (var e in addEntity ?? [])
{
var group = new GroupRefreshInfo
{
GroupId = (uint)e.GroupID
};
group.RefreshEntity.Add(new SceneEntityRefreshInfo
{
AddEntity = e.ToProto()
});
if (refreshInfo.TryGetValue(e.GroupID, out var value))
value.RefreshEntity.AddRange(group.RefreshEntity);
else
refreshInfo[e.GroupID] = group;
}
proto.GroupRefreshList.AddRange(refreshInfo.Values);
SetData(proto);