Evet malesef Türkçe kaynak pek yok ve yabancı kaynaklar da oldukça karmaşık. Fakat verebileceğim bir kaç faydalı link var.
Burada aradığın fonksiyonların ne işe yaradıklarını nasıl kullanıldıklarını öğrenebilirsin.
AMX Mod X - Half-Life Scripting for Pros!
Burada oyun tarafından kullanılan event listesi var. (olay listesi)
Half-Life 1 Game Events - AlliedModders Wiki
Güzel bir İngilizcen varsa da amxmodx'in çıkış yaptığı alliedmods forumlarından tutorialler okuyabilirsin.
1. --------------------------------------------
get_players ( players[32], playernum, const flags )
Flags:
"a" - Ölü oyuncuları sayma
"b" - Canlı oyuncuları sayma
"c" - Botları sayma
"d" - Gerçek oyuncuları sayma
"e" - Sadece belirtilen takımı say
"f" - Sadece isminde belirtilen yazı bulunanları say
"g" - Büyük-Küçük harf duyarlılığını kapat
Örnekler:
Tüm oyuncuları say:
PHP- Kodu:
new players[32],inum;
get_players(players,inum)
client_print(id,print_chat,"Toplam Oyuncu Sayisi: %d",inum)
Canlı oyunculara 20 hp ekle:
PHP- Kodu:
new players[32],inum;
get_players(players,inum,"a")
for(new i; i<inum; i++) {
set_user_health(players[i],get_user_health(players[i]) + 20)
}
Teröristlere c4 ver:
PHP- Kodu:
new players[32],inum;
get_players(players,inum,"ae","TERRORIST")
for(new i; i<inum; i++) {
give_item(players[i],"weapon_c4")
}
İsminde akcaliberkk ( Büyük-küçük harf duyarlılığı yok ) olanları at:
PHP- Kodu:
new players[32],inum;
get_players(players,inum,"fg","akcaliberkk")
for(new i; i<inum; i++) {
client_cmd(players[i],"disconnect")
}
2.-----------------------------------------------------
cid = dahili komut indexi. Örneğin "register" ile bir komut kaydettiğiniz zaman, bu komuta bir ID atanır.
level = komut için şart koşulan yetki.
sondaki (num) = komutun içerdiği parametre sayısı.
Örneğin:
PHP- Kodu:
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_heal","cmdHeal",ADMIN_BAN,"<nick> <miktar>")
}
public cmdHeal(id,level,cid) {
if(!cmd_access(id,level,cid,3)) return PLUGIN_HANDLED
}
Komutumuz, amx_heal nick ve miktar olmak üzere 3 parametre içeriyor. Bu yüzden num = 3
Bir oyuncu amx_heal yazdığında eksik bir parametre girerse yani "amx_heal nick" yazıp bırakırsa girilen parametre sayısı 2 ve cmd_access koşulu 3 olduğu için komutu işletmeyecek ve konsolda "Usage: amx_heal <nick> <miktar>" şeklinde bir uyarı gelicektir. Aynı şekilde level tutmazsa bu sefer "You have no access to this command." hatası vericektir.
3.---------------------------------------------------------
Aynen o şekilde sadece "id" kişisine görünecektir. Herkese görünmesi için "0" kullanılabilir.
Değişkenleri belirtmek için farklı belirteçler var.
%s - String [düz yazı için] - sen sayısal değişkeni string olarak gösteremezsin. Bu yüzden boş görünüyor.
%d ve %i - Tamsayılar için
%f - Ondalık sayılar için
%L - dil dosyaları için.
4. ---------------------------------------------------------
Malesef hud mesajları tek renk olabiliyor. Dilerseniz farklı efektler var fakat istediğiniz şekilde olamıyor .