public CheatSystemManager() { Init(); #if UNITY_EDITOR _currentLevel = EnumRootLevel.Max; #else _currentLevel = EnumRootLevel.Player; #endif }
private void CalcCommand(EnumRootLevel lv) { List <string> commandList = new List <string>(); StringBuilder builder = new StringBuilder(); MethodInfo[] mths = this.GetType().GetMethods(); for (int i = 0; i < mths.Length; i++) { CommandInfo exp = (CommandInfo)System.Attribute.GetCustomAttribute(mths[i], typeof(CommandInfo)); if (exp != null && exp.RootLevel <= lv) { commandList.Add(mths[i].Name); //builder.Append("[" + exp.RequireLevelName + "]"); builder.Append(string.Format(ConstLanguage.CommandName, mths[i].Name)); builder.Append("("); ParameterInfo[] paramsInfo = mths[i].GetParameters(); foreach (var item in paramsInfo) { builder.Append(string.Format(ConstLanguage.CommandParams, item.ParameterType.Name) + " " + item.Name); if (!string.IsNullOrEmpty(item.DefaultValue.ToString())) { builder.Append("="); builder.Append(string.Format(ConstLanguage.CommandName, item.DefaultValue)); } builder.Append(","); } if (paramsInfo.Length > 0) { builder.Remove(builder.Length - 1, 1); } builder.Append(")"); builder.Append(":"); builder.AppendLine(exp.Explain); } } _commandList[lv] = commandList; _commandDescList[lv] = builder.ToString(); }
/// <summary> /// 获取指定权限信息 /// </summary> public static Passward GetRootLevelDetail(EnumRootLevel level) { Passward p = System.Attribute.GetCustomAttribute(level.GetType().GetField(level.ToString()), typeof(Passward)) as Passward; return(p); }
public CommandInfo(string name, string str, EnumRootLevel level = EnumRootLevel.Player) { _exp = str; _name = name; _rootLevel = level; }