Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Küfür engelleyen plugin ‼️

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
talhasendag
Mesajlar: 3
Kayıt: Cum Mar 20, 2020 7:12 am

Küfür engelleyen plugin ‼️

Mesaj gönderen talhasendag »

Csduraginda ne kadar küfür engelleme plugini denediysem çalışmadı küfürleri ***** şeklinde yapacak çalışan plugin atarsanız memnun olurum

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Yek'-ta
Mesajlar: 9626
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Küfür engelleyen plugin ‼️

Mesaj gönderen Yek'-ta »

Küfür engelleyici eklentisini chat eklentisinden önceye yazarsanız plugins.ini de sorun düzelir.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

LoseBasgan
Mesajlar: 1402
Kayıt: Sal Oca 29, 2019 11:28 pm
Clan İsmi: MoonGaming

Küfür engelleyen plugin ‼️

Mesaj gönderen LoseBasgan »

Yek'-ta yazdı: Cmt Mar 21, 2020 10:30 am Küfür engelleyici eklentisini chat eklentisinden önceye yazarsanız plugins.ini de sorun düzelir.
Bahsettiğiniz bu mu ?

eklentiler-pluginler/swear-filter-t27442.html


Bunu plugins ininin en üstüne yazmama rağmen çalışmadı.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Yek'-ta
Mesajlar: 9626
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Küfür engelleyen plugin ‼️

Mesaj gönderen Yek'-ta »

rcon amxx plugins ile çalışıp çalışmadığına baktınız mı? Bu eklentinin sorunsuz çalışması lazım, ben de kullanıyordum zamanında.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

burakxd383
Mesajlar: 922
Kayıt: Pzt Şub 05, 2018 2:10 pm
Konum: Bursa
Server Ip/DNS: -
Clan İsmi: -
İletişim:

Küfür engelleyen plugin ‼️

Mesaj gönderen burakxd383 »

arexios gaming paketinin içerisinde admin prefixes eklentisinin içerisinde gömülü bi küfür engelleyici var çıkarabilirseniz çıkarın kullanın

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

LoseBasgan
Mesajlar: 1402
Kayıt: Sal Oca 29, 2019 11:28 pm
Clan İsmi: MoonGaming

Küfür engelleyen plugin ‼️

Mesaj gönderen LoseBasgan »

Yek'-ta yazdı: Cmt Mar 21, 2020 10:59 am rcon amxx plugins ile çalışıp çalışmadığına baktınız mı? Bu eklentinin sorunsuz çalışması lazım, ben de kullanıyordum zamanında.

