XWeaponTrailEditor.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. using System.Collections;
  2. using UnityEditor;
  3. using UnityEngine;
  4. using XftWeapon;
  5. [CustomEditor(typeof(XWeaponTrail))]
  6. [CanEditMultipleObjects]
  7. public class XWeaponTrailEditor : Editor {
  8. //Texture2D _icon;
  9. void OnEnable() {
  10. //_icon = Resources.Load("x-weapontrail_logo") as Texture2D;
  11. }
  12. public override void OnInspectorGUI() {
  13. EditorGUILayout.BeginVertical();
  14. //if (GUILayout.Button(_icon, new GUIStyle())) {
  15. // Application.OpenURL("");
  16. //}
  17. EditorGUILayout.LabelField("Version: " + XWeaponTrail.Version);
  18. EditorGUILayout.LabelField("Email: shallwaycn@gmail.com");
  19. //EditorGUILayout.LabelField("Web: http://phantomparticle.org");
  20. EditorGUILayout.EndVertical();
  21. GUI.color = Color.green;
  22. if (GUILayout.Button("Documentation", GUILayout.Height(32))) {
  23. Application.OpenURL("http://shallwaystudio.com/x-weapontrail/documentation/");
  24. }
  25. if (GUILayout.Button("Unity Forum", GUILayout.Height(32))) {
  26. Application.OpenURL("https://forum.unity.com/threads/x-weapontrail-the-best-weapon-trail-solution-in-unity.262954");
  27. }
  28. GUI.color = Color.white;
  29. GUILayout.Space(10);
  30. //DrawDefaultInspector();
  31. SerializedProperty UseWith2D = serializedObject.FindProperty("UseWith2D");
  32. EditorGUILayout.PropertyField(UseWith2D);
  33. if (UseWith2D.boolValue) {
  34. EditorGUILayout.PropertyField(serializedObject.FindProperty("SortingLayerName"));
  35. EditorGUILayout.PropertyField(serializedObject.FindProperty("SortingOrder"));
  36. }
  37. SerializedProperty UseWithSRP = serializedObject.FindProperty("UseWithSRP");
  38. EditorGUILayout.PropertyField(UseWithSRP);
  39. EditorGUILayout.PropertyField(serializedObject.FindProperty("PointStart"));
  40. EditorGUILayout.PropertyField(serializedObject.FindProperty("PointEnd"));
  41. EditorGUILayout.PropertyField(serializedObject.FindProperty("MaxFrame"));
  42. EditorGUILayout.PropertyField(serializedObject.FindProperty("Granularity"));
  43. EditorGUILayout.PropertyField(serializedObject.FindProperty("Fps"));
  44. EditorGUILayout.PropertyField(serializedObject.FindProperty("MyColor"));
  45. EditorGUILayout.PropertyField(serializedObject.FindProperty("MyMaterial"));
  46. if (GUI.changed) {
  47. serializedObject.ApplyModifiedProperties();
  48. EditorUtility.SetDirty(target);
  49. }
  50. }
  51. }