/// <summary> /// 右边的技能列表 /// </summary> private void onRightActListGUI(EditorScrollWidgetState <object> scrollWidget) { GUILayout.BeginVertical(); EditorGUIUtil.DrawHeader("技能列表"); scrollWidget.Pos = GUILayout.BeginScrollView(scrollWidget.Pos); GUILayout.EndScrollView(); GUILayout.EndVertical(); }
/// <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++; } }
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>(); }