diff options
Diffstat (limited to 'modules/core/cs_xop.cpp')
-rw-r--r-- | modules/core/cs_xop.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/modules/core/cs_xop.cpp b/modules/core/cs_xop.cpp index ca11c74fe..b9b271ea3 100644 --- a/modules/core/cs_xop.cpp +++ b/modules/core/cs_xop.cpp @@ -626,15 +626,21 @@ class CommandCSVOP : public XOPBase class CSXOP : public Module { + CommandCSQOP commandcsqop; + CommandCSSOP commandcssop; + CommandCSAOP commandcsaop; + CommandCSHOP commandcshop; + CommandCSVOP commandcsvop; + public: CSXOP(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator) { this->SetAuthor("Anope"); this->SetType(CORE); - this->AddCommand(ChanServ, new CommandCSSOP()); - this->AddCommand(ChanServ, new CommandCSAOP()); - this->AddCommand(ChanServ, new CommandCSVOP()); + this->AddCommand(ChanServ, &commandcssop); + this->AddCommand(ChanServ, &commandcsaop); + this->AddCommand(ChanServ, &commandcsvop); if (Me && Me->IsSynced()) OnUplinkSync(NULL); @@ -646,15 +652,15 @@ class CSXOP : public Module void OnUplinkSync(Server *) { if (ModeManager::FindChannelModeByName(CMODE_OWNER)) - this->AddCommand(ChanServ, new CommandCSQOP()); + this->AddCommand(ChanServ, &commandcsqop); if (ModeManager::FindChannelModeByName(CMODE_HALFOP)) - this->AddCommand(ChanServ, new CommandCSHOP()); + this->AddCommand(ChanServ, &commandcshop); } void OnServerDisconnect() { - this->DelCommand(ChanServ, FindCommand(ChanServ, "QOP")); - this->DelCommand(ChanServ, FindCommand(ChanServ, "HOP")); + this->DelCommand(ChanServ, &commandcsqop); + this->DelCommand(ChanServ, &commandcshop); } }; |