CinemachineBasicMultiChannelPerlinEditor.cs 1.0 KB

123456789101112131415161718192021222324252627282930
  1. using UnityEngine;
  2. using UnityEditor;
  3. namespace Cinemachine.Editor
  4. {
  5. [CustomEditor(typeof(CinemachineBasicMultiChannelPerlin))]
  6. internal sealed class CinemachineBasicMultiChannelPerlinEditor
  7. : BaseEditor<CinemachineBasicMultiChannelPerlin>
  8. {
  9. private void OnEnable()
  10. {
  11. NoiseSettingsPropertyDrawer.InvalidateProfileList();
  12. }
  13. public override void OnInspectorGUI()
  14. {
  15. BeginInspector();
  16. if (FindProperty(x => x.m_NoiseProfile).objectReferenceValue == null)
  17. EditorGUILayout.HelpBox(
  18. "A Noise Profile is required. You may choose from among the NoiseSettings assets defined in the project.",
  19. MessageType.Warning);
  20. DrawRemainingPropertiesInInspector();
  21. Rect rect = EditorGUILayout.GetControlRect(true);
  22. rect.width -= EditorGUIUtility.labelWidth; rect.x += EditorGUIUtility.labelWidth;
  23. if (GUI.Button(rect, "New random seed"))
  24. Target.ReSeed();
  25. }
  26. }
  27. }