Kod: Tümünü seç

] rcon amxx plugins
Currently loaded plugins:
       name                    version     author            file             status   
 [  1] CSD Guard               v2017       Ömer TELLİ      csd_guard.amxx   running  
 [  2] yCSD Yon Config vCore   0.1         Ömer TELLI       csd_yonconfig.a  running  
 [  3] CSDuragi TeamSpeak 3 E  1.0         Omer TELLI        csd_ts3.amxx     running  
 [  4] Ultimate RSlots Fix Om  2016        Omer Telli        ultimate_rslot.  running  
 [  5] No See Vars             0.1.0       ConnorMcLeod      no_see_vars.amx  running  
 [  6] Multi Engel vCore       0.1         Ömer TELLİ      csd_multiengel.  running  
 [  7] Swear Filter            1.0a        SuicideDog        swear_filter.am  running  
 [  8] Admin Base              1.8.3-dev+  AMXX Dev Team     admin.amxx       running  
 [  9] Admin Commands          1.8.3-dev+  AMXX Dev Team     admincmd.amxx    running  
 [ 10] Admin Help              1.8.3-dev+  AMXX Dev Team     adminhelp.amxx   running  
 [ 11] Multi-Lingual System    1.8.3-dev+  AMXX Dev Team     multilingual.am  running  
 [ 12] Menus Front-End         1.8.3-dev+  AMXX Dev Team     menufront.amxx   running  
 [ 13] Commands Menu           1.8.3-dev+  AMXX Dev Team     cmdmenu.amxx     running  
 [ 14] Players Menu            1.8.3-dev+  AMXX Dev Team     plmenu.amxx      running  

 [ 15] Maps Menu               1.8.3-dev+  AMXX Dev Team     mapsmenu.amxx    running  
 [ 16] Anti Flood              1.8.3-dev+  AMXX Dev Team     antiflood.amxx   running  
 [ 17] Admin Chat              1.8.3-dev+  AMXX Dev Team     adminchat.amxx   running  
 [ 18] Scrolling Message       1.8.3-dev+  AMXX Dev Team     scrollmsg.amxx   running  
 [ 19] Info. Messages          1.8.3-dev+  AMXX Dev Team     imessage.amxx    running  
 [ 20] Admin Votes             1.8.3-dev+  AMXX Dev Team     adminvote.amxx   running  
 [ 21] NextMap                 1.8.3-dev+  AMXX Dev Team     nextmap.amxx     running  
 [ 22] Nextmap Chooser         1.8.3-dev+  AMXX Dev Team     mapchooser.amxx  running  
 [ 23] TimeLeft                1.8.3-dev+  AMXX Dev Team     timeleft.amxx    running  
 [ 24] Pause Plugins           1.8.3-dev+  AMXX Dev Team     pausecfg.amxx    running  
 [ 25] Stats Configuration     1.8.3-dev+  AMXX Dev Team     statscfg.amxx    running  
 [ 26] Restrict Weapons        1.8.3-dev+  AMXX Dev Team     restmenu.amxx    running  
 [ 27] CSM StatsX [S]          3.0 [BABA   AMXX Dev Team an  statsx.amxx      running  
 [ 28]  CSDuragi GAG           1.4.9       xPaw & Exolent    amx_gag.amxx     running  
 [ 29] CSDuragi Spec Banner    vCore 1.0   Omer TELLI        csd_specbanner.  running  

 [ 30] CsDuragi PUB BOT        1.0         Genki             csd_pubbotv2.am  running  
 [ 31] Say Reklam Engelleyici  0.1         Omer TELLI        csd_reklamengel  running  
 [ 32] Mermi Kontorl           2.0         Ömer TELLİ      mermikontrol.am  running  
 [ 33] UnBanmenu               1           AMX Team          unbanmenu.amxx   running  
 [ 34] Amx_Super               1.0         PurposeLess       AmxSuper.amxx    running  
 [ 35] Admin Yesil Yazi & Adm  2.2         EDITLEYEN: qurte  admin_tag.amxx   running  
 [ 36] ID-IP Yasaklama         1.0         F.T.H             YasaklaMenu.amx  running  
 [ 37] Yetkili Ekle            1.2         Cristo / Ufak Ed  yetkiver_v3.amx  running  
 [ 38] MultiJump               1.1         twistedeuphoria   MultiJump.amxx   running  
 [ 39] Skor Sifirlama          0.1         Leeyé            skorsifirla.amx  running  
 [ 40] Kordinatlar             0.1         Leey?             Kordinat.amxx    running  
 [ 41] Reklam                  1.0         Dragon ~ Fearles  guncelreklam.am  running  
 [ 42] Nick kufur/reklam       1.0         emirakpinar       nickkontrol.amx  running  
 [ 43] SpecList                1.2a        FatalisDK         speclist.amxx    running  
 [ 44] CSD Kill Assist         2.4         Yek'-ta           csd_killassist.  running  

 [ 45] Bullet Whizz            1.4         Cheap_Suit        Bullet_Whizz.am  running  
 [ 46] GHW Auto Message Displ  2.1         GHW_Chronic       csd_reklam_say.  running  
 [ 47] Parachute               1.3         KRoT@L/JTP10181   amx_parachute.a  running  
 [ 48] Super Bunny Hopper      1.2         Cheesy Peteza     bunnyhop.amxx    running  
 [ 49] CSD Panel Eklentisi     1.2         Omer Telli        csd_panel.amxx   running  
 [ 50] Game Description Degis  1.0         Yek'-ta           csd_gamename.am  running  
 [ 51] CSDuragi MSList         1.0         Genki             csd_mslist.amxx  running  
 [ 52] FakeFull Original       1.7.6       JTP10181/Freecod  fakefull_origin  running  
 [ 53] CSD Mikrofon            vCore 0.1   Omer TELLI        csd_mikrofon.am  running  
 [ 54] CSDuragi JailBreak MOD  vCore 0.1   Omer TELLI        csd_jail_mod.am  running  
 [ 55] Hesap Makinesi          1.0         aLeX              benimki.amxx     running  
 [ 56] T Buton Engel           1.0         Pandora           butonengel.amxx  running  
 [ 57] Health                  1.0         Akcaliberkk       ct200hp.amxx     running  
 [ 58] Elbasi freeze           1.0         Leey�             Elbasi_t_freeze  running  
 [ 59] Revive No Weapon        1.0         nefret007         elbasiglockyoke  running  

 [ 60] [ReAPI] El Sonu Muzik   1.0         Necati_DGN        elsonmzk.amxx    running  
 [ 61] Hook Grab Rope          1.0         PurposeLess       hgr.amxx         running  
 [ 62] [reAPI]CT Oto Silah     1.0         LoseBasgan        OTOSILAH.amxx    running  
 [ 63] Silah Vereni Goster     1.0         CSMODDERS         weapongoster.am  running  
 [ 64] JailBreak Shop          v1.2        Yektaaa(YeKTaBEY  JBMenuv12.amxx   running  
 [ 65] CTMenu                  v2.4        PurposeLess35     ctmenu.amxx      running  
 [ 66] [REAPI] Gelismis Redbu  1.1         Necati_DGN        redbull.amxx     running  
 [ 67] Gelismis UstYazi & Gun  4.0         Necati_DGN        ustgunyazi_gunc  running  
 [ 68] Sureli LR               3.0         By Deh$eT         destanlr.amxx    running  
 [ 69] Kalan Can               0.1         Leeyé            kalantctreapi.a  running  
 [ 70] New Plug-In             1.0         akcaliberkk       kalant_ct.amxx   running  
 [ 71] Otomatik LR & Koruma H  1.5         Necati_DGN        hakver_v1.5.amx  running  
 [ 72] CtAvantaj               1.0         LoseBasgan        ctavantajmenu.a  running  
 [ 73] Admin Sapkasi           1.0         CSmiLeFaCe        adminsapkaa.amx  running  
 [ 74] Deagle Sniper           0.1.1       fezh              Deaglezoom.amxx  running  

 [ 75] CSD Reklam Eklentisi    1.0         Fatih ~ EjderYa   csd_reklam.amxx  running  
75 plugins, 75 running

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Yek'-ta
Mesajlar: 9626
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Küfür engelleyen plugin ‼️

Mesaj gönderen Yek'-ta »

Say reklam engelleyici çalışıyor mu ve chat eklentini gönderebilir misin?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

LoseBasgan
Mesajlar: 1402
Kayıt: Sal Oca 29, 2019 11:28 pm
Clan İsmi: MoonGaming

Küfür engelleyen plugin ‼️

Mesaj gönderen LoseBasgan »

Evet say reklam çalışıyor buda tag eklentisi,
admin_tag.sma
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Yek'-ta
Mesajlar: 9626
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Küfür engelleyen plugin ‼️

Mesaj gönderen Yek'-ta »

Eskiden eklentiler sıra ile çalışıyordu, fakat değişen mimariler sonucu tek bir bütün olarak çalışmaya başlayınca eski eklentiler de böyle bozulmaya başlamış. Eski sürüm amxmodx sürümü kullanırsanız eklentiler sırası ile çalışacağı için sorun olmayacaktır. Neyse, ben eklentileri birleştirdim.

Kod: Tümünü seç

#include <amxmodx>
#include <amxmisc>

#define PLUGIN         	"Admin Yesil Yazi & Adminlerde Tag"
#define VERSION     	"2.2"
#define AUTHOR         	"EDITLEYEN: qurteisa"

#define ACCESS_LEVEL    ADMIN_IMMUNITY
#define ADMIN_LISTEN    ADMIN_LEVEL_C

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

new const g_szTag[][] = {
    "[DestanGaming]",
    "[DestanGaming]",
    "[DestanGaming]",
    "[DestanGaming]"
}

new const g_iTagFlag[sizeof(g_szTag)] = {
    ADMIN_RCON,
    ADMIN_RCON,
    ADMIN_BAN,
    ADMIN_RESERVATION
}
#define MAX_WORDS 192

new g_swearsNames[MAX_WORDS][32];
new g_swearsNum;

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)

    g_MessageColor = register_cvar("amx_color", "2") 
    g_NameColor = register_cvar("amx_namecolor", "6") 
    g_AdminListen = register_cvar("amx_listen", "1")


    sayText = get_user_msgid("SayText")
    teamInfo = get_user_msgid("TeamInfo")
    maxPlayers = get_maxplayers()


    register_message(sayText, "avoid_duplicated")

    register_concmd("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    register_clcmd("say", "hook_say")
    register_clcmd("say_team", "hook_teamsay")
    readList();
}


public avoid_duplicated(msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}

get_tag_index(id)
{
    new flags = get_user_flags(id)
    
    for(new i = 1; i < sizeof(g_iTagFlag); i++)
    {
        if(check_admin_flag(flags, g_iTagFlag[i]))
        {
            return i
        }
    }
    
    return 0
}

check_admin_flag(flags, flag)
{
    if(flag == ADMIN_ADMIN)
    {
        return ((flags & ~ADMIN_USER) > 0)
    }
    else if(flag == ADMIN_ALL)
    {
        return 1
    }
    
    return (flags & flag)
}
readList()  {
	new filename[64];
	get_localinfo("amxx_configsdir", filename, charsmax(filename));
	format(filename, charsmax(filename), "%s/kufur_listesi.ini", filename);

	if(!file_exists(filename))
	{
		log_message("Swear Filter: %s dosyasi bulunamadi.", filename);
		return;
	}
	new iLen;
	while(g_swearsNum < MAX_WORDS && read_file(filename, g_swearsNum ,g_swearsNames[g_swearsNum][1],30,iLen))
	{
		if(g_swearsNames[g_swearsNum][0] == ';') continue;
		g_swearsNames[g_swearsNum][0] = iLen;
		++g_swearsNum;
	}
	log_message("Swear Filter: %d adet engellenecek kufur eklendi.", g_swearsNum);
} 
public hook_say(id)
{
    read_args(message, 191)
    remove_quotes(message)

    
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) 
        return PLUGIN_CONTINUE

    new pos, i = 0;
    while(i < g_swearsNum)
    {
        if((pos = containi(message,g_swearsNames[i][1])) != -1)
        {
            new len = g_swearsNames[i][0];
            while(len--)
            message[pos++] = '*';
            continue;
        }
        ++i;
    }
	
    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // İsim
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
            case 2:
                format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
        }

        // Mesaj
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Sari
                format(strText, 191, "%s", message)
            case 2:    // Yesil
                format(strText, 191, "^x04%s", message)
            case 3:    // Beyaz
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Mavi
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Kirmizi
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else     
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s^x03%s", alive, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s^x01 :  %s", strName, strText)

    sendMessage(color, isAlive)    

    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]

    switch(playerTeam) 
    {
        case 1:
            copy(playerTeamName, 11, "Terrorists")

        case 2:
            copy(playerTeamName, 18, "Counter-Terrorists")

        default:
            copy(playerTeamName, 9, "Spectator")
    }

    read_args(message, 191)
    remove_quotes(message)

   
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) 
        return PLUGIN_CONTINUE

    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // İsim
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
            case 2:
                format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
        }

        // Message
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Sari
                format(strText, 191, "%s", message)
            case 2:    // Yesil
                format(strText, 191, "^x04%s", message)
            case 3:    // Beyaz
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Mavi
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Kirmizi
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else     
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s ^x01:  %s", strName, strText)

    sendTeamMessage(color, isAlive, playerTeam)    

    return PLUGIN_CONTINUE
}


