protected override IGameObjectComponent CreateItem(CreateManagerItem createManagerItem) { var createComponentItemInfo = (CreateComponentManagerItem)createManagerItem; var gameObject = GameObjectTrackedManager.GetItem(createComponentItemInfo.ParentItemId.Value); return(CreateItem(gameObject, createComponentItemInfo.ComponentName)); }
public virtual void Create(CreateManagerItem createManagerItem) { var item = CreateItem(createManagerItem); var tracker = CreateTracker(createManagerItem.Id, item); foreach (var propertyValue in createManagerItem.Values) { tracker.UpdateProperty(propertyValue); } Trackers.Add(createManagerItem.Id, tracker); OnTrackerItemCreated(createManagerItem, tracker); }
protected virtual void CreateManagerPropertyItem(CreateManagerItem createManagerItem) { if (createManagerItem.ManagerName == nameof(Manager.SceneTrackedManager)) { CreateSceneItem(createManagerItem); } else if (createManagerItem.ManagerName == nameof(Manager.GameObjectTrackedManager)) { CreateGameObjectItem(createManagerItem); } else if (createManagerItem.ManagerName == nameof(Manager.GameObjectComponentTrackedManager)) { CreateGameObjectComponentItem(createManagerItem); } else if (createManagerItem.ManagerName == nameof(Manager.ComponentPropertyTrackedManager)) { CreateManagerPropertyItem(createManagerItem); } else { throw new NotImplementedException(nameof(createManagerItem.ManagerName)); } }
protected override void OnTrackerItemCreated(CreateManagerItem createManagerItem, ITracker <IGameObjectComponent> tracker) { base.OnTrackerItemCreated(createManagerItem, tracker); tracker.Value.Initialize(); }
protected override IProperty CreateItem(CreateManagerItem createManagerItem) { throw new System.NotImplementedException(); }
protected abstract T CreateItem(CreateManagerItem createManagerItem);
protected virtual void OnTrackerItemCreated(CreateManagerItem createManagerItem, ITracker <T> tracker) { }
protected virtual void OnAddItem(CreateManagerItem obj) { AddItem?.Invoke(obj); }
protected override void OnTrackerItemCreated(CreateManagerItem createManagerItem, ITracker <IScene> tracker) { base.OnTrackerItemCreated(createManagerItem, tracker); tracker.Value.Initialize(); }
protected override IScene CreateItem(CreateManagerItem createManagerItem) { return(ServiceProvider.GetService <IScene>()); }
protected override IGameObject CreateItem(CreateManagerItem createManagerItem) { var scene = SceneTrackedManager.GetItem(createManagerItem.ParentItemId.Value); return(scene.AddGameObject()); }
private void SceneTrackedManagerOnAddItem(CreateManagerItem obj) { NetworkClient.Send(obj, _options.RoomId, QueryType.Create); }
public void CreateComponentPropertyItem(CreateManagerItem createManagerItem) { ComponentPropertyTrackedManager.Create(createManagerItem); }
public void CreateGameObjectComponentItem(CreateManagerItem createManagerItem) { GameObjectComponentTrackedManager.Create(createManagerItem); }
public void CreateSceneItem(CreateManagerItem createManagerItem) { SceneTrackedManager.Create(createManagerItem); }