- ModuleTestCommand()
- {
- Srv = new Server;
- // Create a new command:
- // command will be called /WOOT, and will
- // call handle_woot when triggered, the
- // 0 in the modes parameter signifies that
- // anyone can issue the command, and the
- // command takes only one parameter.
- Srv->AddCommand("WOOT",handle_woot,0,1);
-
- // Add a mode +Z for channels with no parameters
- Srv->AddExtendedMode('Z',MT_CHANNEL,false,1,0);
- }
-
- virtual bool OnExtendedMode(userrec* user, chanrec* chan, char modechar, int type, bool mode_on, string_list ¶ms)
- {
- if ((modechar != 'Z') || (type != MT_CHANNEL)) {
- // this mode isn't ours, we have to bail and return 0 to not handle it.
- Srv->Log(DEBUG,"Extended mode event triggered, but this is not a mode i've claimed!");
- return 0;
- }
-
-
- if (mode_on) {
- Srv->Log(DEBUG,"Custom mode is being added to channel");
- }
- else {
- Srv->Log(DEBUG,"Custom mode is being taken from a channel");
- }
- Srv->Log(DEBUG,chan->name);
-
- // must return 1 to handle the mode!
- return 1;
- }
-
- virtual void OnUserJoin(userrec* user, chanrec* channel)
- {
- Srv->Log(DEBUG,"OnUserJoin triggered");
- if (channel->IsCustomModeSet('Z'))
- {
- std::string param = channel->GetModeParameter('Z');
- Srv->Log(DEBUG,"Custom mode is set on this channel! Parameter="+param);
- }
- }
-
- virtual ~ModuleTestCommand()