Exemplo n.º 1
0
        private static void Reload()
        {
            var hot = DllHelper.GetHotfixAssembly();

            Type[] types = hot.GetTypes();
            foreach (Type type in types)
            {
                object[] attrs = type.GetCustomAttributes(typeof(ObjectEventAttribute), false);

                if (attrs.Length == 0)
                {
                    continue;
                }

                object        obj         = Activator.CreateInstance(type);
                ComponentBase objectEvent = obj as ComponentBase;
                if (objectEvent == null)
                {
                    Console.WriteLine($"组件事件没有继承IObjectEvent: {type.Name}");
                    continue;
                }
                ety.AddComponent(objectEvent.GetType(), objectEvent);
            }
        }