public override void OnLoaded(ContentHandler contentHandler) { RuntimeInspectorStartup.AddListener((sender, evt) => { var ris = sender as RuntimeInspectorStartup; var tpContainer = ris.transform.Find("Container/Menu/Third-party Group"); if (tpContainer) { transform.SetParent(tpContainer.transform); } else { Debug.LogError("Couldn't find RuntimeInspector UI Third-party Group!"); } var uiContainer = ris.transform.Find("Container"); if (uiContainer) { uiContainer.SetParent(RoR2.RoR2Application.instance.mainCanvas.transform); uiContainer.SetAsLastSibling(); } else { Debug.LogError("Couldn't find RuntimeInspector UI Container!"); } hierarchy = ris.Hierarchy; inspector = ris.Inspector; ((RuntimeInspectorStartup)sender).Hierarchy.OnSelectionChanged += Pinger.SetPing; }); }
private void Awake() { if (m_instance != null) { Debug.LogWarning("Another instance of SplineEditorSettings already exist"); } if (m_mirroredModeMaterial == null) { Shader shader = Shader.Find("Battlehub/SplineEditor/SSBillboard"); m_mirroredModeMaterial = new Material(shader); m_mirroredModeMaterial.name = "MirroredModeMaterial"; m_mirroredModeMaterial.color = MirroredModeColor; m_mirroredModeMaterial.SetInt("_Cull", (int)UnityEngine.Rendering.CullMode.Off); m_mirroredModeMaterial.SetInt("_ZWrite", 1); m_mirroredModeMaterial.SetInt("_ZTest", (int)UnityEngine.Rendering.CompareFunction.Always); } if (m_alignedModeMaterial == null) { m_alignedModeMaterial = Instantiate(m_mirroredModeMaterial); m_alignedModeMaterial.name = "AlignedModeMaterial"; m_alignedModeMaterial.color = AlignedModeColor; } if (m_freeModeMaterial == null) { m_freeModeMaterial = Instantiate(m_mirroredModeMaterial); m_freeModeMaterial.name = "FreeModeMaterial"; m_freeModeMaterial.color = FreeModeColor; } if (m_normalMaterial == null) { m_normalMaterial = Instantiate(m_mirroredModeMaterial); m_normalMaterial.name = "SplineMaterial"; m_normalMaterial.color = SplineColor; } if (m_splineMaterial == null) { Shader shader = Shader.Find("Battlehub/SplineEditor/Spline"); m_splineMaterial = new Material(shader); m_splineMaterial.name = "SplineMaterial"; m_splineMaterial.color = SplineColor; } if (m_controlPointMesh == null) { m_controlPointMesh = new Mesh(); m_controlPointMesh.name = "control point mesh"; m_controlPointMesh.vertices = new[] { new Vector3(0, 0, 0), new Vector3(0, 0, 0), new Vector3(0, 0, 0), new Vector3(0, 0, 0) }; m_controlPointMesh.triangles = new[] { 0, 1, 2, 0, 2, 3 }; m_controlPointMesh.uv = new[] { new Vector2(-1, -1), new Vector2(1, -1), new Vector2(1, 1), new Vector2(-1, 1) }; m_controlPointMesh.RecalculateBounds(); } m_instance = this; EnableRuntimeEditing(); m_hierarchy = GetComponentInChildren <RuntimeHierarchy>(); if (m_hierarchy != null) { m_hierarchy.TypeCriteria = typeof(SplineBase); m_hierarchy.SelectionChanged += OnHierarchySelectionChanged; #if UNITY_EDITOR m_hierarchy.SelectedItem = UnityEditor.Selection.activeGameObject; #endif } }