PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#define PLUGIN "SilahMenu"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
#define ADMIN_FLAG ADMIN_BAN
new bool:MessageModeByServer[33];
new target[33];
new PossibleNames[28][] = {
"p228",
"scout",
"xm1014",
"mac10",
"aug",
"elite",
"fiveseven",
"ump45",
"sg550",
"famas",
"usp",
"glock18",
"awp",
"mp5navy",
"m249",
"m3",
"m4a1",
"tmp",
"g3sg1",
"deagle",
"sg552",
"ak47",
"p90",
"c4",
"hegrenade",
"smokegrenade",
"flashbang",
"galil"
}
new const g_max_bp[28] ={
52,
90,
32,
100,
90,
120,
100,
100,
90,
90,
100,
120,
30,
120,
200,
32,
90,
120,
90,
35,
90,
90,
100,
1,
1,
1,
1,
90
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /silahmenu","MenuFunc")
register_clcmd("Silah_ismi","ReceiveWeaponName")
}
public MenuFunc(id) {
if(!access(id,ADMIN_FLAG)) return PLUGIN_CONTINUE;
new players[32],inum;
static name[32],szID[6],tempid;
get_players(players,inum);
new menu = menu_create("\rSilah Vermek Icin: \yOyuncu Secin","MenuHandle")
for(new i ; i<inum ; i++) {
tempid = players[i];
get_user_name(tempid,name,31)
num_to_str(tempid, szID, 5)
menu_additem(menu, name, szID, ADMIN_FLAG)
}
menu_display(id,menu)
return PLUGIN_HANDLED
}
public MenuHandle(id,menu,item) {
if(item == MENU_EXIT) {
menu_destroy(menu)
return PLUGIN_HANDLED
}
new name[32],szID[6];
new access,callback;
menu_item_getinfo(menu, item, access, szID, 5, name, 31, callback)
new Uid = str_to_num(szID);
if(!is_user_connected(Uid)) {
client_print(id,print_chat,"[AMXX] Oyuncu bagli degil !")
return PLUGIN_HANDLED
}
MessageModeByServer[id] = true;
client_cmd(id,"messagemode Silah_ismi")
target[id] = Uid;
return PLUGIN_HANDLED
}
public ReceiveWeaponName(id) {
if(!MessageModeByServer[id]) {
console_print(id,"Gecersiz istek")
return PLUGIN_HANDLED
}
new szSaid[32]; read_args(szSaid,31)
remove_quotes(szSaid)
if(!szSaid[0]) {
client_print(id,print_chat,"[AMXX] Silah ismi bos birakilamaz !")
client_cmd(id,"messagemode Silah_ismi")
return PLUGIN_HANDLED
}
for(new i; i<sizeof(PossibleNames); i++) {
if(equal(PossibleNames[i], szSaid) ) {
new weaponname[32]; formatex(weaponname,31,"weapon_%s",szSaid);
give_item(target[id],weaponname)
fill_ammo(target[id], szSaid)
new aname[32], tname[32];
get_user_name(id,aname,31);get_user_name(target[id], tname, 31)
client_print(0, print_chat,"[AMXX] Admin %s: %s adli oyuncuya %s adli silahi verdi !",aname,tname,szSaid)
return PLUGIN_HANDLED
}
}
client_print(id,print_chat,"[AMXX] Oyle bir silah ismi yok !")
for(new i; i<sizeof(PossibleNames); i++) {
if(containi(PossibleNames[i], szSaid) != -1 || containi(szSaid,PossibleNames[i]) != -1 || equali(PossibleNames[i],szSaid)) {
client_print(id,print_chat,"[AMXX] Bunu mu demek istediniz: %s ",PossibleNames[i])
break;
}
}
client_cmd(id,"messagemode Silah_ismi")
MessageModeByServer[id] = false;
return PLUGIN_HANDLED
}
stock fill_ammo(id, const wpnname[]) {
for(new i;i<sizeof(PossibleNames);i++) {
if(equali(PossibleNames[i],wpnname)) {
new szWeapon[32]; formatex(szWeapon, 31, "weapon_%s",wpnname)
cs_set_user_bpammo(id,get_weaponid(szWeapon),g_max_bp[i])
}
}
}