Vahsi Uzman 1
Vahsi Uzman
Bvural41 1
Bvural41
OnurBoyla 1
OnurBoyla
noisiv 1
noisiv
Hikaye Ekle

[SCRIPT] Envanterdeki Silahların Şarjörlerini Doldurma

  • Konuyu başlatan Konuyu başlatan oscar
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 391

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Açıklama:

Vereceğim kodları, herhangi bir oyuncunun tüm silahlarının şarjörünü tamamen doldurmak için eklentinizde kısayoldan kullanabiliriniz.
Oyuncunun silahlarını tek tek "if" şartlandırıcısını defalarca kullanarak kontrol edip, uygun silahla eşleştirerek şarjör doldurmak hem performans kaybına hem de yazımın zorlaşmasına sebep olur.
Vereceğim kodlar bu iş için en etkili yöntemdir.

Kodlar:


PHP- Kodu:
new const g_weapons[] =
{
CSW_P228,
CSW_SCOUT,
CSW_XM1014,
CSW_MAC10,
CSW_AUG,
CSW_ELITE,
CSW_FIVESEVEN,
CSW_UMP45,
CSW_SG550,
CSW_GALIL,
CSW_FAMAS,
CSW_USP,
CSW_GLOCK18,
CSW_AWP,
CSW_MP5NAVY,
CSW_M249,
CSW_M3,
CSW_M4A1,
CSW_TMP,
CSW_G3SG1,
CSW_DEAGLE,
CSW_SG552,
CSW_AK47,
CSW_P90
}

new const g_max_bp[] =
{
52,
90,
32,
100,
90,
120,
100,
100,
90,
90,
90,
100,
120,
30,
120,
200,
32,
90,
120,
90,
35,
90,
90,
100
}

stock refill_weapons(id) {
new weapons[32],inum;
get_user_weapons(id,weapons,inum)
for(new i;i<inum;i++) {
for(new a;a < sizeof(g_weapons); a++) {
if(weapons == g_weapons[a]) {
cs_set_user_bpammo(id,weapons,g_max_bp[a])
}
}
}
}
İlk önce baştaki iki dizi değişkenlerini yaratalım. İlk dizideki herhangi bir silahın satır numarası, aynı silahın ikinci dizideki mermi miktarının satır numarası ile aynı.
Bu olayı anlamak başlarda zor gelebilir. Dizi değişkenlerini anlamayanlar, matematikteki diziler konusuna göz atabilirler. Yazılım, matematikten gelir (fonksiyonlar, iki tabanlı sayılar, diziler vs.)

Daha sonra fonksiyonu yarattık. Fonksiyonun çalışma mantığı;

Oyuncunun tüm silahlarını listele.
Listedeki silahları tek tek başta yarattığımız g_weapons dizisindeki silahlar ile karşılaştır.
Eğer silahlar eşleşiyorsa, g_weapons dizisinde eşleşen silahın satır numarasıyla;
g_max_bp dizisindeki aynı satır numarasına sahip elemanın sayı değeri kadar şarjöre mermi koy.

Eklenti içerisinde;

refill_weapons(id)

şeklinde belirli oyuncunun şarjörünü silahın maksimum kapasitesi kadar doldurabilirsiniz.

id = Oyuncu indexi [1-32]

Bu işlemin en etkili yolu budur.
Umarım bilmeyenlere faydalı olmuştur.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst