Exemplo n.º 1
0
 public static void DrawCommanAnimation(AICommonAnimation comAnim, AIClipGroup clipGroup)
 {
     GUILayout.Label("AI通用片断");
     comAnim.die  = AIFUIUtility.DrawAiLinkPopup(clipGroup, comAnim.die, "  默认连接", 150);
     comAnim.hit  = AIFUIUtility.DrawAiLinkPopup(clipGroup, comAnim.hit, "  受击", 150);
     comAnim.idle = AIFUIUtility.DrawAiLinkPopup(clipGroup, comAnim.idle, "  默认待机", 150);
     comAnim.run  = AIFUIUtility.DrawAiLinkPopup(clipGroup, comAnim.run, "  跑步", 150);
     comAnim.walk = AIFUIUtility.DrawAiLinkPopup(clipGroup, comAnim.walk, "  走路", 150);
 }
Exemplo n.º 2
0
 public static void DrawAIClip(AIClip clip, AIClipGroup paretGroup)
 {
     clip.clipKey       = EditorGUILayout.TextField("动画片断键值", clip.clipKey, GUILayout.Width(300));
     clip.name          = EditorGUILayout.TextField("片断名称", clip.name, GUILayout.Width(300));
     clip.animationName = EditorGUILayout.TextField("动画名称", clip.animationName, GUILayout.Width(300));
     if (paretGroup != null)
     {
         clip.defaultLinkClip = AIFUIUtility.DrawAiLinkPopup(paretGroup, clip.defaultLinkClip, "  默认连接", 150, 150);
     }
     clip.animationTime       = EditorGUILayout.FloatField("动画时长", clip.animationTime, GUILayout.Width(300));
     clip.attackRange         = EditorGUILayout.FloatField("攻击范围", clip.attackRange, GUILayout.Width(300));
     clip.CheckDirectionInput = GUILayout.Toggle(clip.CheckDirectionInput, "方向输入(检测到方向输入切换到跑步片断)", GUILayout.Width(250));
     clip.runToTarget         = GUILayout.Toggle(clip.runToTarget, "跑向目标(找到目标的情况向目标移动)", GUILayout.Width(200));
     clip.applyRootMotion     = GUILayout.Toggle(clip.applyRootMotion, "使用动画运动", GUILayout.Width(90));
 }
Exemplo n.º 3
0
    void OnGUI()
    {
        if (aiLink != null)
        {
            aiLink.linkToClip = AIFUIUtility.DrawAiLinkPopup(srcGroup, aiLink.linkToClip, "目标片断", 150);

            aiLink.checkAllCondition = GUILayout.Toggle(aiLink.checkAllCondition, "检查所有条件");
            aiLink.crossFadeTime     = EditorGUILayout.FloatField("动画过度时间", aiLink.crossFadeTime);

            GUILayout.BeginHorizontal();
            GUILayout.Label("连接条件:", GUILayout.Width(150));

            if (GUILayout.Button("添加条件", GUILayout.Width(100)))
            {
                AILinkCondictionSelectWnd.SelectNewCondition(delegate(AILinkCondiction con)
                {
                    aiLink.linkConditionList.Add(con);
                });
            }
            GUILayout.EndHorizontal();


            for (int i = 0; i < aiLink.linkConditionList.Count; i++)
            {
                AILinkCondiction con = aiLink.linkConditionList[i];
                EditorGUILayout.Separator();
                GUILayout.BeginHorizontal();
                if (GUILayout.Button("X", GUILayout.Width(30)))
                {
                    if (EditorUtility.DisplayDialog("提示", "删除条件?", "OK"))
                    {
                        aiLink.linkConditionList.Remove(con);
                    }
                }
                GUILayout.Label(con.ToString());

                GUILayout.EndHorizontal();
                GUILayout.BeginVertical();

                con.OnEditorUI();
                GUILayout.EndVertical();
            }
        }

        //GUILayout.Button("确定");
    }