IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Unreal IRCd (https://www.ircforumlari.net/unreal-ircd/)
-   -   özele yazmayı engeleme (https://www.ircforumlari.net/unreal-ircd/851352-ozele-yazmayi-engeleme.html)

alphae 04 Ocak 2020 01:39

özele yazmayı engeleme
 
Simdi söyle bir açıklama yapayım

isteğim irc.site.com giren kisi özelere yazamasın

web.site.com giren kisi herkeze yaza bilsin. özel

bazı kodlar paylaşımı yapmılmış burada 1 kodu denedim services cevap vermiyordu sifre girilmiyordu
2 ci bir kod denedim onda hup yazinca ana server kapaniyor.


özelde flood saldırı oluyor. karantina odasına giren botlar odalara giremiyor ama özelere mesaj gönderiyor

kayitsiz nick yazmasın gibi bir kod ekledim olmadı çünkü hup server kullanıyorum unreal kapaniyor veya services cevap vermiyor ekledigim eklentilerde..

Örnek vermek istiyorum. : özel mesaj yazmayı engeleme gibi kodlar ekliyorum hup yazinca unrel kapaniyor


Altaki bu modül özel mesajı yazmayı engemek için düzenlesek işe yarar mı ?

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 "Kayıtsız rumuzlar için kanalda konuşma engelleme. by Entrance"

static char *m_mesajengeli(aClient *cptr, aClient *sptr, aChannel *chptr, char *text, int notice);
static int kanal_is_ok(aClient *, aChannel *, char *, int, int);

#define FLAG_MODE 'Y'
Cmode_t EXTCMODE_NOCHANMSG= 0L;
Cmode *NOCHANMSGMODE = NULL;
ModuleHeader MOD_HEADER(m_mesajengeli) = {
    "m_mesajengeli.c",
    ACIKLAMA,
    ACIKLAMA,
    "3.2-b8-1",
    NULL
};

DLLFUNC int MOD_INIT(m_mesajengeli)(ModuleInfo *modinfo) {
    CmodeInfo req;
    memset(&req, 0, sizeof(req));
    req.paracount = 0;
    req.is_ok =  kanal_is_ok;
    req.flag = FLAG_MODE;
    NOCHANMSGMODE = CmodeAdd(modinfo->handle, req, &EXTCMODE_NOCHANMSG);

    if (!NOCHANMSGMODE) {
        MOD_UNLOAD(m_mesajengeli)(0);
        return MOD_FAILED;
    }
HookAddPCharEx(modinfo->handle, HOOKTYPE_CHANMSG, m_mesajengeli);
    return MOD_SUCCESS;
}

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

DLLFUNC int MOD_UNLOAD(m_mesajengeli)(int module_unload) {
    return MOD_SUCCESS;
}

static int kanal_is_ok(aClient *sptr, aChannel *chptr, char *para, int type, int what) {
    if ((type == EXCHK_ACCESS) || (type == EXCHK_ACCESS_ERR)) {
        if (IsPerson(sptr) && !IsULine(sptr)) {
            if (!IsOper(sptr) && !IsARegNick(sptr)) {
                if (type == EXCHK_ACCESS_ERR)
                    sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
                return EX_ALWAYS_DENY;
            }
        }
        return EX_ALLOW;
    }
    return 0;
}

static char *m_mesajengeli(aClient *cptr, aClient *sptr, aChannel *kanal, char *mesaj, int notice)
{

    if (kanal != NULL && !IsARegNick(sptr) && !IsOper(sptr) && (kanal->mode.extmode & EXTCMODE_NOCHANMSG)) {
        sendnotice(sptr, "[\2%s\2] kanalına mesaj göndermek için, lütfen nickinizi kaydedin. Kanal modu: (\2+Y\2)", kanal->chname);       
    return NULL;
    } else
 return mesaj;
}


tugbu 04 Ocak 2020 01:40

Cevap: özele yazmayı engeleme
 
Adamsin varya tamda istedigim konuydu.
Arkadas ben muhatap olmak istesem zaten yazarim degil mi ama demek ki istemiyorum. Umarim buna bir care bulunur.

alphae 04 Ocak 2020 12:23

Cevap: özele yazmayı engeleme
 
Alıntı:

tugbu Nickli Üyeden Alıntı (Mesaj 1042224647)
Adamsin varya tamda istedigim konuydu.
Arkadas ben muhatap olmak istesem zaten yazarim degil mi ama demek ki istemiyorum. Umarim buna bir care bulunur.



Tekli sunucularda problem olmuyor ama hup sikinti yadaniyor ubreal kapaniyor

Saldiriyi koruma botu kesiyor ama iste ozel mesaji engeliyemiyoruz sikinti oluyor gerci botlar odalarq girmiyor ve sad3c3 ozel yaziolar kufur

alphae 05 Ocak 2020 10:05

Cevap: özele yazmayı engeleme
 
altaki kodu sadece özel mesaj icin ayarlasak işe yarar mı acaba

Kod:

/*
*This module is Server Security module.
* The user, is connecting and, user can't write to channels notext minutes.
* You can change notext time.
* notext is seconds..
* And... if user write to channels in one minutes, The modul blocked users's messages one minute.
* User sjoin to #Kontrol.
* And, You are look to users messages in #BotKontrol channel..
* Use The /Knowledges Commands for forbid list.
* The messages are writing to yasaklilar.txt with User's IP, Date, clock, Nick and messages. They are logging..
*/
 
 
 
#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
aChannel    *chptr;
 
#define tox "#BotKontrol"
#define SUNUCU "Zurna.NET"
 
#define RPL_OPERS  337
 
#define MSG_knowledges "knowledges"
#define TOK_knowledges  "BL"
 
#define MSG_kalan "kalan"
#define TOK_kalan  "KL"
 
 
DLLFUNC char *m_notext(aClient *, aClient *, aClient *, char *, int);
DLLFUNC char *m_noptext(aClient *, aClient *, aClient *, char *, int);
 
DLLFUNC int m_knowledges(aClient *sptr);
DLLFUNC int m_kalan(aClient *sptr);
 
 
 
//seconds
  static int sure = 60;
 
#define modulismi "m_notext"
#define aciklama "Forbiddin text to channels/private 1 min. v3 (toXic)"
#define aciklama2 "Forbiddin text to channels/private 1 min. v3(toXic)"
#define version "3.2-b8-1"
ModuleHeader MOD_HEADER(m_notext)
= {
modulismi,
aciklama,
aciklama2,
version,
NULL
};
DLLFUNC int MOD_INIT(m_notext)(ModuleInfo *modinfo)
{
    HookAddPCharEx(modinfo->handle, HOOKTYPE_CHANMSG, m_notext);
    add_Command(MSG_knowledges, TOK_knowledges, m_knowledges, 1);
 add_Command(MSG_kalan, TOK_kalan, m_kalan, 1);
  HookAddPCharEx(modinfo->handle,  HOOKTYPE_USERMSG, m_noptext);
 
  return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(m_notext)(int module_load)
{
  return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(m_notext)(int module_unload)
{
  return MOD_SUCCESS;
}
DLLFUNC int m_knowledges(aClient *sptr)
{
if ( !IsNetAdmin(sptr)) {
 sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
        return 0;
        }
 
#define OKU "yasaklilar.txt"
int i;
FILE *dosya;
char buf[BUFSIZE];
dosya = fopen(OKU, "r");
if (dosya != NULL) {
while (fgets(buf, sizeof(buf), dosya)) {
buf[strlen(buf)-1] = 0;
//if ((chptr = find_channel(tox, NullChn)) != NullChn)
//sendto_channel_butone(&me, &me, chptr, ":%s PRIVMSG  %s %s  Kullanicisi, \2Yasaklilara\2 Bakti.", me.name, tox, sptr->name);
sendto_one(sptr, ":%s %d %s :%s", me.name, RPL_OPERS, sptr->name, buf);
}
}
}
 
 
 
 
DLLFUNC char *m_notext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice)
{
 
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
 
if ((chptr = find_channel(tox, NullChn)) != NullChn)
{
 
sendto_channel_butone(&me, &me, chptr, ":Agent PRIVMSG %s  Nick-> \2%s\2  Message-> \2( %s )\2  remainder time -> \2%d\2..",
tox, sptr->name,  text, sure - (TStime() - sptr->firsttime));
}
 time_t irc_time;
                struct tm tdate;
                irc_time = time(NULL);
                tdate = *localtime(&irc_time);
                FILE * pFile;
                pFile = fopen ("yasaklilar.txt", "a");
                fprintf (pFile, "Tarih: %02d-%02d-%02d Saat: %02d:%02d Nick: %s  IP: %s  Text: %s\n", tdate.tm_mday, tdate.tm_mon + 1,
                tdate.tm_year - 100, tdate.tm_hour, tdate.tm_min, sptr->name,  sptr->user->realhost, text);
                fclose (pFile);
 
sendto_one(sptr, ":Uyari NOTICE %s :Kanalda,  \2Mesaj\2 Kullanabilmen icin \2%d\2 Saniye Daha Beklemelisiniz.",
 sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":%s PRIVMSG %s :Kanala Mesaj atabilmeniz icin \2 bir sure \2  beklemelisiniz.. ", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Bundan muaf olmak istiyorsaniz, nickinizi \2/ns register sifre email\2 komutu ile  sifreleyiniz..", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Kalan surenize gormek icin, \2/Kalan\2 yaziniz.", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :\2 Hos Sohbetler..", SUNUCU, sptr->name);
 
char *kanal = "#Kontrol";
char *k[3], channels[512];
strlcpy(channels, kanal, sizeof(channels));
k[0] = sptr->name;
k[1]  = channels;
k[2] = NULL;
do_cmd(sptr, sptr, "JOIN", 2, k);
 
/* if you want to shun.
 
*******************************************************
* return place_host_ban(sptr, BAN_ACT_SHUN, "reason", 60);
*******************************************************
 
*/
 
return NULL;
}
 
  else
return text;
 
  }
 
 
DLLFUNC char *m_noptext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice)
{
 
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
if ((chptr = find_channel(tox, NullChn)) != NullChn)
{
 
sendto_channel_butone(&me, &me, chptr, ":Agent PRIVMSG %s  Nick-> \2%s\2  Message-> \2( %s )\2  remainder time -> \2%d\2..",
tox, sptr->name,  text,  sure - (TStime() - sptr->firsttime));
}
 
sendto_one(sptr, ":Uyari NOTICE %s :Ozelde,  \2Mesaj\2 Kullanabilmen icin \2%d\2 Saniye Daha Beklemelisiniz.", sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":%s PRIVMSG %s :Ozele Mesaj atabilmeniz icin \2 bir sure \2  beklemelisiniz.. ", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Bundan muaf olmak istiyorsaniz, nickinizi \2 /NS Register sifre email\2 komutu ile sifreleyiniz..", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Mesaj yazmak icin kac saniyeniz kaldigini gormek istiyorsaniz, \2/Kalan\2 yaziniz.", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :\2 Hos Sohbetler..", SUNUCU, sptr->name);
 
char *kanal = "#Kontrol";
char *k[3], channels[512];
strlcpy(channels, kanal, sizeof(channels));
k[0] = sptr->name;
k[1]  = channels;
k[2] = NULL;
do_cmd(sptr, sptr, "JOIN", 2, k);
 
return NULL;
}
 
  else
return text;
 
  }
 
DLLFUNC int m_kalan(aClient *sptr) {
aClient *acptr;
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
sendto_one(sptr, ":Uyari PRIVMSG %s Kalan sureniz \2%d\2 saniyedir.", sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":Uyari PRIVMSG %s Bu sureden sonra mesaj yazabileceksiniz.", sptr->name);
} else {
sendto_one(sptr, ":Uyari PRIVMSG %s Mesaj yazabilirsiniz.", sptr->name);
}
}


Emrehan 05 Ocak 2020 15:23

Cevap: özele yazmayı engeleme
 
Hub olunca düşüyor demişsiniz, modülü bir test edin herhangi bir kapanmaya sebebiyet vermiyorsa düzenleriz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

alphae 06 Ocak 2020 01:05

Cevap: özele yazmayı engeleme
 
Alıntı:

Emrehan Nickli Üyeden Alıntı (Mesaj 1042226384)
Hub olunca düşüyor demişsiniz, modülü bir test edin herhangi bir kapanmaya sebebiyet vermiyorsa düzenleriz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]



