| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- using UnityEngine;
- using UnityEditor;
- using Cinemachine.Editor;
- namespace Cinemachine
- {
- [InitializeOnLoad]
- internal static class CinemachineColliderPrefs
- {
- private static bool SettingsFoldedOut
- {
- get { return EditorPrefs.GetBool(kColliderSettingsFoldoutKey, false); }
- set
- {
- if (value != SettingsFoldedOut)
- {
- EditorPrefs.SetBool(kColliderSettingsFoldoutKey, value);
- }
- }
- }
- public static Color FeelerHitColor
- {
- get
- {
- return CinemachineSettings.UnpackColour(EditorPrefs.GetString(kFeelerHitColourKey, CinemachineSettings.PackColor(Color.yellow)));
- }
- set
- {
- if (value != FeelerHitColor)
- {
- EditorPrefs.SetString(kFeelerHitColourKey, CinemachineSettings.PackColor(value));
- }
- }
- }
- public static Color FeelerColor
- {
- get
- {
- return CinemachineSettings.UnpackColour(EditorPrefs.GetString(kFeelerColourKey, CinemachineSettings.PackColor(Color.gray)));
- }
- set
- {
- if (value != FeelerColor)
- {
- EditorPrefs.SetString(kFeelerColourKey, CinemachineSettings.PackColor(value));
- }
- }
- }
- private const string kColliderSettingsFoldoutKey = "CNMCN_Collider_Foldout";
- private const string kFeelerHitColourKey = "CNMCN_Collider_FeelerHit_Colour";
- private const string kFeelerColourKey = "CNMCN_Collider_Feeler_Colour";
- static CinemachineColliderPrefs()
- {
- Cinemachine.Editor.CinemachineSettings.AdditionalCategories += DrawColliderSettings;
- }
- private static void DrawColliderSettings()
- {
- SettingsFoldedOut = EditorGUILayout.Foldout(SettingsFoldedOut, "Collider Settings", true);
- if (SettingsFoldedOut)
- {
- EditorGUI.indentLevel++;
- EditorGUI.BeginChangeCheck();
- FeelerHitColor = EditorGUILayout.ColorField("Feeler Hit", FeelerHitColor);
- FeelerColor = EditorGUILayout.ColorField("Feeler", FeelerColor);
- if (EditorGUI.EndChangeCheck())
- {
- UnityEditorInternal.InternalEditorUtility.RepaintAllViews();
- }
- EditorGUI.indentLevel--;
- }
- }
- }
- }
|