: Module(Me)
{
cf = new ChanFilter(ServerInstance);
- if (!ServerInstance->AddMode(cf, 'g'))
+ if (!ServerInstance->AddMode(cf))
throw ModuleException("Could not add new modes!");
- }
- void Implements(char* List)
- {
- cf->DoImplements(List);
- List[I_OnCleanup] = List[I_OnChannelDelete] = List[I_OnRehash] = List[I_OnUserPreMessage] = List[I_OnUserPreNotice] = List[I_OnSyncChannel] = 1;
+ cf->DoImplements(this);
+ Implementation eventlist[] = { I_OnCleanup, I_OnChannelDelete, I_OnRehash, I_OnUserPreMessage, I_OnUserPreNotice, I_OnSyncChannel };
+ ServerInstance->Modules->Attach(eventlist, this, 6);
}
virtual void OnChannelDelete(Channel* chan)
virtual ~ModuleChanFilter()
{
ServerInstance->Modes->DelMode(cf);
- DELETE(cf);
+ delete cf;
}
};