Calisyor test ettim calisoyr ama /kalan yazdiginda sunucu kapaniyor

kalan komutu ve kanala mesash gönderme kisimlarini kaldirsak callisir

alphae 06 Ocak 2020 21:28

Cevap: özele yazmayı engeleme
 
Altaki koda muaf nick nasil ekliye biliriz yani özelde belirlicegim nicke özel yaza bilsin.




Alıntı:

alphae Nickli Üyeden Alıntı (Mesaj 1042225966)
altaki kodu sadece özel mesaj icin ayarlasak işe yarar mı acaba

Kod:

/*
*This module is Server Security module.
* The user, is connecting and, user can't write to channels notext minutes.
* You can change notext time.
* notext is seconds..
* And... if user write to channels in one minutes, The modul blocked users's messages one minute.
* User sjoin to #Kontrol.
* And, You are look to users messages in #BotKontrol channel..
* Use The /Knowledges Commands for forbid list.
* The messages are writing to yasaklilar.txt with User's IP, Date, clock, Nick and messages. They are logging..
*/
 
 
 
#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
aChannel    *chptr;
 
#define tox "#BotKontrol"
#define SUNUCU "Zurna.NET"
 
#define RPL_OPERS  337
 
#define MSG_knowledges "knowledges"
#define TOK_knowledges  "BL"
 
