- Katılım
- 2 Mar 2023
- Mesajlar
- 242
- IFGT Puan
- 18
Çok basit bir şekilde bir şeyler karaladım kendi modülümün üzerinden. Şu anda, modülün çalışma sistemini kısaca anlatmam gerekirse, bir NICK listesi ekledim o listeye eklenilen Rumuzlar, herkese yazabilir.
* Fakat listede olmayan herhangi bir kişi ilgili listede ki kişiye yazsa bile mesajı iletilmez iletilmesi için, o kişininde listede olması gerekir. Zira bu uygulama nekadar mantıklı orası da tartışılır.
m_arkadas.c modülü;
Kod:
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
#define ACIKLAMA "Belirtilen rumuzlara özelde sohbet açmak by Entrance"
#define Bilgi "#Entrance"
DLLFUNC char *m_arkadas(aChannel *, aClient *, aClient *, char *, int);
ModuleHeader MOD_HEADER(m_arkadas)
= {
"m_arkadas",
ACIKLAMA,
ACIKLAMA,
"3.2-b8-1",
NULL
};
static char *arkadasnicklistesi[] = {
"Entrance",
"E",
NULL
};
static int arkadas_list(char *arkadas) {
char **nlist;
for (nlist=arkadasnicklistesi; *nlist; *nlist++)
{
if (!strcmp(arkadas, *nlist))
return 1;
}
return 0;
}
DLLFUNC int MOD_INIT(m_arkadas)(ModuleInfo *modinfo)
{
HookAddPCharEx(modinfo->handle, HOOKTYPE_USERMSG, m_arkadas);
return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(m_arkadas)(int module_load)
{
return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(m_arkadas)(int module_unload)
{
return MOD_SUCCESS;
}
DLLFUNC char *m_arkadas(aChannel *kanal, aClient *nick, aClient *acptr, char *mesaj, int notice)
{
if (IsULine(nick)) {
return mesaj;
}
if (arkadas_list(nick->name))
return mesaj;
}
