Beispiel #1
0
    /// <summary>
    /// 右边的技能列表
    /// </summary>
    private void onRightActListGUI(EditorScrollWidgetState <object> scrollWidget)
    {
        GUILayout.BeginVertical();
        EditorGUIUtil.DrawHeader("技能列表");
        scrollWidget.Pos = GUILayout.BeginScrollView(scrollWidget.Pos);


        GUILayout.EndScrollView();
        GUILayout.EndVertical();
    }
Beispiel #2
0
    /// <summary>
    /// 初始化布局
    /// </summary>
    private void initRoleLayout()
    {
        leftRoleTree = new EditorScrollWidgetState <object>();
        skillGroups  = new Dictionary <string, EditorWidgetState>();

        string dir = string.Concat(ApplicationPath.PersistentRootPath, "Act");

        if (!Directory.Exists(dir))
        {
            return;
        }

        string[] dirAndFiles = Directory.GetFiles(dir, "*.act.*", SearchOption.AllDirectories);
        if (dirAndFiles == null)
        {
            return;
        }

        int index = 0;

        foreach (string file in dirAndFiles)
        {
            if (!Path.HasExtension(file) || file.EndsWith(".meta"))
            {
                continue;
            }

            string groupName = Path.GetDirectoryName(file);
            groupName = groupName.Replace(dir, "").Replace("\\", "");

            this.addSkillGroup(groupName);

            string fileName = Path.GetFileNameWithoutExtension(file);
            fileName = fileName.Replace(".act", "");
            this.addSkillAct(groupName, fileName);

            //设置默认选择项
            if (index == 0)
            {
                mainEditor.InitActItemProperty(groupName, fileName);
            }
            index++;
        }
    }
Beispiel #3
0
    private void OnEnable()
    {
        List <object> classList = new List <object>();

        AttributeUtil.GetAllInstanceClass <ActModuleAttribute>(classList, typeof(AttributeUtil));
        AttributeUtil.GetAllInstanceClass <ActModuleAttribute>(classList, typeof(InjectDataAttribute));

        foreach (object obj in classList)
        {
            Type               type          = obj.GetType();
            object[]           modea         = type.GetCustomAttributes(typeof(ActModuleAttribute), false);
            ActModuleAttribute modeAttribute = modea[0] as ActModuleAttribute;
            moduleMap[modeAttribute.ModuleEnum] = type;
        }

        //加载左边的角色列表
        leftRoleTreeMgr = new ActRoleTree(this);
        rightActSkills  = new EditorScrollWidgetState <object>();
    }