PHP Kod:
#include <amxmodx>
public plugin_init() {
//...
register_clcmd("say /menuyegiris", "MenuyeGiris");
//Bu zorunlu değil, bir çeşit menüye giriş sistemi.
}
//Menüye giriş işlevi menüyü oluşturacaktır.
public MenuyeGiris(pPlayer) {
//Öncelikle menü ve menü değeri oluşturmalıyız.
new iMenu = menu_create("Menu basligi", "MenuyeGiris_handler");
// menu_create
// Birinci değer menünün başlığı.
// İkinci değer menü kullanıldığında ne olacağını belirleyen işleve giriş.
//Sonradan menüye değer ekleyeceğiz
menu_additem(iMenu, "Secenek 1")
menu_additem(iMenu, "Secenek 2");
menu_additem(iMenu, "Senecek 3", "", 0, ADMIN_ADMIN);
// menu_additem
// Birinci değer oluşturduğumuz menünün değeri
// İkinci değer menüde gözükecek olan seçenek
// Üçüncü değer bu seçeneğin bilgisi
// Dördüncü değer bu seçeneği kullanabilecek admin yetkisi
// Beşinci değer etkinleştirmek/devre dışı bırakmak için geri çağırmadır. Geri çağırma kullanma pek kullanılmadığı için burayı atlayacağım.
//Menünün özelliklerini değiştirebiliriz.
menu_setprop(iMenu, MPROP_EXITNAME, "Çıkış");
// menu_setprop
// Birinci değer oluşturduğumuz menünün değeri
// İkinci değer modifiye edeceğimiz yer (amxconst.inc kütüphanesinde bulabilirsiniz)
// Üçüncü değer modifiye ettiğimiz şey (Burada exit yazısını Çıkış yaptık.Siz istediğiniz şeyi değiştirebilirsiniz)
// MPROP_EXIT için MPROP_ALL varsayılandır. Kullanılmaya gerek yoktur.
//Son olarak menüyü gösterelim.
menu_display(pPlayer, iMenu);
// menu_display
// Birinci değer menüyü gösterdiğimiz kişi (0 yazarak herkese gösteremezsiniz, döngü gerekiyor)
// İkinci değer oluşturduğumuz menünün değeri
// Üçüncü değer göstereceğimiz sayfa (varsayılan ilk sayfa olduğu için gerek yok)
// Dördüncü değer menünün kullanılma süresi (varsayılan sınırsız)
}
//Menüyü gösterdik, şimdi menüde neler olacağını ayarlayacağız.
public MenuyeGiris_handler(pPlayer, iMenu, iItem) {
//iItem komutu bize hangi seçeneğin seçildiğini açıklıyor. Fakat 1 den değil 0 dan başlıyor
switch(iItem) {
case 0: {
client_print_color(0, 0, "BİRİNCİ SEÇENEĞE BASTIM.");
//Menüye devam ettirmek istemediğimiz zaman önce menüyü yok etmemiz gerekiyor. Basit bir örnek.
menu_destroy(iMenu);
return PLUGIN_HANDLED;
}
case 1: {
client_print_color(0, 0, "İKİNCİ SEÇENEĞE BASTIM");
}
case 2: {
client_print_color(0, 0, "ÜÇÜNCÜ SEÇENEĞE BASTIM ADMİNİM");
}
//Bu zorunlu değil sadece MENU_EXIT ile menüden çıktığını algılatabiliyorsunuz.
case MENU_EXIT: {
client_print_color(0, 0, "MENÜDEN ÇIKTIM");
}
}
//En son olarak menüyü yok edip bu fonksiyonu bitiriyoruz.
menu_destroy(iMenu);
return PLUGIN_HANDLED;
}
)

