Unreal3.2 Otomatik Random Global Mesajı

Aytac

Developer
Yönetici
Developer
Katılım
4 Şub 2020
Mesajlar
373
Tepkime puanı
17
Puanları
18
Konum
ircland
Web sitesi
www.ircalem.net
Modül adı: m_rglobal.c

Amacı: Modülün işleyişi, sunucu üzerinde modül içerisine belirtmiş olduğunuz mesajları 10 dakika da bir random olarak, NOTICE veya PRIVMSG olarak gönderme imkânı sunuyor.

Modül chanlist üzerinden yapılmıştır, sadece iskeleti kullanılmıştır.

Kod:
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "proto.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


/* Mesaj türü ister özele attırabilir isterseniz de NOTICE olarak kullanabilirsiniz. */
#define mesaj "PRIVMSG"

/* Global mesajı gönderecek olan NICK, dilediğiniz gibi değiştirebilirsiniz. */
#define nick "DUYURU"

/* Buraya random olarak atmasını istediğiniz mesajları ekleyiniz. */
char *Liste[8]={
"Mesaj1",
"Mesaj2",
"Mesaj3",
"Mesaj4",
"Mesaj5",
"Mesaj6",
"Mesaj7",
"Mesaj8",
};

#define ACIKLAMA "Otomatik random global modülü by Entrance"
EVENT(E_oto_global);
static Event *e = NULL;
ModuleInfo Modinfo;

ModuleHeader MOD_HEADER(otomatikglobal) = {
	"Otoglobal",
	ACIKLAMA,
      ACIKLAMA,  
	"3.2-b8-1",
	NULL 
};

DLLFUNC int MOD_INIT(otomatikglobal)(ModuleInfo *module)
{
	bcopy(module,&Modinfo,module->size);
	return MOD_SUCCESS;
}

DLLFUNC int MOD_LOAD(otomatikglobal)(int module_load)
{
	e = EventAddEx(Modinfo.handle, "E_oto_global", 600, 0, E_oto_global, NULL);
	return MOD_SUCCESS;
}

DLLFUNC int MOD_UNLOAD(otomatikglobal)(int module_unload)
{
	EventDel(e);
	return MOD_SUCCESS;
}

EVENT(E_oto_global)
{
aClient *sptr;

srand (time(NULL));
int ent = rand()%8;

for (sptr = client; sptr; sptr = sptr->next)
{
if (MyClient(sptr))
sendto_one(sptr, ":%[email protected]%s %s %s %s", nick, me.name, mesaj, sptr->name, Liste[ent]);
}
return;
}
 
Üst