diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile | 3 | ||||
-rw-r--r-- | src/command.cpp | 49 |
2 files changed, 51 insertions, 1 deletions
diff --git a/src/Makefile b/src/Makefile index 0a65cd246..8e41b92ee 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,4 +1,4 @@ -OBJS = actions.o base64.o bots.o botserv.o channels.o chanserv.o commands.o compat.o \ +OBJS = actions.o base64.o bots.o botserv.o channels.o chanserv.o command.o commands.o compat.o \ config.o datafiles.o encrypt.o events.o hashcomp.o helpserv.o hostserv.o init.o ircd.o language.o log.o mail.o main.o \ memory.o memoserv.o messages.o misc.o modules.o news.o nickserv.o operserv.o \ process.o protocol.o send.o servers.o sessions.o slist.o sockutil.o opertype.o timeout.o users.o module.o modulemanager.o configreader.o \ @@ -40,6 +40,7 @@ bots.o: bots.cpp $(INCLUDES) botserv.o: botserv.c $(INCLUDES) channels.o: channels.c $(INCLUDES) chanserv.o: chanserv.c $(INCLUDES) +command.o: command.cpp $(INCLUDES) commands.o: commands.c $(INCLUDES) compat.o: compat.c $(INCLUDES) config.o: config.c $(INCLUDES) diff --git a/src/command.cpp b/src/command.cpp new file mode 100644 index 000000000..bf05d79d5 --- /dev/null +++ b/src/command.cpp @@ -0,0 +1,49 @@ +#include "services.h" +#include "modules.h" + +Command::Command(const std::string &sname, size_t min_params, size_t max_params) : MaxParams(max_params), MinParams(min_params), name(sname) +{ + this->has_priv = NULL; + this->help_param1 = NULL; + this->help_param2 = NULL; + this->help_param3 = NULL; + this->help_param4 = NULL; + this->core = 0; + this->next = NULL; + this->mod_name = NULL; + this->service = NULL; + this->all_help = NULL; + this->regular_help = NULL; + this->oper_help = NULL; + this->admin_help = NULL; + this->root_help = NULL; +} + +Command::~Command() +{ + this->has_priv = NULL; + if (this->mod_name) { + delete [] this->mod_name; + } + if (this->service) { + delete [] this->service; + } + this->next = NULL; +} + +/** Execute this command. + * @param u The user executing the command. + */ +CommandReturn Command::Execute(User *u, std::vector<std::string> &) { return MOD_CONT; } + +/** Requested when the user is requesting help on this command. Help on this command should be sent to the user. + * @param u The user requesting help + * @param subcommand The subcommand the user is requesting help on, or an empty string. (e.g. /ns help set foo bar lol gives a subcommand of "FOO BAR LOL") + * @return true if help was provided to the user, false otherwise. + */ +bool Command::OnHelp(User *u, const std::string &subcommand) { return false; } + +/** Requested when the user provides bad syntax to this command (not enough params, etc). + * @param u The user executing the command. + */ +void Command::OnSyntaxError(User *u) { } |