Asgard.Core.System.ObjectMapper.Create C# (CSharp) Метод

Create() публичный статический Метод

public static Create ( uint id, Type type ) : NetworkObject
id uint
type System.Type
Результат NetworkObject
        public static NetworkObject Create(uint id, Type type)
        {
            var entity = CreateEntity(id);

            var comp = Activator.CreateInstance(type) as NetworkObject;

            List<NetworkObject> objList;
            if (_netObjectCache.TryGetValue(entity, out objList))
            {
                objList.Add(comp);
            }
            else
            {
                objList = new List<NetworkObject>();
                objList.Add(comp);
                _netObjectCache[entity] = objList;
            }

            if (_inSnapshot && comp != null)
            {
                _snapshotCache.Add(new Tuple<Entity, NetworkObject>(entity, comp));
            }
            else
            {
                var compType = ComponentTypeManager.GetTypeFor(type);
                if (entity.GetComponent(compType) == null)
                {
                    comp.Owner = entity;
                    entity.AddComponent(comp as IComponent);
                }

            }

            return comp;
        }

Same methods

ObjectMapper::Create ( uint id, ushort typeId ) : NetworkObject