#define MSG_kalan "kalan"
#define TOK_kalan  "KL"
 
 
DLLFUNC char *m_notext(aClient *, aClient *, aClient *, char *, int);
DLLFUNC char *m_noptext(aClient *, aClient *, aClient *, char *, int);
 
DLLFUNC int m_knowledges(aClient *sptr);
DLLFUNC int m_kalan(aClient *sptr);
 
 
 
//seconds
  static int sure = 60;
 
#define modulismi "m_notext"
#define aciklama "Forbiddin text to channels/private 1 min. v3 (toXic)"
#define aciklama2 "Forbiddin text to channels/private 1 min. v3(toXic)"
#define version "3.2-b8-1"
ModuleHeader MOD_HEADER(m_notext)
= {
modulismi,
aciklama,
aciklama2,
version,
NULL
};
DLLFUNC int MOD_INIT(m_notext)(ModuleInfo *modinfo)
{
    HookAddPCharEx(modinfo->handle, HOOKTYPE_CHANMSG, m_notext);
    add_Command(MSG_knowledges, TOK_knowledges, m_knowledges, 1);
 add_Command(MSG_kalan, TOK_kalan, m_kalan, 1);
  HookAddPCharEx(modinfo->handle,  HOOKTYPE_USERMSG, m_noptext);
 
  return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(m_notext)(int module_load)
{
  return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(m_notext)(int module_unload)
{
  return MOD_SUCCESS;
}
DLLFUNC int m_knowledges(aClient *sptr)
{
if ( !IsNetAdmin(sptr)) {
 sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
        return 0;
        }
 
#define OKU "yasaklilar.txt"
int i;
FILE *dosya;
char buf[BUFSIZE];
dosya = fopen(OKU, "r");
if (dosya != NULL) {
while (fgets(buf, sizeof(buf), dosya)) {
buf[strlen(buf)-1] = 0;
//if ((chptr = find_channel(tox, NullChn)) != NullChn)
//sendto_channel_butone(&me, &me, chptr, ":%s PRIVMSG  %s %s  Kullanicisi, \2Yasaklilara\2 Bakti.", me.name, tox, sptr->name);
sendto_one(sptr, ":%s %d %s :%s", me.name, RPL_OPERS, sptr->name, buf);
}
}
}
 
 
 
 
DLLFUNC char *m_notext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice)
{
 
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
 
if ((chptr = find_channel(tox, NullChn)) != NullChn)
{
 
sendto_channel_butone(&me, &me, chptr, ":Agent PRIVMSG %s  Nick-> \2%s\2  Message-> \2( %s )\2  remainder time -> \2%d\2..",
tox, sptr->name,  text, sure - (TStime() - sptr->firsttime));
}
 time_t irc_time;
                struct tm tdate;
                irc_time = time(NULL);
                tdate = *localtime(&irc_time);
                FILE * pFile;
                pFile = fopen ("yasaklilar.txt", "a");
                fprintf (pFile, "Tarih: %02d-%02d-%02d Saat: %02d:%02d Nick: %s  IP: %s  Text: %s\n", tdate.tm_mday, tdate.tm_mon + 1,
                tdate.tm_year - 100, tdate.tm_hour, tdate.tm_min, sptr->name,  sptr->user->realhost, text);
                fclose (pFile);
 
sendto_one(sptr, ":Uyari NOTICE %s :Kanalda,  \2Mesaj\2 Kullanabilmen icin \2%d\2 Saniye Daha Beklemelisiniz.",
 sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":%s PRIVMSG %s :Kanala Mesaj atabilmeniz icin \2 bir sure \2  beklemelisiniz.. ", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Bundan muaf olmak istiyorsaniz, nickinizi \2/ns register sifre email\2 komutu ile  sifreleyiniz..", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Kalan surenize gormek icin, \2/Kalan\2 yaziniz.", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :\2 Hos Sohbetler..", SUNUCU, sptr->name);
 
char *kanal = "#Kontrol";
char *k[3], channels[512];
strlcpy(channels, kanal, sizeof(channels));
k[0] = sptr->name;
k[1]  = channels;
k[2] = NULL;
do_cmd(sptr, sptr, "JOIN", 2, k);
 
/* if you want to shun.
 
*******************************************************
* return place_host_ban(sptr, BAN_ACT_SHUN, "reason", 60);
*******************************************************
 
*/
 
return NULL;
}
 
  else
return text;
 
  }
 
 
DLLFUNC char *m_noptext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice)
{
 
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
if ((chptr = find_channel(tox, NullChn)) != NullChn)
{
 
sendto_channel_butone(&me, &me, chptr, ":Agent PRIVMSG %s  Nick-> \2%s\2  Message-> \2( %s )\2  remainder time -> \2%d\2..",
tox, sptr->name,  text,  sure - (TStime() - sptr->firsttime));
}
 
sendto_one(sptr, ":Uyari NOTICE %s :Ozelde,  \2Mesaj\2 Kullanabilmen icin \2%d\2 Saniye Daha Beklemelisiniz.", sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":%s PRIVMSG %s :Ozele Mesaj atabilmeniz icin \2 bir sure \2  beklemelisiniz.. ", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Bundan muaf olmak istiyorsaniz, nickinizi \2 /NS Register sifre email\2 komutu ile sifreleyiniz..", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :Mesaj yazmak icin kac saniyeniz kaldigini gormek istiyorsaniz, \2/Kalan\2 yaziniz.", SUNUCU, sptr->name);
sendto_one(sptr, ":%s PRIVMSG %s :\2 Hos Sohbetler..", SUNUCU, sptr->name);
 
char *kanal = "#Kontrol";
char *k[3], channels[512];
strlcpy(channels, kanal, sizeof(channels));
k[0] = sptr->name;
k[1]  = channels;
k[2] = NULL;
do_cmd(sptr, sptr, "JOIN", 2, k);
 
return NULL;
}
 
  else
