public override void OnInspectorGUI() { if (this.target == null) { return; } //base.OnInspectorGUI(); //if (Application.isPlaying) return; var con = target as FB.PosePlus.Dev_AniEditor; con.aniInEdit = EditorGUILayout.ObjectField("EditAni", con.aniInEdit, typeof(FB.PosePlus.AniClip), true) as FB.PosePlus.AniClip; var player = con.GetComponent <FB.PosePlus.AniPlayer>(); if (player != null) { if (player.clips.Contains(con.aniInEdit) == false) { con.aniInEdit = null; } } if (con.aniInEdit == null) { EditorGUILayout.HelpBox("选择一个动画,必须来自AniPlayer的Clip中的动画", MessageType.Info); } else { if (GUILayout.Button("打开编辑动画Window")) { Window_AniEditor.Show(con); } } }
void OnGUI_ShowLeft() { GUILayout.BeginVertical(); { { GUILayout.BeginHorizontal(); GUILayout.Space(150); GUILayout.Label(clip_a.name); GUILayout.EndHorizontal(); } leftpos = GUILayout.BeginScrollView(leftpos, false, false, GUILayout.Width(300)); GUILayout.BeginVertical(); { #region 动画 GUILayout.BeginHorizontal(); GUILayout.Label("骨 骼"); int i = 0; int j = 0; if (GUILayout.Button("右移>>", GUILayout.Width(50))) { foreach (var bone in clip_a.boneinfo) { int temp = i; foreach (var b in clip_b.boneinfo) { if (bone == b) { i++; break; } } if (temp == i) { j++; } } if (EditorUtility.DisplayDialog("对比信息", "相同骨骼:" + i.ToString() + "\n不同骨骼:" + j.ToString() + "\n 是否复制到右边?", "Yes", "No")) { lastoperation = Operation.left_bone; clip_b.boneinfo = new List <string>(clip_a.boneinfo); } } GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region Box GUILayout.BeginHorizontal(); GUILayout.Label("碰撞盒"); if (GUILayout.Button("右移>>", GUILayout.Width(50))) { MoveData(Operation.left_box); } GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 触发点 GUILayout.BeginHorizontal(); GUILayout.Label("触发点"); if (GUILayout.Button("右移>>", GUILayout.Width(50))) { MoveData(Operation.left_dot); } GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 特效 GUILayout.BeginHorizontal(); GUILayout.Label("特 效"); if (GUILayout.Button("右移>>", GUILayout.Width(50))) { MoveData(Operation.left_effct); } GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 音效 GUILayout.BeginHorizontal(); GUILayout.Label("音效"); if (GUILayout.Button("右移>>", GUILayout.Width(50))) { MoveData(Operation.left_adudio); } GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 撤销 GUILayout.BeginHorizontal(); GUILayout.Space(250); if (GUILayout.Button("还原", GUILayout.Width(50))) { clip_a.frames = new List <FB.PosePlus.Frame>(clip_a_cache.frames); } GUILayout.EndHorizontal(); if (GUILayout.Button("Save")) { EditorUtility.SetDirty(clip_a); EditorUtility.SetDirty(clip_b); } #endregion } GUILayout.EndVertical(); GUILayout.EndScrollView(); } GUILayout.EndVertical(); Window_AniEditor.Layout_DrawSeparatorV(Color.white); }
void OnGUI_ShowRight() { GUILayout.BeginVertical(); { { GUILayout.BeginHorizontal(); GUILayout.Space(150); GUILayout.Label(clip_b.name); GUILayout.EndHorizontal(); } rightpos = GUILayout.BeginScrollView(rightpos, false, false, GUILayout.Width(300)); GUILayout.BeginVertical(); { #region 动画 GUILayout.BeginHorizontal(); if (GUILayout.Button("<<左移", GUILayout.Width(50))) { } GUILayout.Space(200); GUILayout.Label("骨 骼", GUILayout.Width(50)); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region Box GUILayout.BeginHorizontal(); if (GUILayout.Button("<<左移", GUILayout.Width(50))) { MoveData(Operation.right_box); } GUILayout.Space(200); GUILayout.Label("碰撞盒", GUILayout.Width(50)); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 触发点 GUILayout.BeginHorizontal(); if (GUILayout.Button("<<左移", GUILayout.Width(50))) { MoveData(Operation.right_box); } GUILayout.Space(200); GUILayout.Label("触发点", GUILayout.Width(50)); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 特效 GUILayout.BeginHorizontal(); if (GUILayout.Button("<<左移", GUILayout.Width(50))) { MoveData(Operation.right_effct); } GUILayout.Space(200); GUILayout.Label("特 效", GUILayout.Width(50)); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 音效 GUILayout.BeginHorizontal(); if (GUILayout.Button("<<左移", GUILayout.Width(50))) { MoveData(Operation.right_audio); } GUILayout.Space(200); GUILayout.Label("音 效", GUILayout.Width(50)); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region 撤销 GUILayout.BeginHorizontal(); if (GUILayout.Button("还原", GUILayout.Width(50))) { clip_b.frames = new List <FB.PosePlus.Frame>(clip_b_cache.frames); } GUILayout.EndHorizontal(); #endregion } GUILayout.EndVertical(); GUILayout.EndScrollView(); } GUILayout.EndVertical(); Window_AniEditor.Layout_DrawSeparatorV(Color.white); }