//public static Bounds GetActiveConduitBounds() //{ // return m_activeConduit.mesh.bounds; //} public static void LinkActiveConduit(Bend bend) { Debug.Log("ConduitManager: LinkActiveConduit()"); // Remove any current Decorator component objects from Active Conduit AConduitDecorator decorator = m_activeConduit.GetComponentInChildren <AConduitDecorator>(); if (decorator != null) { decorator.OnRemove(); //Destroy( decorator.gameObject ); m_activeConduit.transform.DestroyChildren(); } m_activeConduit.Link(bend); // Set Decorator (if available) decorator = ConduitDecoratorFactory.Get(bend.type); if (decorator != null) { m_activeDecorator = Instantiate(decorator); m_activeDecorator.transform.SetParent(m_activeConduit.transform, false); m_activeDecorator.transform.localPosition = Vector3.zero; // @TODO - Redundant? m_activeDecorator.Set(m_activeConduit); } else { m_activeDecorator = null; } }