private void EmitEventBaseClasses() { CodeTypeDeclaration globalListener = CodeNamespaceAscension.DeclareClass("GlobalEventListener"); CodeTypeDeclaration entityListener = CodeNamespaceAscension.DeclareClass("EntityEventListener"); CodeTypeDeclaration entityListenerGeneric = CodeNamespaceAscension.DeclareClass("EntityEventListener<TState>"); globalListener.BaseTypes.Add("Ascension.Networking.GlobalEventListenerBase"); entityListener.BaseTypes.Add("Ascension.Networking.EntityEventListenerBase"); entityListenerGeneric.BaseTypes.Add("Ascension.Networking.EntityEventListenerBase<TState>"); foreach (EventDecorator d in Events) { EmitEventMethodOverride(true, globalListener, d); EmitEventMethodOverride(false, entityListener, d); EmitEventMethodOverride(false, entityListenerGeneric, d); } }
public CodeTypeDeclaration DeclareClass(string name) { return(CodeNamespace.DeclareClass(name)); }