class ModuleAlias : public Module
{
- private:
-
char fprefix;
/* We cant use a map, there may be multiple aliases with the same name.
* We can, however, use a fancy invention: the multimap. Maps a key to one or more values.
* -- w00t
- */
+ */
std::multimap<irc::string, Alias> Aliases;
/* whether or not +B users are allowed to use fantasy commands */
}
public:
-
- ModuleAlias()
+ void init()
{
ReadAliases();
- ServerInstance->Modules->Attach(I_OnPreCommand, this);
- ServerInstance->Modules->Attach(I_OnRehash, this);
- ServerInstance->Modules->Attach(I_OnUserMessage, this);
- }
-
- virtual ~ModuleAlias()
- {
+ Implementation eventlist[] = { I_OnPreCommand, I_OnRehash, I_OnUserMessage };
+ ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
}
virtual Version GetVersion()
}
}
- if ((a->OperOnly) && (!IS_OPER(user)))
+ if ((a->OperOnly) && (!user->IsOper()))
return 0;
if (!a->RequiredNick.empty())