GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi

Whitelist Script ?

Başlatan beratmethe, 04 Ocak 2022, 19:38:18

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

beratmethe

Elinizde 0.3.7 uyumlu whitelist sistemi varmı ? varsa atabilirmisiniz ?


squarepants

Senin için aşağıda temel bir örnek uygulama hazırlamaya çalıştım. Beyaz listeye alınan oyuncuları scriptfiles dosya klasörü içerisinden kontrol edebilirsin.Bu sayede oyuncuya çevrimdışı olarak da müdahale edebilirsin. İyi forumlar.
#define MAX_METIN_UZUNLUK   (10)

stock List_Ekle(playerid = 0xFFFF, playeridx = 0xFFFF, isim[MAX_PLAYER_NAME])
{
if(IsPlayerConnected(playeridx))
{
  new
ymetin[MAX_PLAYER_NAME + MAX_METIN_UZUNLUK],
  File:mdosya
;
format(ymetin, sizeof ymetin, "%s.txt", isim);
                if((fexist(ymetin)) return SendClientMessage(playerid, -1, "Oyuncu Zaten Listede (!)");
                mdosya = fopen(ymetin, io_append);
fwrite(mdosya, "BEYAZ LISTEYE ALINDI");
        fclose(mdosya);
}
        else
        {
             return SendClientMessage(playerid, -1, "Oyuncu Aktif Degil (!)");
        }
        return 1;
}
CMD:blistekle(playerid, params[])
{
new isim[MAX_PLAYER_NAME], kimlik;
if(sscanf(params,"d", kimlik))
    return SendClientMessage(playerid, -1, "/blistekle [playerid]");
GetPlayerName(kimlik, isim, MAX_PLAYER_NAME);
List_Ekle(playerid, kimlik, isim);
return 1;
}


beratmethe

Alıntı yapılan: ThePosition - 06 Ocak 2022, 21:41:55
Senin için aşağıda temel bir örnek uygulama hazırlamaya çalıştım. Beyaz listeye alınan oyuncuları scriptfiles dosya klasörü içerisinden kontrol edebilirsin.Bu sayede oyuncuya çevrimdışı olarak da müdahale edebilirsin. İyi forumlar.
#define MAX_METIN_UZUNLUK   (10)

stock List_Ekle(playerid = 0xFFFF, playeridx = 0xFFFF, isim[MAX_PLAYER_NAME])
{
if(IsPlayerConnected(playeridx))
{
  new
ymetin[MAX_PLAYER_NAME + MAX_METIN_UZUNLUK],
  File:mdosya
;
format(ymetin, sizeof ymetin, "%s.txt", isim);
                if((fexist(ymetin)) return SendClientMessage(playerid, -1, "Oyuncu Zaten Listede (!)");
                mdosya = fopen(ymetin, io_append);
fwrite(mdosya, "BEYAZ LISTEYE ALINDI");
        fclose(mdosya);
}
        else
        {
             return SendClientMessage(playerid, -1, "Oyuncu Aktif Degil (!)");
        }
        return 1;
}
CMD:blistekle(playerid, params[])
{
new isim[MAX_PLAYER_NAME], kimlik;
if(sscanf(params,"d", kimlik))
    return SendClientMessage(playerid, -1, "/blistekle [playerid]");
GetPlayerName(kimlik, isim, MAX_PLAYER_NAME);
List_Ekle(playerid, kimlik, isim);
return 1;
}
@ThePosition

hata:

(4574) : error 001: expected token: ")", but found "return"
__________________________________________________________
hata veren satır:

if((fexist(ymetin)) return SendClientMessage(playerid, -1, "Oyuncu Zaten Listede (!)");


squarepants

O satırı aşağıdaki şekilde düzenler misin :
if(fexist(ymetin)) return SendClientMessage(playerid, -1, "Oyuncu Zaten Listede (!)");


beratmethe

Alıntı yapılan: ThePosition - 09 Ocak 2022, 14:13:56
O satırı aşağıdaki şekilde düzenler misin :
if(fexist(ymetin)) return SendClientMessage(playerid, -1, "Oyuncu Zaten Listede (!)");
@ThePosition
Hatası Çözüldü Teşekkürler Fakat 2 Tane Sorum Var. Bunun Whitlistli Kişileri Scriptfiles İçindeki Dosyaya Kayıt Etmesini Nasıl Yapabilirim. Birde Whitelist'i Olmayanların Sunucuya Bağlanınca Kicklenmesini Nasıl Yapabilirim 


squarepants

@Zwen komutu kullandığında kişi varsayılan olarak scriptfiles klasörü içerisinde kayıt olacak. Kişinin listede olup olmadığını kontrol edebilmek için aşağıdaki örneği kullanabilirsin :

stock List_Kontrol(playerid = 0xFFFF)
{
    new isim[MAX_PLAYER_NAME], isformat[MAX_PLAYER_NAME + 5];
    GetPlayerName(playerid, isim, MAX_PLAYER_NAME);
    format(isformat, sizeof isformat, "%s.txt", isim);
    if(fexist(isformat)) return true;
    return false;
}
if(List_Kontrol(playerid) == true) // eğer isim listede ise
if(List_Kontrol(playerid) == false) // eğer isim listede değil ise


beratmethe

Alıntı yapılan: ThePosition - 09 Ocak 2022, 16:20:21
@Zwen komutu kullandığında kişi varsayılan olarak scriptfiles klasörü içerisinde kayıt olacak. Kişinin listede olup olmadığını kontrol edebilmek için aşağıdaki örneği kullanabilirsin :

stock List_Kontrol(playerid = 0xFFFF)
{
    new isim[MAX_PLAYER_NAME], isformat[MAX_PLAYER_NAME + 5];
    GetPlayerName(playerid, isim, MAX_PLAYER_NAME);
    format(isformat, sizeof isformat, "%s.txt", isim);
    if(fexist(isformat)) return true;
    return false;
}
if(List_Kontrol(playerid) == true) // eğer isim listede ise
if(List_Kontrol(playerid) == false) // eğer isim listede değil ise
Peki Whitelist'i Olmayanların Sunucuya Bağlanınca Kicklenmesini Nasıl Yapabilirim @ThePosition
Son düzenlenme: 09 Ocak 2022, 16:54:35 Zwen

squarepants

public OnPlayerConnect(playerid)
{
    if(List_Kontrol(playerid) == false) return SendClientMessage(playerid, -1, "Listede Olmadiginiz İcin Atildiniz (!)"), Kick(playerid);
    return 1;
}


beratmethe

Alıntı yapılan: ThePosition - 09 Ocak 2022, 17:07:28
public OnPlayerConnect(playerid)
{
    if(List_Kontrol(playerid) == false) return SendClientMessage(playerid, -1, "Listede Olmadiginiz İcin Atildiniz (!)"), Kick(playerid);
    return 1;
}
Oyuna Girdiğimde Hiç Yazı Felan Çıkmıyor Hemen Kickliyor Kendimi Nasıl Whitelist'e Ekleyeceğim @ThePosition


squarepants

Scriptfiles adlı dosya klasörün içerisinde isminiz.txt adında bir metin belgesi oluşturabilirsiniz.


beratmethe

Alıntı yapılan: ThePosition - 09 Ocak 2022, 17:34:50
Scriptfiles adlı dosya klasörün içerisinde isminiz.txt adında bir metin belgesi oluşturabilirsiniz.
Yardımın İçin Teşekkürler


beratmethe