Beispiel #1
0
        private void PasteBehaviorTreeVar()
        {
            try
            {
                VariableFieldListContent content = XmlUtility.StringToObject <VariableFieldListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    VariableFieldDesigner field = content.DataList[i];
                    string fieldName            = field.VariableFieldName;
                    while (m_EditBehaviorTree.ExistBehaviorTreeVar(fieldName))
                    {
                        fieldName += "_New";
                    }

                    field.VariableFieldName = fieldName;
                    m_EditBehaviorTree.AddBehaviorTreeVar(field);
                }
                Exec("Refresh_BehaviorTreeVar");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个变量!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
Beispiel #2
0
 public GlobalVariableForm(VariableDesigner globalVariable)
 {
     m_GlobalVariable     = globalVariable;
     m_OldContent         = XmlUtility.ObjectToString(globalVariable);
     m_EditGlobalVariable = XmlUtility.StringToObject <VariableDesigner>(m_OldContent);
     InitializeComponent();
 }
        //粘贴字段
        private void PasteField()
        {
            try
            {
                FieldListContent content = XmlUtility.StringToObject <FieldListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    NodeField field     = content.DataList[i];
                    string    fieldName = field.FieldName;
                    while (m_NodeClass.ExistFieldName(fieldName))
                    {
                        fieldName += "_New";
                    }

                    field.FieldName = fieldName;
                    m_NodeClass.AddField(field);
                }
                Exec("Refresh");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个字段!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
        /// <summary>
        /// 粘贴行为树
        /// </summary>
        private void PasteAgent()
        {
            try
            {
                AgentListContent content = XmlUtility.StringToObject <AgentListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    AgentDesigner agent   = content.DataList[i];
                    string        agentID = "NewAgent_" + DateTime.Now.Ticks;
                    do
                    {
                        agentID = "NewAgent_" + DateTime.Now.Ticks;
                    } while (TreeData.ExistAgent(agentID));

                    agent.AgentID = agentID;
                    TreeViewManager.AddAgent(agent);
                }

                ShowInfo("您粘贴了" + content.DataList.Count + "棵行为树!!!");
            }
            catch (Exception ex)
            {
                ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
        private void PasteClass()
        {
            try
            {
                NodeDefineListContent content = XmlUtility.StringToObject <NodeDefineListContent>(Clipboard.GetText());

                NodeDefine nodeDefine = null;
                for (int i = 0; i < content.DataList.Count; i++)
                {
                    nodeDefine = content.DataList[i];
                    string classType = nodeDefine.ClassType;
                    do
                    {
                        classType += "_New";
                    }while (m_Nodes.ExistClassType(classType));

                    nodeDefine.ClassType = classType;
                    m_Nodes.AddClass(nodeDefine);
                }

                m_NodeTreeViewManager.BindNodeDefine(nodeDefine);

                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个节点类!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
Beispiel #6
0
 public EditBehaviorTreeForm(BehaviorTreeDesigner behaviorTree)
 {
     m_BehaviorTree        = behaviorTree;
     m_BehaviorTreeContent = XmlUtility.ObjectToString(m_BehaviorTree);
     m_EditBehaviorTree    = XmlUtility.StringToObject <BehaviorTreeDesigner>(m_BehaviorTreeContent);
     InitializeComponent();
 }
Beispiel #7
0
        /// <summary>
        /// 粘贴行为树
        /// </summary>
        private void PasteBehaviorTree()
        {
            try
            {
                BehaviorTreeListContent content = XmlUtility.StringToObject <BehaviorTreeListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    BehaviorTreeDesigner behaviorTree = content.DataList[i];
                    string behaviorTreeID             = "New_" + DateTime.Now.Ticks;
                    do
                    {
                        behaviorTreeID = "New_" + DateTime.Now.Ticks;
                    } while (BehaviorTreeData.ExistBehaviorTree(behaviorTreeID));

                    behaviorTree.ID = behaviorTreeID;
                    TreeViewManager.AddBehaviorTree(behaviorTree);
                }

                ShowInfo("您粘贴了" + content.DataList.Count + "个行为树!!!");
            }
            catch (Exception ex)
            {
                ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
        private void Paste()
        {
            try
            {
                EnumListContent content = (EnumListContent)XmlUtility.StringToObject<EnumListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    CustomEnum customEnum = content.DataList[i];
                    string enumType = customEnum.EnumType;
                    do
                    {
                        enumType += "_New";
                    }
                    while (m_NodeClasses.ExistEnumType(enumType));

                    customEnum.EnumType = enumType;
                    m_NodeClasses.AddEnum(customEnum);
                }
                Exec("Refresh");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个枚举!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
 public EditAgentForm(AgentDesigner agent)
 {
     m_Agent        = agent;
     m_AgentContent = XmlUtility.ObjectToString(m_Agent);
     m_EditAgent    = XmlUtility.StringToObject <AgentDesigner>(m_AgentContent);
     InitializeComponent();
 }
Beispiel #10
0
        private void Paste()
        {
            try
            {
                VariableItemListContent content = XmlUtility.StringToObject <VariableItemListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    VariableFieldDesigner variableField = content.DataList[i];
                    string variableStr = variableField.VariableFieldName;
                    do
                    {
                        variableStr += "_New";
                    }while (m_EditContextVariable.ExistVariableStr(variableStr));

                    variableField.VariableFieldName = variableStr;
                    m_EditContextVariable.Add(variableField);
                }

                Exec("Refresh");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个变量选项!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
Beispiel #11
0
 public ContextVariableForm(VariableDesigner contextVariable)
 {
     m_ContextVariable     = contextVariable;
     m_OldContent          = XmlUtility.ObjectToString(contextVariable);
     m_EditContextVariable = XmlUtility.StringToObject <VariableDesigner>(m_OldContent);
     InitializeComponent();
 }
Beispiel #12
0
        private string m_OldContent;//用于检测对象有没有被改变了

        public EditEnumForm(EnumForm enumForm, CustomEnum customEnum)
        {
            m_EnumForm       = enumForm;
            m_CustomEnum     = customEnum;
            m_OldContent     = XmlUtility.ObjectToString(m_CustomEnum);
            m_EditCustomEnum = XmlUtility.StringToObject <CustomEnum>(m_OldContent);
            InitializeComponent();
        }
        public EditGroupForm(Group group)
        {
            m_Group      = group;
            m_OldContent = XmlUtility.ObjectToString(m_Group);
            m_EditGroup  = XmlUtility.StringToObject <Group>(m_OldContent);

            InitializeComponent();
        }
Beispiel #14
0
        public EditGroupForm(BehaviorGroupDesigner group)
        {
            m_Group      = group;
            m_OldContent = XmlUtility.ObjectToString(m_Group);
            m_EditGroup  = XmlUtility.StringToObject <BehaviorGroupDesigner>(m_OldContent);

            InitializeComponent();
        }
 public EditClassForm(ClassForm classForm, NodeClass nodeClass, Action editCallback)
 {
     m_ClassForm     = classForm;
     m_NodeClass     = nodeClass;
     m_Content       = XmlUtility.ObjectToString(m_NodeClass);
     m_EditNodeClass = XmlUtility.StringToObject <NodeClass>(m_Content);
     m_EditCallback  = editCallback;
     InitializeComponent();
 }
Beispiel #16
0
 public EditNodeDefineForm(NodeTemplateForm classForm, NodeDefine nodeDefine, Action editCallback)
 {
     m_ClassForm      = classForm;
     m_NodeDefine     = nodeDefine;
     m_Content        = XmlUtility.ObjectToString(m_NodeDefine);
     m_EditNodeDefine = XmlUtility.StringToObject <NodeDefine>(m_Content);
     m_EditCallback   = editCallback;
     InitializeComponent();
 }
Beispiel #17
0
        private void Paste()
        {
            try
            {
                EnumItemListContent content = XmlUtility.StringToObject <EnumItemListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    EnumItem customEnum = content.DataList[i];
                    string   enumStr    = customEnum.EnumStr;
                    do
                    {
                        enumStr += "_New";
                    }while (m_CustomEnum.ExistEnumStr(enumStr));

                    int enumValue = customEnum.EnumValue;
                    do
                    {
                        enumValue++;
                    }while (m_CustomEnum.ExistEnumValue(enumValue));

                    customEnum.EnumStr   = enumStr;
                    customEnum.EnumValue = enumValue;

                    m_CustomEnum.AddEnumItem(customEnum);
                }

                Exec("Refresh");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个枚举选项!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }