#include <amxmodx>
#include <cstrike>
#include <nvault>
native jb_set_user_packs(id, amount);
native jb_get_user_packs(id);
new bmVault;
new bmGenelChatTag[64],bmUstMenuTag[32],bmAltMenuTag[32],BankaMaxPara;
public plugin_init() {
register_plugin
("Banka",
"1.1",
"Berk");
register_clcmd("say /banka","beAnaMenu");
register_clcmd("Yatirilicak_Miktar","bmYatirilicak_MiktarX");
register_clcmd("Cekilecek_Miktar","bmCekilecek_MiktarX");
new bmTag = register_cvar("banka_ChatTag","Web-Ailesi:");
get_pcvar_string(bmTag,bmGenelChatTag,charsmax(bmGenelChatTag));
new bmTag2 = register_cvar("banka_MenuUstTag","Web-Ailesi");
get_pcvar_string(bmTag2,bmUstMenuTag,charsmax(bmUstMenuTag));
new bmTag3 = register_cvar("banka_MenuAltTag","wA");
get_pcvar_string(bmTag3,bmAltMenuTag,charsmax(bmAltMenuTag));
BankaMaxPara = register_cvar("pMaxBanka","40000")
}
public plugin_cfg(){
bmVault = nvault_open("bmBanka");
if(bmVault == INVALID_HANDLE){
log_amx("oK-By: Acilamayan nVault dosyasi bulundu.");
}
}
public plugin_end(){
nvault_close(bmVault);
}
public beAnaMenu(bmID){
new bmAnahtar[56],bmAuthID[48],bmMiktar;
get_user_authid(bmID,bmAuthID,charsmax(bmAuthID));
formatex(bmAnahtar,charsmax(bmAnahtar),"%s-Para",bmAuthID);
bmMiktar = nvault_get(bmVault,bmAnahtar);
new bmMenu = bmMenuOlustur("Ana Menu","beAnaMenu_devam");
bmMenuSecenekEkle(bmMenu,"Para Yatir","1");
bmMenuSecenekEkle(bmMenu,"Para Cek","2");
bmMenuSecenekEkle(bmMenu,"Bakandaki Paran\w: \y%i JB","3",1,bmMiktar);
bmMenuBitir(bmID,bmMenu);
}
public beAnaMenu_devam(bmID,bmMenu,bmMEsya){
if(bmMEsya == MENU_EXIT){
menu_destroy(bmMenu);
return PLUGIN_HANDLED;
}
new bmMVeri[6],bmBos;
menu_item_getinfo(bmMenu,bmMEsya,bmBos,bmMVeri,5,_,_,bmBos);
new bmKey = str_to_num(bmMVeri);
switch(bmKey){
case 1 : {
client_cmd(bmID,"messagemode Yatirilicak_Miktar");
}
case 2 : {
client_cmd(bmID,"messagemode Cekilecek_Miktar");
}
case 3 : {
beAnaMenu(bmID);
}
}
menu_destroy(bmMenu);
return PLUGIN_HANDLED;
}
public bmYatirilicak_MiktarX(bmID){
new bmYazi[256],bmMiktar;
read_args(bmYazi,charsmax(bmYazi));
remove_quotes(bmYazi);
bmMiktar = str_to_num(bmYazi);
if(bmMiktar > 0){
if(jb_get_user_packs(bmID) >= bmMiktar){
new bmAnahtar[56],bmAuthID[48],bmBankadakiPara;
get_user_authid(bmID,bmAuthID,charsmax(bmAuthID));
formatex(bmAnahtar,charsmax(bmAnahtar),"%s-Para",bmAuthID)
if(nvault_get(bmVault,bmAnahtar)+bmMiktar > get_pcvar_num(BankaMaxPara)) {
client_print(bmID,print_center,"%s Bankada %d 'den fazla miktarda para bulunduramazsiniz.",bmGenelChatTag,get_pcvar_num(BankaMaxPara));
return PLUGIN_HANDLED;
}
jb_set_user_packs(bmID,jb_get_user_packs(bmID)-bmMiktar);
formatex(bmAnahtar,charsmax(bmAnahtar),"%s-Para",bmAuthID);
bmBankadakiPara = nvault_get(bmVault,bmAnahtar);
new bmParaTopla[16];
num_to_str(bmBankadakiPara+bmMiktar,bmParaTopla,charsmax(bmParaTopla));
nvault_set(bmVault,bmAnahtar,bmParaTopla);
client_print(bmID,print_center,"%s Basarili bir sekilde para yatirdiniz! +%i JB",bmGenelChatTag,bmMiktar);
}
else{
client_print(bmID,print_center,"%s Yetersiz JB miktari!",bmGenelChatTag);
beAnaMenu(bmID);
}
}
else{
client_print(bmID,print_center,"%s Gecersiz para miktari!",bmGenelChatTag);
}
return PLUGIN_HANDLED;
}
public bmCekilecek_MiktarX(bmID){
new bmYazi[256],bmMiktar;
read_args(bmYazi,charsmax(bmYazi));
remove_quotes(bmYazi);
bmMiktar = str_to_num(bmYazi);
new bmAnahtar[56],bmAuthID[48],bmBankadakiPara;
get_user_authid(bmID,bmAuthID,charsmax(bmAuthID));
formatex(bmAnahtar,charsmax(bmAnahtar),"%s-Para",bmAuthID);
bmBankadakiPara = nvault_get(bmVault,bmAnahtar);
if(bmMiktar > 0){
if(bmBankadakiPara >= bmMiktar){
jb_set_user_packs(bmID,jb_get_user_packs(bmID)+bmMiktar);
new bmParaTopla[16];
num_to_str(bmBankadakiPara-bmMiktar,bmParaTopla,charsmax(bmParaTopla));
nvault_set(bmVault,bmAnahtar,bmParaTopla);
client_print(bmID,print_center,"%s Basarili bir sekilde para cektiniz! -%i JB",bmGenelChatTag,bmMiktar);
}
else{
client_print(bmID,print_center,"%s Bankanizda bu kadar dolar yok fakir!",bmGenelChatTag);
beAnaMenu(bmID);
}
}
else{
client_print(bmID,print_center,"%s Gerersiz para miktari!",bmGenelChatTag);
}
}
stock bmMenuOlustur(const bmBaslik[],const bmDevam[], any:...){
new bmYeniBaslik[256],bmDuzeltBaslik[256];
vformat(bmDuzeltBaslik,charsmax(bmDuzeltBaslik),bmBaslik,3);
formatex(bmYeniBaslik,charsmax(bmYeniBaslik),"\d[\r%s \d~> \yBanka\d] \y%s",bmUstMenuTag,bmDuzeltBaslik);
new bmMenu = menu_create(bmYeniBaslik,bmDevam);
return bmMenu;
}
stock bmMenuSecenekEkle(bmMenuID,const bmSecenekBaslik[],const bmBilgi[],bmTag = 1, any:...){
new bmYeniSecenekBaslik[256],bmSecenekDuzelt[256];
vformat(bmSecenekDuzelt,charsmax(bmSecenekDuzelt),bmSecenekBaslik,5);
if(bmTag == 1){
formatex(bmYeniSecenekBaslik,charsmax(bmYeniSecenekBaslik),"\y[%s] \r# \y[\w%s\y]",bmAltMenuTag,bmSecenekDuzelt);
}
else{
formatex(bmYeniSecenekBaslik,charsmax(bmYeniSecenekBaslik),"%s",bmSecenekDuzelt);
}
menu_additem(bmMenuID,bmYeniSecenekBaslik,bmBilgi);
}
stock bmMenuBitir(bmID,bmMenuID,bmSecenek = 1,bmCikis = 1,bmSayfa = 0){
menu_setprop(bmMenuID,MPROP_EXITNAME,"\wCikis");
menu_setprop(bmMenuID,MPROP_PERPAGE, bmSecenek ? 7:0 );
menu_setprop(bmMenuID,MPROP_EXIT,bmCikis ? MEXIT_ALL:MEXIT_NEVER);
menu_display(bmID,bmMenuID,bmSayfa);
}