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));
}
}
)

