public override void OnAdd(SceneObjectBaseComponent c) { base.OnAdd(c); modelComponent = (ModelComponent)c; u3dTransComp = U3DSceneObject.GetComponent <U3DTransformComponent>(); AssetResources.LoadAsset(modelComponent.RePath, OnLoadedRes); }
public override void OnAdd(SceneObjectBaseComponent c) { base.OnAdd(c); transformComponent = (TransformComponent)c; Outer = new GameObject(U3DSceneObject.SceneObject.ToString()); OuterTransform = Outer.transform; LogicObject = Outer.GetComponent <LogicObject>(true); LogicObject.ID = U3DSceneObject.SceneObject.Id; }
public void RemoveComponent(SceneObjectBaseComponent bc) { for (int i = 0; i < _components.Count; i++) { if (_components[i].Component == bc) { _components[i].OnRemove(); _components.RemoveAt(i); } } }
public void AddComponent(SceneObjectBaseComponent t) { for (int i = 0; i < _components.Count; i++) { if (_components[i].GetType() == t.GetType()) { return; } } t.SceneObject = this; _components.Add(t); _components.Sort((a, b) => a.ExecuteOrder - b.ExecuteOrder); t.OnAdd(); FireEvent((int)SceneObject.SceneObjectEvent.OnAddComponent, this, EventGroup.NewArg <EventSingleArgs <SceneObjectBaseComponent>, SceneObjectBaseComponent>(t)); }
public T AddComponent <T>(SceneObjectBaseComponent comp) where T : U3DBaseComponent { for (int i = 0; i < _components.Count; i++) { if (_components[i] is T) { return(null); } } T t = Activator.CreateInstance <T>(); t.OnAdd(comp); _components.Add(t); return(t); }
public U3DBaseComponent AddComponent(SceneObjectBaseComponent bc) { var t = bc.GetType(); for (int i = 0; i < _components.Count; i++) { if (_components[i].GetType() == t) { return(null); } } Type nt = null; if (ComponentCorresponding.Corresponding.TryGetValue(t, out nt)) { U3DBaseComponent c = Activator.CreateInstance(nt) as U3DBaseComponent; c.U3DSceneObject = this; c.OnAdd(bc); _components.Add(c); return(c); } return(null); }
public virtual void OnAdd(SceneObjectBaseComponent c) { Component = c; }