⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
SponsorSponsor

Array Kullanımı

Array Kullanımı
Array konusunu basitçe anlatılmış versiyonudur. Anlamak için biraz deneyiminiz olması gerekiyor, biraz karışık olay.
PHP Kod:
#include <amxmodx>

//Öncelikle global bir Array değişkeni oluşturmamız gerekiyor. Değerin önünde Array: olmalı.
new Array:g_aArray;

public 
plugin_init() {
    
register_plugin("Steamidleri Array Kaydetme", "0.0.1", "PurposeLess");

    
//Burada global array değerimizi oluşturuyoruz.
    //ArrayCreate(değerlerinin maksimum karakter sayısı)
    
g_aArray = ArrayCreate(32);
}

public 
plugin_end() {
    
//Harita değiştiğinde veya sunucu çöktüğünde arrayı siliyoruz.
    //ArrayDestroy(array değeri)
    
ArrayDestroy(g_aArray);
}

//Bu publicte steamidleri arraya nasıl kaydedeceğimizi göstereceğim.
//Örnek olarak sunucuda olan bütün herkesin steamidsini aktaracağım.
public SaveArrays() {
    
//33lük döngü ile bütün herkesi çekiyoruz.
    
for(new pPlayer = 1, szAuthid[MAX_AUTHID_LENGTH]; pPlayer <= MaxClients; pPlayer++) {
        if(!
is_user_connected(pPlayer)) {
            continue;
        }

        
//Şimdi string yani yazı kaydedeceğimiz için ArrayPushString kullanacağız.
        //ArrayPushString(array değişkeni, kaydeceğimiz yazı)
        
get_user_authid(pPlayer, szAuthid, charsmax(szAuthid));
        
ArrayPushString(g_aArray, szAuthid);

        
//Eğer yazı yerine değer kaydedeceksek ArrayPushCell kullanacağız.
        //Burada oyuncu sayısının useridsini kaydediyoruz.
        //userid = get_user_userid
        
ArrayPushCell(g_aArray, i);
    }
}

//Bu publicte arraydakileri değere çekeceğiz.
public ReadArrays() {
    
//Arraydaki değerlerin toplamı kadar döngü döndüreceğiz.
    //Böylece sunucudaki oyuncuları çeker gibi Arraydaki değerleri çekeceğiz.
    //Bunun için ArraySize komutunu kullanacağız. Arraydakilerin içeriğin sayısını gösterir.
    
new iArraySize = ArraySize(g_aArray);

    
//Array değeri 0 dan başlar, bu yüzden i yi sıfırdan başlatıp, toplam sayıdan küçük okutuyoruz.
    
for(new i = 0, szString[MAX_AUTHID_LENGTH]; i < iArraySize; i++) {
        
//Burada string yani yazıyı algılatacağız. Bunun için bir değişkene ihtiyacımız var.
        //Bu değişkeni authid sayısına eşitledim çünkü sadece authidleri kaydedeceğim.
        //Eğer başka değer çekeceksiniz o değere göre değer girebilirsiniz.
        //ArrayGetString(array değeri, i sayısı, string değeri, charsmax string);
        //Böylece string değeri kaydettiğiniz authid oldu.
        
ArrayGetString(g_aArray, i, szString, charsmax(szString));

        
//String verme örneği
        
client_print_color(0, 0, "Authid : %s", szString);

        
//Sayı değerini çekmek için ise ArrayGetCell kullanacağız.
        //Bu değer direkt sayıyı verecektir.
        //ArrayGetCell(array değeri, i sayısı);
        
client_print_color(0, 0, "Sayi : %i", ArrayGetCell(g_aArray, i));
    }
} 
Son Düzenleme: 21-06-2021, 19:44, Düzenleyen: scuro
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Konuyu Okuyanlar: 1 Ziyaretçi