Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <zombieplague>
#include <nvault>
#define PLUGIN "Zombie Plague Banka"
#define VERSION "1.0"
#define AUTHOR "Edit: Optimist"
new anavault;
new username[33][200]
new password[33][200]
new g_username[33][200]
new g_password[33][200]
new k_username[33][200]
new k_password[33][200]
new maxammo
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
new map_name[128]
get_mapname(map_name,127)
if(contain(map_name,"zm_") != -1)
{
anavault = nvault_open("ZmBanka")
maxammo = register_cvar("azeribank_maxammo", "1000")
register_clcmd("Hesap_Ismi","Giris_ID")
register_clcmd("Hesap_Ismi_Secin","Kayit_ID")
register_clcmd("Vereceginiz_Miktar","Ammo_Yatir")
register_clcmd("Alacaginiz_Miktar","Ammo_Cek")
register_clcmd("Sifreniz","Giris_Pw")
register_clcmd("Sifre_Secin","Kayit_Pw")
register_clcmd("say /banka","login_menusu")
set_task(600.0,"tanit_beni",3476,"",0,"b")
}
}
public client_connect(id)
{
copy(username[id],199,"")
copy(password[id],199,"")
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
}
public client_disconnected(id)
{
copy(username[id],199,"")
copy(password[id],199,"")
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
}
public login_menusu(id)
{
if(!is_user_connected(id) || !is_user_alive(id)) return PLUGIN_HANDLED
static Item[64]
formatex(Item,127,"\rAzeriBANK \wSehir Bankasi")
new menu = menu_create(Item,"login_devam")
if(equal(username[id],""))
{
menu_additem(menu,"Giris Yap","1",0)
menu_additem(menu,"Kayit Ol","2",0)
}
else
{
formatex(Item, charsmax(Item),"CP [Ammo] Yatir \w[\d %d \w]", get_hesap_ammo(username[id]))
menu_additem(menu, Item, "3")
formatex(Item, charsmax(Item),"CP [Ammo] Cek \w[\d %d \w]", get_hesap_ammo(username[id]))
menu_additem(menu, Item, "4")
formatex(Item, charsmax(Item),"Hepsini Yatir")
menu_additem(menu, Item, "5")
}
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
return PLUGIN_HANDLED
}
public login_devam(id,menu,item)
{
if(!is_user_connected(id) || !is_user_alive(id)) return PLUGIN_HANDLED
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new acces,data2[24],iname[64],callback,data
menu_item_getinfo(menu,item,acces,data2,23,iname,63,callback)
data = str_to_num(data2)
switch(data)
{
case 1:
{
client_cmd(id,"messagemode Hesap_Ismi")
}
case 2:
{
client_cmd(id,"messagemode Hesap_Ismi_Secin")
}
case 3:
{
client_cmd(id,"messagemode Vereceginiz_Miktar")
}
case 4:
{
client_cmd(id,"messagemode Alacaginiz_Miktar")
}
case 5:
{
hepsiniat(id)
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public Giris_ID(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(equal(say, "") || !equal(username[id],"") || strlen(say) > 12)
{
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
return PLUGIN_HANDLED
}
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
copy(g_username[id],199,say)
client_cmd(id,"messagemode Sifreniz")
return PLUGIN_CONTINUE
}
public Giris_Pw(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(equal(say, "") || !equal(username[id],"") || equal(g_username[id],"") || strlen(say) > 12)
{
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
return PLUGIN_HANDLED
}
copy(g_password[id],199,say)
giris_yap(id,g_username[id], g_password[id])
copy(g_password[id],199,"")
copy(g_username[id],199,"")
copy(k_password[id],199,"")
copy(k_username[id],199,"")
return PLUGIN_CONTINUE
}
/////////////////////////
////#Kayit Islemleri#////
/////////////////////////
public Kayit_ID(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(equal(say, "") || !equal(username[id],"") || strlen(say) > 12)
{
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
return PLUGIN_HANDLED
}
copy(k_password[id],199,"")
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,say)
client_cmd(id,"messagemode Sifre_Secin")
return PLUGIN_CONTINUE
}
public Kayit_Pw(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(equal(say, "") || !equal(username[id],"") || equal(k_username[id],"") || strlen(say) > 12)
{
copy(g_username[id],199,"")
copy(g_password[id],199,"")
copy(k_username[id],199,"")
copy(k_password[id],199,"")
return PLUGIN_HANDLED
}
copy(k_password[id],199,say)
kayit_yap(id,k_username[id], k_password[id])
copy(g_password[id],199,"")
copy(g_username[id],199,"")
copy(k_password[id],199,"")
copy(k_username[id],199,"")
return PLUGIN_CONTINUE
}
///////////////////////////
///////////////////////////
public giris_yap(id,userid[],psw[])
{
if(!is_user_connected(id) || equal(userid,"") || equal(psw,"") || !equal(username[id],""))
return PLUGIN_HANDLED
new getPw[32], IDFormat[64]
formatex(IDFormat,63,"%s-ID",userid)
nvault_get(anavault,IDFormat,getPw,31)
if(equali(psw,getPw))
{
copy(username[id],199,userid)
copy(password[id],199,psw)
colorchat(0,"!y[!gAzeriBANK]!y !yHesabiniza basariyla giris yapildi. Su anda !t%d TL!y depoluyorsunuz!",get_hesap_ammo(userid))
}
else
{
colorchat(0,"!y[!gAzeriBANK]!y !tYanlis hesap ismi veya sifre !")
}
return PLUGIN_HANDLED
}
public kayit_yap(id,userid[],psw[])
{
if(!is_user_connected(id) || equal(userid,"") || equal(psw,"") || !equal(username[id],""))
return PLUGIN_HANDLED
new getPw[32], IDFormat[64]
formatex(IDFormat,63,"%s-ID",userid)
nvault_get(anavault,IDFormat,getPw,31)
if(equali(getPw,""))
{
copy(username[id],199,userid)
copy(password[id],199,psw)
new ammoKey[64], hesapKey[64]
formatex(hesapKey,63,"%s-ID",userid)
formatex(ammoKey,63,"%s-TL",userid)
nvault_set(anavault,hesapKey,psw)
nvault_set(anavault,ammoKey,"0")
colorchat(0,"!y[!gAzeriBANK]!y !yBanka hesabinizi kaydettik.Islemler icin !g^"/banka^"!y yazin..")
colorchat(0,"!y[!gAzeriBANK]!y !yBanka Kullanici Adi = !t%s !ySifreniz = !t%s",userid,psw)
}
else
{
colorchat(0,"!y[!gAzeriBANK]!y Bu banka hesabi zaten kayitli...")
}
return PLUGIN_HANDLED
}
public Ammo_Yatir(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(!is_str_num(say) || equal(say, "") || equal(username[id],"") || strlen(say) > 12)
return PLUGIN_HANDLED
if(zp_get_user_ammo_packs(id) < str_to_num(say))
{
colorchat(0,"!y[!gAzeriBANK]!y Bu ne acele once bi parani denklestir bakalim!!!")
return PLUGIN_HANDLED
}
if(get_hesap_ammo(username[id]) + str_to_num(say) > get_pcvar_num(maxammo))
{
colorchat(0,"!y[!gAzeriBANK]!y Hesabinda !t%i'!yden fazla ammo depolayamazsin :)",get_pcvar_num(maxammo))
return PLUGIN_HANDLED
}
zp_set_user_ammo_packs(id,zp_get_user_ammo_packs(id) - (str_to_num(say)))
set_hesap_ammo(username[id],get_hesap_ammo(username[id]) + str_to_num(say))
colorchat(0,"!y[!gAzeriBANK]!y !tHesabiniza !g%d TL!t transfer edildi..",str_to_num(say))
return PLUGIN_HANDLED
}
public hepsiniat(id)
{
new say[300]
new ammo = zp_get_user_ammo_packs(id)
read_args(say, charsmax(say))
remove_quotes(say)
if(!is_str_num(say) || equal(say, "") || equal(username[id],"") || strlen(say) > 12)
return PLUGIN_HANDLED
if(zp_get_user_ammo_packs(id) < 0)
{
colorchat(0,"!y[!gAzeriBANK]!y Tum ammonuzu bankaniza zaten transfer ettiniz.!")
return PLUGIN_HANDLED
}
if(get_hesap_ammo(username[id]) + 0 > get_pcvar_num(maxammo))
{
colorchat(0,"!y[!gAzeriBANK]!y Hesabinda !t%i'!yden fazla ammo depolayamazsin :)",get_pcvar_num(maxammo))
return PLUGIN_HANDLED
}
zp_set_user_ammo_packs(id,zp_get_user_ammo_packs(id) - ammo)
set_hesap_ammo(username[id],get_hesap_ammo(username[id]) + ammo)
colorchat(0,"!y[!gAzeriBANK]!y !tHesabiniza !gTum Ammolariniz!t transfer edildi..")
return PLUGIN_HANDLED
}
public Ammo_Cek(id)
{
new say[300]
read_args(say, charsmax(say))
remove_quotes(say)
if(!is_str_num(say) || equal(say, "") || equal(username[id],"") || strlen(say) > 12)
return PLUGIN_HANDLED
if(get_hesap_ammo(username[id]) < str_to_num(say))
{
colorchat(0,"!y[!gAzeriBANK]!y Hesabinizda yeterli para yok..!")
return PLUGIN_HANDLED
}
zp_set_user_ammo_packs(id,zp_get_user_ammo_packs(id) + str_to_num(say))
set_hesap_ammo(username[id],get_hesap_ammo(username[id]) - str_to_num(say))
colorchat(0,"!y[!gAzeriBANK]!y Hesabinizdan !g%d TL!y cektiniz..",str_to_num(say))
return PLUGIN_HANDLED
}
public get_hesap_ammo(userid[])
{
new gData[64], gAmmoKey[64]
formatex(gAmmoKey,63,"%s-TL",userid)
nvault_get(anavault,gAmmoKey,gData,63)
return str_to_num(gData)
}
public set_hesap_ammo(userid[],miktar)
{
new gAmmoKey[64], miktar2[128]
num_to_str(miktar,miktar2,127)
formatex(gAmmoKey,63,"%s-TL",userid)
nvault_set(anavault,gAmmoKey,miktar2)
return 1
}
public tanit_beni(TaskID)
{
colorchat(0,"!y[!gAzeriBANK!y] !yAmmolarini en yakin bankaya yatirmak mi istiyorsun ? !tHemen !g^"/banka^"!t yazin !")
}
// RENKLI YAZI //
//-----------------------------------------------------------------//
stock colorchat(const id, const input[], any:...) {
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4") // YESIL YAZI
replace_all(msg, 190, "!y", "^1") // SARI YAZI (DEFAULT)
replace_all(msg, 190, "!t", "^3") // TAKIM RENGI ( T Kırmızı - CT Mavi )
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
// RENKLI YAZI //
//-----------------------------------------------------------------//