/// <summary> /// 向该类添加一组处理,若有一个添加错误,则返回 false; /// </summary> /// <typeparam name="T"></typeparam> /// <param name="func"></param> /// <returns></returns> public bool AddDisposeFunction <T>(Func <JsonData, bool> func) { return(FunctionObtaining.AddAllObjectFunc <OPFunction, JsonData>((s, f) => { if (dicts.ContainsKey(s)) { return false; } dicts.Add(s, f); return true; })); }
/// <summary> /// 注册一个客户端类中所有符合要求的客户端事件; /// </summary> public static bool AddScpritEventFunc <T>(bool dontDestroy = false) where T : class { return(FunctionObtaining.AddAllObjectFunc <T>((s, f) => { if (EventFunctionLibrary.ExternalDisposeFunc(s)) { return false; } EventFunctionLibrary.Add(s, f, dontDestroy); return true; })); }
/// <summary> /// 收集该类的所有处理函数; /// </summary> private void CollectFunciton() { if (dicts.Count == 0) // 下面一个返回值没有用 TODO { FunctionObtaining.AddAllObjectFunc <OPFunction, JsonData>((s, f) => { if (dicts.ContainsKey(s)) { return(false); } dicts.Add(s, f); return(true); }); } }
/// <summary> /// 添加一个对象下,所有符合 Func 类型的方法; /// /// T1 为一个对象,T2 为对象的函数的参数;如果需要可以添加 T3为返回类型,这里默认返回类型必须为 bool; /// </summary> /// <param name="obj"></param> public static void AddScriptDisposeFunction <T1, T2>(bool dontDestory = false) where T1 : class { FunctionObtaining.AddAllObjectFunc <T1, T2>((s, f) => { if (CustomFunctionLibrary <T2> .ExternalDispose(s)) { return(false); } CustomFunctionLibrary <T2> .Add(s, f, dontDestory); return(true); }); // TODO ..... }