Konu

#1
Merhaba, oyuncuların isimlerinde Türkçe harfleri engelleyecek eklenti yapar mısınız? (ç, ğ, ö, ş, ı ve ü) + İsimleri 4 harften kısa olacak oyuncular serverden oto kicklensin. Kicklenme sebebi olarak: "Isminizde türkçe harfler olduğundan veya 4 harften kısa olduğundan dolayı kicklendiniz." yazabilir. 
diellza
#2
alttaki cfg dosyasının içerisine karakterlerini yaz. Ardından addons>amxmodx>configs klasörünün içerisine at. Ardından eklentiyi kurup dene bakalım :
PHP Kod:
#include <amxmodx>
#include <reapi>

#define MIN_CHARS 4

new linetxtlen

public plugin_init() {
    register_plugin("Kisa Nick Engel""1.0""Jack86,KsV")

    RegisterHookChain(RG_CBasePlayer_Spawn"@IsSpawn", .post true);
}

public 
client_putinserver(id)
{
    new BadName[64],name[32]
    get_user_name(id,namesizeof (name))
    while( ( line read_file"addons/amxmodx/configs/BadNames.ini"lineBadName63txtlen ) ) != )
    if( equalBadNamename ) )
    {
        
server_cmd("kick #%d ^"%s^" nicki ile giris yapmak yasak! Lutfen nick degistir."get_user_userid(id), name)
    }
    if(
strlen(name) < MIN_CHARS){
        
server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }
}

@
IsSpawn(const id) {
    if(!
is_user_alive(id)) return;
    new 
BadName[64],name[32]
    
get_user_name(id,namesizeof (name))
    while( ( 
line read_file"addons/amxmodx/configs/BadNames.ini"lineBadName63txtlen ) ) != )
    if( 
equalBadNamename ) )
    {
        
server_cmd("kick #%d ^"%s^" nicki ile giris yapmak yasak! Lutfen nick degistir."get_user_userid(id), name)
    }
    if(
strlen(name) < MIN_CHARS){
        
server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }

.ini BadNames.ini (Dosya Boyutu: 17 Bayt | İndirme Sayısı: 1)
#3
(24-09-2021, 18:32)suriyelikene Adlı Kullanıcıdan Alıntı: alttaki cfg dosyasının içerisine karakterlerini yaz. Ardından addons>amxmodx>configs klasörünün içerisine at. Ardından eklentiyi kurup dene bakalım :
PHP Kod:
#include <amxmodx>
#include <reapi>

#define MIN_CHARS 4

new linetxtlen

public plugin_init() {
    register_plugin("Kisa Nick Engel""1.0""Jack86,KsV")

    RegisterHookChain(RG_CBasePlayer_Spawn"@IsSpawn", .post true);
}

public 
client_putinserver(id)
{
    new BadName[64],name[32]
    get_user_name(id,namesizeof (name))
    while( ( line read_file"addons/amxmodx/configs/BadNames.ini"lineBadName63txtlen ) ) != )
    if( equalBadNamename ) )
    {
        
server_cmd("kick #%d ^"%s^" nicki ile giris yapmak yasak! Lutfen nick degistir."get_user_userid(id), name)
    }
    if(
strlen(name) < MIN_CHARS){
        
server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }
}

@
IsSpawn(const id) {
    if(!
is_user_alive(id)) return;
    new 
BadName[64],name[32]
    
get_user_name(id,namesizeof (name))
    while( ( 
line read_file"addons/amxmodx/configs/BadNames.ini"lineBadName63txtlen ) ) != )
    if( 
equalBadNamename ) )
    {
        
server_cmd("kick #%d ^"%s^" nicki ile giris yapmak yasak! Lutfen nick degistir."get_user_userid(id), name)
    }
    if(
strlen(name) < MIN_CHARS){
        
server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }

Kısa nickler falan olmuş fakat benim isteğim şu şekildeydi. İsminde türkçe harf olan oyuncular servere giremesin hiçbir şekilde. Örn: Buğraaa.  Böyle yapma şansınız var mı?
diellza
#4
Dene bakalım :
PHP Kod:
#include <amxmodx>
#include <reapi>

#define MIN_CHARS 4

public plugin_init() {
    register_plugin("Kisa Nick Engel""1.0""Jack86,suriyelikene")

    RegisterHookChain(RG_CBasePlayer_Spawn"@IsSpawn", .post true);
}

public 
client_putinserver(id){
    new name[32]
    get_user_name(id,namesizeof (name))
    if(containi(name,"ü") || containi(name,"ç") || containi(name,"ö") || containi(name,"ğ") || containi(name,"ş") || containi(name,"ı")){
        server_cmd("kick #%d ^"%s^" Isminizde Turkce Harfler Oldugundan Dolayi Kicklendiniz"get_user_userid(id), name)
    }
    if(strlen(name) < MIN_CHARS){
        server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }
}

@
IsSpawn(const id) {
    new name[32]
    get_user_name(id,namesizeof (name))
    if(containi(name,"ü") || containi(name,"ç") || containi(name,"ö") || containi(name,"ğ") || containi(name,"ş") || containi(name,"ı")){
        server_cmd("kick #%d ^"%s^" Isminizde Turkce Harfler Oldugundan Dolayi Kicklendiniz"get_user_userid(id), name)
    }
    if(strlen(name) < MIN_CHARS){
        server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }

#5
(25-09-2021, 10:31)suriyelikene Adlı Kullanıcıdan Alıntı: Dene bakalım :
PHP Kod:
#include <amxmodx>
#include <reapi>

#define MIN_CHARS 4

public plugin_init() {
    register_plugin("Kisa Nick Engel""1.0""Jack86,suriyelikene")

    RegisterHookChain(RG_CBasePlayer_Spawn"@IsSpawn", .post true);
}

public 
client_putinserver(id){
    new name[32]
    get_user_name(id,namesizeof (name))
    if(containi(name,"ü") || containi(name,"ç") || containi(name,"ö") || containi(name,"ğ") || containi(name,"ş") || containi(name,"ı")){
        server_cmd("kick #%d ^"%s^" Isminizde Turkce Harfler Oldugundan Dolayi Kicklendiniz"get_user_userid(id), name)
    }
    if(strlen(name) < MIN_CHARS){
        server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }
}

@
IsSpawn(const id) {
    new name[32]
    get_user_name(id,namesizeof (name))
    if(containi(name,"ü") || containi(name,"ç") || containi(name,"ö") || containi(name,"ğ") || containi(name,"ş") || containi(name,"ı")){
        server_cmd("kick #%d ^"%s^" Isminizde Turkce Harfler Oldugundan Dolayi Kicklendiniz"get_user_userid(id), name)
    }
    if(strlen(name) < MIN_CHARS){
        server_cmd("kick #%d ^"Oyuncu adin cok kisa^""get_user_userid(id))
    }

Herkes sunucudan direkt kickleniyor.

Güncel

Güncel
diellza
Son Düzenleme: 27-09-2021, 19:28, Düzenleyen: diellza.
#6
İstek konusu, @suriyelikene adlı kullanıcı tarafından 4 gün içinde çözülmüştür.
İsteği çözdüğü için suriyelikene Adlı kullanıcıya 1 rep puanı ve 1 yardım etme puanı otomatik olarak verilmiştir.
suriyelikene Adlı kullanıcı sizin dışınızda toplam 650 kişiye yardım etmiştir.

Herhangi bir konuda hata olduğunu düşünüyorsanız destek sistemi üzerinden iletişim kurabilirsiniz.

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Kayıt Ol
Discord Adresimize Katılın