public set_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 5)
    {
        set_pcvar_num(g_MessageColor, newColor)

        if(get_pcvar_num(g_NameColor) != 1 &&
            ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
        {
            set_pcvar_num(g_NameColor, 2)
        }
    }

    return PLUGIN_HANDLED
}


public set_name_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 6)
    {
        set_pcvar_num(g_NameColor, newColor)

        if((get_pcvar_num(g_MessageColor) != 1
            &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
            || get_pcvar_num(g_NameColor) == 6)
        {
            set_pcvar_num(g_MessageColor, 2)
        }
    }

    return PLUGIN_HANDLED
}


public set_listen(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newListen
    read_argv(1, arg, 1)

    newListen = str_to_num(arg)

    set_pcvar_num(g_AdminListen, newListen)

    return PLUGIN_HANDLED
}


public sendMessage(color[], alive)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            get_user_team(player, teamName, 9)
            changeTeamInfo(player, color)
            writeMessage(player, message)
            changeTeamInfo(player, teamName)
        }
    }
}


public sendTeamMessage(color[], alive, playerTeam)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)
                changeTeamInfo(player, color)
                writeMessage(player, message)
                changeTeamInfo(player, teamName)
            }
        }
    }
}


public changeTeamInfo(player, team[])
{
    message_begin(MSG_ONE, teamInfo, _, player) 
    write_byte(player)                
    write_string(team)                
    message_end()                   
}


