]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_antibear.cpp
Some more to fix still, modules probably wont load correctly atm
[user/henk/code/inspircd.git] / src / modules / m_antibear.cpp
index f18aa6883df3e218904ee8af5cc533336ac4d0d8..db7ff7704addf81b2235086fc4b24f90ea9ce589 100644 (file)
@@ -24,6 +24,8 @@ class ModuleAntiBear : public Module
        ModuleAntiBear(InspIRCd* Me) : Module(Me)
        {
                
+               Implementation eventlist[] = { I_OnUserRegister, I_OnPreCommand };
+               ServerInstance->Modules->Attach(eventlist, this, 2);
        }
        
        virtual ~ModuleAntiBear()
@@ -46,10 +48,15 @@ class ModuleAntiBear : public Module
                {
                        if (!strncmp(parameters[1], "\1TIME Mon May 01 18:54:20 2006", 30))
                        {
-                               ServerInstance->XLines->AddZLine(86400, ServerInstance->Config->ServerName, "Unless you're stuck in a time warp, you appear to be a bear bot!", user->GetIPString());
-                               // XXX move events into the damn XLineManager stuff
-                               FOREACH_MOD(I_OnAddGLine,OnAddZLine(86400, NULL, "Unless you're stuck in a time warp, you appear to be a bear bot!", user->MakeHostIP()));
-                               ServerInstance->XLines->ApplyLines();
+                               ZLine* zl = new ZLine(ServerInstance, ServerInstance->Time(), 86400, ServerInstance->Config->ServerName,
+                                               "Unless you're stuck in a time warp, you appear to be a bear bot!", user->GetIPString());
+                               if (ServerInstance->XLines->AddLine(zl,NULL))
+                               {
+                                       ServerInstance->XLines->ApplyLines();
+                               }
+                               else
+                                       delete zl;
+
                                return 1;
                        }