示例#1
0
        public ObjectStorage GetObjectStorage(ICGameObject gameObject)
        {
            if (!objectStorage.TryGetValue(gameObject.Pointer, out ObjectStorage? storage))
            {
                storage = new ObjectStorage();
                objectStorage[gameObject.Pointer] = storage;
            }

            return(storage);
        }
示例#2
0
 public static T?ToNwObjectSafe <T>(this ICGameObject gameObject) where T : NwObject
 {
     return(NwObject.CreateInternal(gameObject) as T);
 }
示例#3
0
 public static Lazy <NwObject?> ToNwObjectLazy(this ICGameObject gameObject)
 {
     return(new Lazy <NwObject?>(() => ToNwObject(gameObject)));
 }
示例#4
0
 public static NwObject?ToNwObject(this ICGameObject gameObject)
 {
     return(NwObject.CreateInternal(gameObject));
 }
示例#5
0
 public static T?ToNwObject <T>(this ICGameObject gameObject) where T : NwObject
 {
     return((T?)NwObject.CreateInternal(gameObject));
 }
示例#6
0
 public bool TryGetObjectStorage(ICGameObject gameObject, [NotNullWhen(true)] out ObjectStorage?storage)
 {
     return(objectStorage.TryGetValue(gameObject.Pointer, out storage));
 }
示例#7
0
 public void DestroyObjectStorage(ICGameObject gameObject)
 {
     objectStorage.Remove(gameObject.Pointer);
 }
示例#8
0
 protected NwObject(ICGameObject gameObject)
 {
     Object   = gameObject;
     ObjectId = gameObject.m_idSelf;
 }