Пример #1
0
        /// <summary>
        /// BT Canvas extra GUI States
        /// </summary>
        /// <param name="controller">MoonEditor Controller</param>
        /// <returns>Defined gui states</returns>
        public override Dictionary <int, System.Action> CanvasGUIStates(MoonEditorController controller)
        {
            Dictionary <int, System.Action> dic = new Dictionary <int, System.Action>();

            dic.Add(4, () =>
            {
                MoonGUI.DrawGrid(new Rect(0, 17, Screen.width, Screen.height), Vector2.zero);
                NewScriptName = MoonModal.InputPanel(new Vector2(200, 100), "Create " + ((NewScriptMode == 0) ? " Action" : "Decision"), "Ok", "Cancel", "Class Name", NewScriptName,
                                                     () =>
                {
                    if (MoonIO.ValidFileName(NewScriptName))
                    {
                        if (MoonIO.ValidClassName(NewScriptName))
                        {
                            string Savefolder = MoonSettings.ActionsSaveDirectory + "/BehaviorTrees";

                            if (NewScriptMode >= 1)
                            {
                                // create Decition
                                Savefolder += "/_Decisions";
                            }
                            CreateBTScript(Savefolder, NewScriptMode == 0, NewScriptName);
                            NewScriptName = string.Empty;
                            controller.CurrentGUIState = 0;
                        }
                    }
                }, () =>
                {
                    NewScriptName = string.Empty;
                    controller.CurrentGUIState = 0;
                });
            });

            return(dic);
        }
Пример #2
0
        /// <summary>
        /// BT canvas extra context menu
        /// </summary>
        /// <returns>Extra context meny elements</returns>
        public override Dictionary <string, System.Action> CanvasContextMenu(MoonEditorController controller)
        {
            Dictionary <string, System.Action> dic = new Dictionary <string, System.Action>();

            dic.Add("$", null);
            dic.Add("Create/Action", () =>
            {
                NewScriptMode = 0;
                controller.CurrentGUIState = 4;
            });

            dic.Add("Create/Decision", () =>
            {
                NewScriptMode = 1;
                controller.CurrentGUIState = 4;
            });

            return(dic);
        }
Пример #3
0
 /// <summary>
 /// Canvas GUI States and it's default actions
 /// </summary>
 /// <returns></returns>
 public virtual Dictionary <int, System.Action> CanvasGUIStates(MoonEditorController controller)
 {
     return(new Dictionary <int, System.Action>());
 }
Пример #4
0
 /// <summary>
 /// User defined context menu elements on empty space
 /// </summary>
 /// <returns>Dictionary with user options</returns>
 public virtual Dictionary <string, System.Action> CanvasContextMenu(MoonEditorController controller)
 {
     return(new Dictionary <string, System.Action>());
 }