IRC ve mIRC Platformu  

Geri git   IRC ve mIRC Platformu > Genel IRCD (Sunucu, Servis, Botlar, Korumalar) > Unreal IRCd > Hazır Kodlar

Hazır Kodlar Unreal hazır kod paylasımları

  
 
Seçenekler Stil
  #1  
Alt 22 Mart 2019
Administrator
 
Şehir Sivas
Üyelik tarihi: 12 Mart 2019
Mesajlar: 244
Aldığı Beğeni: 27
Verdiği Beğeni: 78
Standart Sunucuya Giren Badnickleri Diger Kanallara Yönlendirme

Eklediğiniz badnickleri, sunucuya girişte (kullanici henüz kanala girmeden) işleme sokar ve badnickleri yalnizca belirlenen cinsel kanallara sokar. Bunun dişinda hiç bir kanala sokmaz.
Badnicklere bununla ilgili bir bilgi yazisi gönderilerek, /NickDegis komutu ile diğer kanallara girebileceği söylenir.
Badnick, /NickDegis komutunu kullaninca (otomatikmen) cinsellik kanallarindan cikartilip, (partall) nicki değiştirilerek (otomatikmen) belirlenen global kanallara sokulur..

/NickDegis komutu ile otomatik verilecek nickguess;

Kod:
snprintf(guestnick, NICKLEN, "misafirb%d", getrandom32());
misafirb 'yi istediğiniz şekilde değiştirebilirsiniz. Misafirb olarak belirlenmesinin amaci, badnickten dönme bir nick olduğunun anlaşilmasidir.
Kişinin alacaği nick misafirb32329329 gibi nickler olacaktir.

Badnick girişlerinin yansitilacaği kanal;

//Log kanali
Kod:
#define kontrol "#botkontrol"
Mesajlari gönderecek NICK;

//Mesaj gonderen nick
Kod:
#define Mesajci "ircde.NET"
Mesajin gönderim şekli; (PRIVMSG/NOTICE)

Kod:
#define gonderimsekli "NOTICE"
Kullanicilarin gireceği cinsel kanallar;


//Alinacak kanallar
Kod:
char *kanal = "#***,#cinsellik";
char *i[3], channels[512];
Kullanicilarin /NickDegis komutu ile girebilecekleri kanallar;