public writeMessage(player, message[])
{
    message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    
    write_byte(player)                   
    write_string(message)                    
    message_end()                        
}  
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Admin tag eklentisinin içine swear filtre gömülü. ini dosyasını config klasörüne atıp kullanabilirsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

LoseBasgan
Mesajlar: 1402
Kayıt: Sal Oca 29, 2019 11:28 pm
Clan İsmi: MoonGaming

Küfür engelleyen plugin ‼️

Mesaj gönderen LoseBasgan »

Yek'-ta yazdı: Cmt Mar 21, 2020 2:19 pm Eskiden eklentiler sıra ile çalışıyordu, fakat değişen mimariler sonucu tek bir bütün olarak çalışmaya başlayınca eski eklentiler de böyle bozulmaya başlamış. Eski sürüm amxmodx sürümü kullanırsanız eklentiler sırası ile çalışacağı için sorun olmayacaktır. Neyse, ben eklentileri birleştirdim.

Kod: Tümünü seç

#include <amxmodx>
#include <amxmisc>

#define PLUGIN         	"Admin Yesil Yazi & Adminlerde Tag"
#define VERSION     	"2.2"
#define AUTHOR         	"EDITLEYEN: qurteisa"

#define ACCESS_LEVEL    ADMIN_IMMUNITY
#define ADMIN_LISTEN    ADMIN_LEVEL_C

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