return text;
 
  }
 
DLLFUNC int m_kalan(aClient *sptr) {
aClient *acptr;
if(!IsARegNick(sptr)  &&  !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
{
 
sendto_one(sptr, ":Uyari PRIVMSG %s Kalan sureniz \2%d\2 saniyedir.", sptr->name,  sure - (TStime() - sptr->firsttime));
sendto_one(sptr, ":Uyari PRIVMSG %s Bu sureden sonra mesaj yazabileceksiniz.", sptr->name);
} else {
sendto_one(sptr, ":Uyari PRIVMSG %s Mesaj yazabilirsiniz.", sptr->name);
}
}



tugbu 07 Ocak 2020 00:36

Cevap: özele yazmayı engeleme
 
Kardes sen halen care bulamadin galiba ben bu forumda ki erkeklere küfür edecegim az kaldida🤦*♀️

Emrehan 08 Ocak 2020 01:56

Cevap: özele yazmayı engeleme
 
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 tox                "#help"
#define SUNUCU                "Ozlem"
#define RPL_OPERS          337

DLLFUNC char *m_noptext(aClient *, aClient *, aClient *, char *, int);
static int sure = 300;

#define modulismi "m_noptext"
#define aciklama "Forbiddin text to private 1 min. v3 (toXic)"
#define aciklama2 "Forbiddin text to private 1 min. v3(toXic)"
#define version "3.2-b8-1"

ModuleHeader MOD_HEADER(m_noptext)
= {
        modulismi,
        aciklama,
        aciklama2,
        version,
        NULL
};

DLLFUNC int MOD_INIT(m_noptext)(ModuleInfo *modinfo)
{
        HookAddPCharEx(modinfo->handle, HOOKTYPE_USERMSG, m_noptext);
        return MOD_SUCCESS;
}

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

DLLFUNC int MOD_UNLOAD(m_noptext)(int module_unload)
{
        return MOD_SUCCESS;
}

DLLFUNC char *m_noptext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice)
{
        if(!IsARegNick(sptr) && stricmp("MUAFNICK", acptr->name) && !IsULine(acptr) && !IsServer(sptr) && !IsOper(sptr) && (sptr->firsttime + sure > TStime()))
        {
                sendto_one(sptr, ":Uyari NOTICE %s :Ozelde,  \2Mesaj\2 kullanabilmek icin \2%d\2 saniye daha beklemelisiniz.", sptr->name, sure - (TStime() - sptr->firsttime));
                sendto_one(sptr, ":%s PRIVMSG %s :Ozele mesaj atabilmeniz icin 5 dakika beklemelisiniz. ", SUNUCU, sptr->name);
                sendto_one(sptr, ":%s PRIVMSG %s :Bundan muaf olmak istiyorsaniz, nickinizi \2 /ns register sifre email\2 komutu ile sifreleyiniz.", SUNUCU, sptr->name);
                return NULL;
        }
        else
                return text;
}

Bahsettiğiniz muaf nick'i kırmızı ile belirttim.


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

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net