//Global Kanallar
Kod:
char *kanals = "#muhabbet,#Sohbet";
char *tox[3], channels[512];
Kullanicilarin Girmesine izin verilen kanallar;
Kod:
if (stricmp(chptr->chname,"#Cinsellik")) {
if (stricmp(chptr->chname,"#***")) {

Badnickleri aşşağidaki örnekte olduğu gibi ekleyebilirsiniz..
Kod:
static char *badlistesi[] = {
"Badnick1",
"Badnick2",
"badnick3",
"badnick4",
NULL
};
Eklemelerinizde size kolaylik sağlanmasi acisindan "badnick"; olarak eklediğiniz takdirde salaslbadnicksdas gibi icinde badnick geçen her nickte modul faaliyet gösterecektir.


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 _WIN32 
#include "version.h" 
#endif

#define MSG_BADNICK      "BADNICK"
#define TOK_BADNICK      "BN"
#define MSG_nickdegis "nickdegis"
#define TOK_nickdegis  "ND"
 
static Hook *Connick;
static int m_badnick(aClient *, aChannel *); 
static int m_nojoin(aClient *, aChannel *);
DLLFUNC int m_nickdegis(aClient *sptr, char *parv[]);


 aChannel *chptr;
char *xparv[3], chbuf[CHANNELLEN + 16], buf[2048]="0\0";



//Log kanali
#define kontrol "#botkontrol"

//Mesaj gonderen nick
#define Mesajci "toXic.NET"

//Mesaj gonderim sekli.
#define gonderimsekli "NOTICE"

//Alinacak kanallar
char *kanal = "#***,#cinsellik";
char *i[3], channels[512];

//Global Kanallar
char *kanals = "#toXic,#Sohbet";
char *tox[3], channels[512];
 
//bilgi
#define aciklama1 "Kullanmis oldugunuz nick sakincalidir."
#define aciklama2 "Bu Nedenle, Cinsellik Kanallarina aktariliyorsunuz."
#define aciklama3 "Baska kanallara girmek icin, \2/Nick Yeninick\2 Komutu ile degistirebilirsiniz."


ModuleHeader MOD_HEADER(m_badnickname)
= {
"m_badnick",
"Badnick koruma (toXic)",
"badnickJoin Modulu v2 (toXic",
"3.2-b8-1",
NULL
};

 
DLLFUNC int MOD_INIT(m_badnickname)(ModuleInfo *modinfo) 
{ 
Connick = HookAddEx(modinfo->handle, HOOKTYPE_LOCAL_CONNECT, m_badnick); 
HookAddEx(modinfo->handle, HOOKTYPE_PRE_LOCAL_JOIN, m_nojoin);
 add_Command(MSG_nickdegis, TOK_nickdegis, m_nickdegis, 1);
return MOD_SUCCESS; 
}

 
DLLFUNC int MOD_LOAD(m_badnickname)(int module_load) 
{ 
return MOD_SUCCESS; 
}

 
DLLFUNC int MOD_UNLOAD(m_badnickname)(int module_unload) 
{ 
return MOD_SUCCESS; 
}
 
static char *badlistesi[] = {
"Badnick1",
"Badnick2",
"badnick3",
"badnick4",
NULL
};
static int bad_listesi(char *nick)
{
char **blist;
for (blist=badlistesi; *blist; *blist++)
{
if (strstr(nick, *blist))
return 1;
}
return 0;
}
static int m_badnick(aClient *sptr, aChannel *chptr) {
if (bad_listesi(sptr->name)) {
if ((chptr = find_channel(kontrol, NullChn)) != NullChn)
sendto_channel_butone(&me, &me, chptr, ":Badnick  PRIVMSG %s :  Badnick Girisi %s kanallara aktarildi.", kontrol, sptr->name);




sendto_one(sptr, ":%s %s %s %s" , Mesajci, gonderimsekli, sptr->name, aciklama1);
sendto_one(sptr, ":%s %s %s %s" , Mesajci, gonderimsekli, sptr->name, aciklama2);
sendto_one(sptr, ":%s %s %s %s" , Mesajci, gonderimsekli, sptr->name, aciklama3);
strlcpy(channels, kanal, sizeof(channels));
i[0] = sptr->name;
i[1]  = channels;
i[2] = NULL;
 do_cmd(sptr, sptr, "JOIN", 2, i);
return 0;
}
}



static int m_nojoin(aClient *sptr, aChannel *chptr) {
aClient *acptr;

if (bad_listesi(sptr->name)) {

if (stricmp(chptr->chname,"#Cinsellik")) {
if (stricmp(chptr->chname,"#***")) {

sendto_one(sptr, ":%s %s %s Kontrol ediliyorsunuz..", Mesajci, gonderimsekli, sptr->name);
sendto_one(sptr, ":%s %s %s Baska kanallara giremezsiniz. ", Mesajci, gonderimsekli,  sptr->name);
sendto_one(sptr, ":%s %s %s Eger girmek istiyorsaniz lutfen nickinizi degistiriniz.",  Mesajci, gonderimsekli,  sptr->name);
sendto_one(sptr, ":%s %s %s Aksi takdirde, \2/NickDegis\2 komutunu kullanarak \2otomatikmen\2 nickinizi degistirebilirsiniz.",
 Mesajci, gonderimsekli, sptr->name);
sendto_one(sptr, ":%s %s %s Bu komutu kullandiktan sonra otomatikmen \2 kanallara aktarililacaksiniz.", Mesajci, gonderimsekli,  sptr->name);
return HOOK_DENY;
}
}
}
}



DLLFUNC int m_nickdegis(aClient *sptr, char *parv[]) {
if (bad_listesi(sptr->name)) {
//sendto_channel_butone(&me, &me, chptr, ":Badnick  PRIVMSG %s :\2%s\2 Kullanicisi nickini degisip kanallara aktarildi.", kontrol);
sendto_one(sptr, ":%s %s %s Nickiniz degistiriliyor.", Mesajci, gonderimsekli, sptr->name);
char guestnick[NICKLEN];
char *ibo[3];
snprintf(guestnick, NICKLEN, "misafirb%d", getrandom32());

ibo[0] = sptr->name;
ibo[1] = guestnick;
ibo[2] = NULL;

do_cmd(sptr, sptr, "NICK", 2, ibo);
sendto_one(sptr, ":%s %s %s Nickiniz  \2%s\2 olarak degistirilmistir.", Mesajci, gonderimsekli, sptr->name, sptr->name);

aClient *cptr;

if( !MyConnect(sptr) )
        {
                sendto_serv_butone(cptr, ":%s  ND %s", sptr->name, parv[1], parv[2]);
                return 0;
        }

xparv[0] = sptr->name;
        xparv[1] = buf;
        xparv[2] = NULL;
int toxic;
        toxic = do_cmd(sptr, sptr, "JOIN", 2, xparv);


strlcpy(channels, kanals, sizeof(channels));
tox[0] = sptr->name;
tox[1]  = channels;
tox[2] = NULL;
 do_cmd(sptr, sptr, "JOIN", 2, tox);

} else {
sendto_one(sptr, ":%s %s %s Bu komutu yalnizca cinsel kullanicilar kullanabilir.", Mesajci, gonderimsekli, sptr->name);
} 
}

Alıntıdır.
__________________
www.ircde.net
iRc Platformu

Etiketler
badnick kontrol, badnick korumasi, badnick yonlendirme


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 18:17.



Forum Hakkında

Forum Adresimizde T.C.K 20.ci Madde ve 5651 Sayılı Kanun'un 4.cü maddesinin (2).ci fıkrasına göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur.

Yararlı Linkler

Sponsor Linkler

Sosyal Paylaşım


Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0
ircDe.Net Tema Yapımcısı ve Sahibi: miZah