new const g_szTag[][] = {
    "[DestanGaming]",
    "[DestanGaming]",
    "[DestanGaming]",
    "[DestanGaming]"
}

new const g_iTagFlag[sizeof(g_szTag)] = {
    ADMIN_RCON,
    ADMIN_RCON,
    ADMIN_BAN,
    ADMIN_RESERVATION
}
#define MAX_WORDS 192

new g_swearsNames[MAX_WORDS][32];
new g_swearsNum;

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)

    g_MessageColor = register_cvar("amx_color", "2") 
    g_NameColor = register_cvar("amx_namecolor", "6") 
    g_AdminListen = register_cvar("amx_listen", "1")


    sayText = get_user_msgid("SayText")
    teamInfo = get_user_msgid("TeamInfo")
    maxPlayers = get_maxplayers()


    register_message(sayText, "avoid_duplicated")

    register_concmd("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    register_clcmd("say", "hook_say")
    register_clcmd("say_team", "hook_teamsay")
    readList();
}


public avoid_duplicated(msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}

get_tag_index(id)
{
    new flags = get_user_flags(id)
    
    for(new i = 1; i < sizeof(g_iTagFlag); i++)
    {
        if(check_admin_flag(flags, g_iTagFlag[i]))
        {
            return i
        }
    }
    
    return 0
}

