]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_blockcolor.cpp
This is better now.
[user/henk/code/inspircd.git] / src / modules / m_blockcolor.cpp
index f872abcb89417c463b0c5f8f9cceae92edbcbf58..f62e546136485ee142ec6d4061ee90af01d0f28f 100644 (file)
@@ -21,13 +21,12 @@ using namespace std;
 #include "users.h"
 #include "channels.h"
 #include "modules.h"
-#include "helperfuncs.h"
 #include "inspircd.h"
 
 /* $ModDesc: Provides support for unreal-style channel mode +c */
 
-extern InspIRCd* ServerInstance;
-
+/** Handles the +c channel mode
+ */
 class BlockColor : public ModeHandler
 {
  public:
@@ -58,7 +57,7 @@ class BlockColor : public ModeHandler
 
 class ModuleBlockColour : public Module
 {
-       Server *Srv;
+       
        BlockColor *bc;
  public:
  
@@ -66,20 +65,15 @@ class ModuleBlockColour : public Module
        {
                
                bc = new BlockColor(ServerInstance);
-               Srv->AddMode(bc, 'c');
+               ServerInstance->AddMode(bc, 'c');
        }
 
        void Implements(char* List)
        {
-               List[I_On005Numeric] = List[I_OnUserPreMessage] = List[I_OnUserPreNotice] = 1;
+               List[I_OnUserPreMessage] = List[I_OnUserPreNotice] = 1;
        }
 
-       virtual void On005Numeric(std::string &output)
-       {
-               ServerInstance->ModeGrok->InsertMode(output,"c",4);
-       }
-       
-       virtual int OnUserPreMessage(userrec* user,void* dest,int target_type, std::string &text, char status)
+       virtual int OnUserPreMessage(userrec* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
        {
                if (target_type == TYPE_CHANNEL)
                {
@@ -108,19 +102,20 @@ class ModuleBlockColour : public Module
                return 0;
        }
        
-       virtual int OnUserPreNotice(userrec* user,void* dest,int target_type, std::string &text, char status)
+       virtual int OnUserPreNotice(userrec* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
        {
-               return OnUserPreMessage(user,dest,target_type,text,status);
+               return OnUserPreMessage(user,dest,target_type,text,status,exempt_list);
        }
 
        virtual ~ModuleBlockColour()
        {
+               ServerInstance->Modes->DelMode(bc);
                DELETE(bc);
        }
        
        virtual Version GetVersion()
        {
-               return Version(1,0,0,0,VF_STATIC|VF_VENDOR);
+               return Version(1,1,0,0,VF_COMMON|VF_VENDOR,API_VERSION);
        }
 };