private static readonly Dictionary<Type, uint> SpawnableObjectIds = SpawnableObjects.ToDictionary((i) => i.Value, (i) => i.Key);
- private readonly ConcurrentDictionary<uint, InnerNetObject> _allObjectsFast = new ConcurrentDictionary<uint, InnerNetObject>();
+ private readonly ConcurrentDictionary<uint, InnerNetObject> _allObjects = new ConcurrentDictionary<uint, InnerNetObject>();
private uint _nextNetId = MinServerNetId;
public T? FindObjectByNetId<T>(uint netId)
where T : IInnerNetObject
{
- if (_allObjectsFast.TryGetValue(netId, out var obj))
+ if (_allObjects.TryGetValue(netId, out var obj))
{
return (T)(IInnerNetObject)obj;
}
case GameDataTag.DataFlag:
{
var netId = reader.ReadPackedUInt32();
- if (_allObjectsFast.TryGetValue(netId, out var obj))
+ if (_allObjects.TryGetValue(netId, out var obj))
{
await obj.DeserializeAsync(sender, target, reader, false);
}
case GameDataTag.RpcFlag:
{
var netId = reader.ReadPackedUInt32();
- if (_allObjectsFast.TryGetValue(netId, out var obj))
+ if (_allObjects.TryGetValue(netId, out var obj))
{
if (!await obj.HandleRpcAsync(sender, target, (RpcCalls)reader.ReadByte(), reader))
{
case GameDataTag.DespawnFlag:
{
var netId = reader.ReadPackedUInt32();
- if (_allObjectsFast.TryGetValue(netId, out var obj))
+ if (_allObjects.TryGetValue(netId, out var obj))
{
if (sender.Client.Id != obj.OwnerId && !sender.IsHost)
{
private async ValueTask SyncServerObjectsAsync(ClientPlayer sender)
{
- foreach (var obj in _allObjectsFast.Values)
+ foreach (var obj in _allObjects.Values)
{
if (obj.OwnerId == ServerOwned)
{
private bool AddNetObject(InnerNetObject obj)
{
- return _allObjectsFast.TryAdd(obj.NetId, obj);
+ return _allObjects.TryAdd(obj.NetId, obj);
}
private void RemoveNetObject(InnerNetObject obj)
{
- _allObjectsFast.TryRemove(obj.NetId, out _);
+ _allObjects.TryRemove(obj.NetId, out _);
}
}
}