check_admin_flag(flags, flag)
{
    if(flag == ADMIN_ADMIN)
    {
        return ((flags & ~ADMIN_USER) > 0)
    }
    else if(flag == ADMIN_ALL)
    {
        return 1
    }
    
    return (flags & flag)
}
readList()  {
	new filename[64];
	get_localinfo("amxx_configsdir", filename, charsmax(filename));
	format(filename, charsmax(filename), "%s/kufur_listesi.ini", filename);

	if(!file_exists(filename))
	{
		log_message("Swear Filter: %s dosyasi bulunamadi.", filename);
		return;
	}
	new iLen;
	while(g_swearsNum < MAX_WORDS && read_file(filename, g_swearsNum ,g_swearsNames[g_swearsNum][1],30,iLen))
	{
		if(g_swearsNames[g_swearsNum][0] == ';') continue;
		g_swearsNames[g_swearsNum][0] = iLen;
		++g_swearsNum;
	}
	log_message("Swear Filter: %d adet engellenecek kufur eklendi.", g_swearsNum);
} 
public hook_say(id)
{
    read_args(message, 191)
    remove_quotes(message)

    
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) 
        return PLUGIN_CONTINUE

    new pos, i = 0;
    while(i < g_swearsNum)
    {
        if((pos = containi(message,g_swearsNames[i][1])) != -1)
        {
            new len = g_swearsNames[i][0];
            while(len--)
            message[pos++] = '*';
            continue;
        }
        ++i;
    }
	
    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // İsim
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
            case 2:
                format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
        }

        // Mesaj
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Sari
                format(strText, 191, "%s", message)
            case 2:    // Yesil
                format(strText, 191, "^x04%s", message)
            case 3:    // Beyaz
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Mavi
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Kirmizi
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else     
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s^x03%s", alive, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s^x01 :  %s", strName, strText)

    sendMessage(color, isAlive)    

    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]

    switch(playerTeam) 
    {
        case 1:
            copy(playerTeamName, 11, "Terrorists")

        case 2:
            copy(playerTeamName, 18, "Counter-Terrorists")

        default:
            copy(playerTeamName, 9, "Spectator")
    }

    read_args(message, 191)
    remove_quotes(message)

   
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) 
        return PLUGIN_CONTINUE

    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // İsim
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
            case 2:
                format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
        }

        // Message
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Sari
                format(strText, 191, "%s", message)
            case 2:    // Yesil
                format(strText, 191, "^x04%s", message)
            case 3:    // Beyaz
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Mavi
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Kirmizi
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else     
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s ^x01:  %s", strName, strText)

    sendTeamMessage(color, isAlive, playerTeam)    

    return PLUGIN_CONTINUE
}


public set_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 5)
    {
        set_pcvar_num(g_MessageColor, newColor)

        if(get_pcvar_num(g_NameColor) != 1 &&
            ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
        {
            set_pcvar_num(g_NameColor, 2)
        }
    }

    return PLUGIN_HANDLED
}


public set_name_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 6)
    {
        set_pcvar_num(g_NameColor, newColor)

        if((get_pcvar_num(g_MessageColor) != 1
            &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
            || get_pcvar_num(g_NameColor) == 6)
        {
            set_pcvar_num(g_MessageColor, 2)
        }
    }

    return PLUGIN_HANDLED
}


public set_listen(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newListen
    read_argv(1, arg, 1)

    newListen = str_to_num(arg)

    set_pcvar_num(g_AdminListen, newListen)

    return PLUGIN_HANDLED
}


public sendMessage(color[], alive)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            get_user_team(player, teamName, 9)
            changeTeamInfo(player, color)
            writeMessage(player, message)
            changeTeamInfo(player, teamName)
        }
    }
}


public sendTeamMessage(color[], alive, playerTeam)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)
                changeTeamInfo(player, color)
                writeMessage(player, message)
                changeTeamInfo(player, teamName)
            }
        }
    }
}


public changeTeamInfo(player, team[])
{
    message_begin(MSG_ONE, teamInfo, _, player) 
    write_byte(player)                
    write_string(team)                
    message_end()                   
}


public writeMessage(player, message[])
{
    message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    
    write_byte(player)                   
    write_string(message)                    
    message_end()                        
}  
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Admin tag eklentisinin içine swear filtre gömülü. ini dosyasını config klasörüne atıp kullanabilirsiniz.
Teşekkürler Yek'ta

Link:
Linklerini gizle
Linki Kopyala
Cevapla