static void ShowWindow()
    {
        if(!instance)
            instance = CreateInstance();

        instance.Show();
    }
    //    [MenuItem("Component/AI/EditCondition")]
    //    public static void init ()
    //    {
    //        ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow (typeof(ConditionEditorWindow));
    //        window.title = "Root composite condition";
    //    }
    public static void DisplayConditionEditorWindow(AIEditor aiEditor,
		AIBehavior aiBehavior)
    {
        AlternateBehaviorEditorWindow window = (AlternateBehaviorEditorWindow)EditorWindow.GetWindow (typeof(AlternateBehaviorEditorWindow));
        window.aiBehavior = aiBehavior;
        window.aiEditor = aiEditor;
        window.Show ();
    }
    //    [MenuItem("Component/AI/EditCondition")]
    //    public static void init ()
    //    {
    //        ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow (typeof(ConditionEditorWindow));
    //        window.title = "Root composite condition";
    //    }
    public static void DisplayConditionEditorWindow(AIEditor aiEditor,
		CompositeConditionWrapper compositionConditionWrapper)
    {
        ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow (typeof(ConditionEditorWindow));
        window.compositionConditionWrapper = compositionConditionWrapper;
        window.aiEditor = aiEditor;
        window.Show ();
    }
Exemple #4
0
//	[MenuItem("Component/AI/EditCondition")]
//	public static void init ()
//	{
//		ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow (typeof(ConditionEditorWindow));
//		window.title = "Root composite condition";
//	}

    public static void DisplayConditionEditorWindow(AIEditor aiEditor,
                                                    CompositeConditionWrapper compositionConditionWrapper)
    {
        ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow(typeof(ConditionEditorWindow));

        window.compositionConditionWrapper = compositionConditionWrapper;
        window.aiEditor = aiEditor;
        window.Show();
    }
Exemple #5
0
//	[MenuItem("Component/AI/EditCondition")]
//	public static void init ()
//	{
//		ConditionEditorWindow window = (ConditionEditorWindow)EditorWindow.GetWindow (typeof(ConditionEditorWindow));
//		window.title = "Root composite condition";
//	}

    public static void DisplayConditionEditorWindow(AIEditor aiEditor,
                                                    AIBehavior aiBehavior)
    {
        AlternateBehaviorEditorWindow window = (AlternateBehaviorEditorWindow)EditorWindow.GetWindow(typeof(AlternateBehaviorEditorWindow));

        window.aiBehavior = aiBehavior;
        window.aiEditor   = aiEditor;
        window.Show();
    }
Exemple #6
0
 public virtual void EditDecalData()
 {
     EnableEditDecalData = EditorGUILayout.BeginToggleGroup("---Edit Decal Data", EnableEditDecalData);
     if (EnableEditDecalData)
     {
         if (GUILayout.Button("Add Decal data"))
         {
             DecalData         DecalData = new DecalData();
             IList <DecalData> l         = selectedRagdoll.DecalData.ToList <DecalData> ();
             l.Add(DecalData);
             selectedRagdoll.DecalData = l.ToArray <DecalData> ();
         }
         for (int i = 0; i < selectedRagdoll.DecalData.Length; i++)
         {
             DecalData DecalData = selectedRagdoll.DecalData [i];
             EditorGUILayout.LabelField("------------------------ " + DecalData.Name);
             DecalData.Name           = EditorGUILayout.TextField(new GUIContent("Name", ""), DecalData.Name);
             DecalData.UseGlobalDecal = EditorGUILayout.Toggle(new GUIContent("UseGlobalDecal?", "使用全局Decal设定?"), DecalData.UseGlobalDecal);
             if (DecalData.UseGlobalDecal)
             {
                 DecalData.GlobalType = (GlobalDecalType)EditorGUILayout.EnumPopup(new GUIContent("Global decal type:", ""), DecalData.GlobalType);
             }
             else
             {
                 DecalData.DestoryInTimeOut = EditorGUILayout.Toggle(new GUIContent("Destory this decal in timeout?", "Decal是否有Lifetime?"), DecalData.DestoryInTimeOut);
                 if (DecalData.DestoryInTimeOut)
                 {
                     DecalData.DestoryTimeOut = EditorGUILayout.FloatField(new GUIContent("Destory Timeout:", ""), DecalData.DestoryTimeOut);
                 }
                 DecalData.ProjectDirection = (HorizontalOrVertical)EditorGUILayout.EnumPopup(new GUIContent("Decal Project Direction", "创建Decal的投射方向,对于地上的Decal,投射方向是Vertical,对于墙上的Decal,投射方向是Horizontal."), DecalData.ProjectDirection);
                 DecalData.ApplicableLayer  = EditorGUILayoutx.LayerMaskField("ApplicableLayer", DecalData.ApplicableLayer);
                 DecalData.DecalObjects     = AIEditor.EditObjectArray("--------------Edit Decal object ------", DecalData.DecalObjects);
                 DecalData.ScaleRate        = EditorGUILayout.FloatField(new GUIContent("Scale rate:", "Final scale = initial scale * ScaleRate"), DecalData.ScaleRate);
                 //Delete this DecalData
                 if (GUILayout.Button("Delete DecalData:" + DecalData.Name))
                 {
                     IList <DecalData> l = selectedRagdoll.DecalData.ToList <DecalData> ();
                     l.Remove(DecalData);
                     selectedRagdoll.DecalData = l.ToArray <DecalData> ();
                 }
             }
             EditorGUILayout.Space();
         }
     }
     EditorGUILayout.EndToggleGroup();
 }
Exemple #7
0
    public override void OnInspectorGUI()
    {
        if(aiEditor == null)
        {
            aiEditor = new AIEditor(target as AI);
        }
        EditorGUILayout.LabelField("Editing AI: " + (target as AI).Name);
        EnableBaseInspector = EditorGUILayout.Toggle(new GUIContent("Base Inspector", ""), EnableBaseInspector);
        if(EnableBaseInspector)
        {
           base.OnInspectorGUI();
        }

        EnableAIInspector = EditorGUILayout.Toggle(new GUIContent("Advanced AI Inspector", ""), EnableAIInspector);
        if(EnableAIInspector)
        {
           if (GUILayout.Button ("Save object")) {
                EditorUtility.SetDirty (target as AI);
           }
           aiEditor.EditAI();
        }
    }
Exemple #8
0
    public override void OnInspectorGUI()
    {
        if (aiEditor == null)
        {
            aiEditor = new AIEditor(target as AI);
        }
        EditorGUILayout.LabelField("Editing AI: " + (target as AI).Name);
        EnableBaseInspector = EditorGUILayout.Toggle(new GUIContent("Base Inspector", ""), EnableBaseInspector);
        if (EnableBaseInspector)
        {
            base.OnInspectorGUI();
        }

        EnableAIInspector = EditorGUILayout.Toggle(new GUIContent("Advanced AI Inspector", ""), EnableAIInspector);
        if (EnableAIInspector)
        {
            if (GUILayout.Button("Save object"))
            {
                EditorUtility.SetDirty(target as AI);
            }
            aiEditor.EditAI();
        }
    }
 private static AIEditor CreateInstance()
 {
     AIEditor editor = new AIEditor();
     editor.autoRepaintOnSceneChange = true;
     return editor;
 }