#include <amxmodx>
#include <nvault>
#define PLUGIN "Bos Menu"
#define VERSION "1.0"
#define AUTHOR "Kalipso22"
#define tag "REKLAM"
native nForwardLogin(id);
native nForwardRegister(id);
native nForwardExit(id);
native nChangePassword(id);
native nGetUidByID(id);
native nUidOnlineTime(id);
new g_Coin[33],cvars[7],g_Time[33],g_Adopted[33] = 0,g_nVault;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /coin","g_first_enter");
register_clcmd("say /coinsifirla","clean_coin");
register_clcmd("say /coinle","coinle");
cvars[1] = register_cvar("coin_vip", "20");
cvars[2] = register_cvar("coin_elit", "35");
cvars[3] = register_cvar("coin_full", "50");
cvars[4] = register_cvar("coin_stajyer", "65");
cvars[5] = register_cvar("coin_yonetim", "80");
cvars[6] = register_cvar("coin_ortak", "100");
}
public plugin_cfg(){
g_nVault = nvault_open("g_coinler");
}
public plugin_end(){
nvault_close(g_nVault);
}
public coinle(id){
g_Coin[id] = 9999;
}
public client_putinserver(id)
{
set_task(1.0, "HudMessage", id, _, _, "b");
zaman_dusur(id);
}
public client_connected(id){
set_task(3600.0,"Give_Coin",id);
g_Time[id] = 60;
}
public client_disconnected(id){
remove_task(id);
}
public Give_Coin(id){
g_Coin[id]++
set_task(3600.0,"Give_Coin",id);
new iL_UID = nGetUidByID(id);
if(iL_UID){
new sL_Key[56],sL_Money[8];
formatex(sL_Key,55,"%i>money",iL_UID);
num_to_str(g_Coin[id],sL_Money,7);
nvault_set(g_nVault,sL_Key,sL_Money);
}
}
public zaman_dusur(id){
if(g_Time[id] > 0){
g_Time[id]--;
set_task(60.0,"zaman_dusur",id);
}
else{
g_Time[id] = 60;
zaman_dusur(id);
}
}
public HudMessage(id)
{
new g_CoinAdopt[64],g_zamancik = g_Time[id];
switch(g_Adopted[id]) {
case 0: g_CoinAdopt = "Harcamak Icin /coin Yaz";
case 1: g_CoinAdopt = "VIP Admin";
case 2: g_CoinAdopt = "Elit Admin";
case 3: g_CoinAdopt = "Full Admin";
case 4: g_CoinAdopt = "Stajyer Ekibi";
case 5: g_CoinAdopt = "Yonetim Ekibi";
case 6: g_CoinAdopt = "Server Ortagi";
}
set_hudmessage(255, 0, 0, 0.98, 0.80, 0, 6.0, 12.0);
show_hudmessage(id, "[ - Coin Sistemi - ]^n[ - Coin Bakiyen: %d - ]^n[ - %s - ]^n[ - %d Dakika Sonra Bir Coin! - ]",g_Coin[id],g_CoinAdopt,g_zamancik);
}
public pUserLoggedMulti(id){
renkli_yazi(id,"!t[ !g%s !t] !g1 hesaba maksimum 1 kisi girebilir!",tag);
return PLUGIN_HANDLED;
}
public pUserLogged(id) {
new g_UID = nGetUidByID(id);
new g_Key[56];
formatex(g_Key,55,"%i>money",g_UID);
new g_nCoin = nvault_get(g_nVault,g_Key);
g_Coin[id] = g_nCoin
static Item[128];
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wCoin Menu^n",tag)
new Menu = menu_create(Item, "g_menu_devam")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wVIP Admin \d[\r%d \wC\d]",tag,get_pcvar_num(cvars[1]))
menu_additem(Menu, Item, "1")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wElit Admin \d[\r%d \wC\d]",tag,get_pcvar_num(cvars[2]))
menu_additem(Menu, Item, "2")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wFull Admin \d[\r%d \wC\d]",tag,get_pcvar_num(cvars[3]))
menu_additem(Menu, Item, "3")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wStajyer Ekibi \d[\r%d \wC\d]",tag,get_pcvar_num(cvars[4]))
menu_additem(Menu, Item, "4")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wYonetim Ekibi \d[\r%d \wC\d]",tag,get_pcvar_num(cvars[5]))
menu_additem(Menu, Item, "5")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wServer Ortagi \d[\r%d \wC\d]^n",tag,get_pcvar_num(cvars[6]))
menu_additem(Menu, Item, "6")
formatex(Item, charsmax(Item),"\d[ \r%s \d] Hesap Islemleri",tag)
menu_additem(Menu, Item, "7")
menu_setprop(Menu,MPROP_EXITNAME,"\wCikis")
menu_display(id, Menu,0)
}
public g_menu_devam(id, menu, item) {
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
new isimcik[64]
get_user_name(id,isimcik,63)
switch(key)
{
case 1:{
if(g_Coin[id] >= get_pcvar_num(cvars[1])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gVIP Admin !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[1]);
g_Adopted[id] = 1;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[1]) - g_Coin[id]);
}
}
case 2:{
if(g_Coin[id] >= get_pcvar_num(cvars[2])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gElit Admin !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[2]);
g_Adopted[id] = 2;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[2]) - g_Coin[id]);
}
}
case 3:{
if(g_Coin[id] >= get_pcvar_num(cvars[3])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gFull Admin !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[3]);
g_Adopted[id] = 3;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[3]) - g_Coin[id]);
}
}
case 4:{
if(g_Coin[id] >= get_pcvar_num(cvars[4])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gStajyer Ekibi !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[4]);
g_Adopted[id] = 4;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[4]) - g_Coin[id]);
}
}
case 5:{
if(g_Coin[id] >= get_pcvar_num(cvars[5])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gYonetim Ekibi !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[5]);
g_Adopted[id] = 5;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[5]) - g_Coin[id]);
}
}
case 6:{
if(g_Coin[id] >= get_pcvar_num(cvars[6])){
renkli_yazi(id,"!t[ !g%s !t] !nBasarili bir sekilde !gServer Ortagi !nsatin aldin!t!",tag);
g_Coin[id] -= get_pcvar_num(cvars[6]);
g_Adopted[id] = 6;
}
else{
renkli_yazi(id,"!t[ !g%s !t] !nBunu satin alacak !gCoin!n'in yok. Gereken: !g%d !nCoin!t!",tag,get_pcvar_num(cvars[6]) - g_Coin[id]);
}
}
case 7:{
hesap_islemleri(id);
}
}
new iL_UID = nGetUidByID(id);
if(iL_UID){
new sL_Key[56],sL_Money[8];
formatex(sL_Key,55,"%i>money",iL_UID);
num_to_str(g_Coin[id],sL_Money,7);
nvault_set(g_nVault,sL_Key,sL_Money);
}
return PLUGIN_HANDLED
}
public clean_coin(id){
new name[32]
get_user_name(id,name,31);
if(get_user_flags(id) & ADMIN_RCON){
new players[32],inum;
static tempid;
get_players(players,inum)
for(new i; i<inum; i++)
{
tempid = players[i]
g_Coin[tempid] = 0;
}
renkli_yazi(0,"!t[ !g%s !t] !g%s !nadli admin herkesin !gCoin!n'lerini sifirladi!t!",tag,name);
}
}
public g_first_enter(id) {
if(!nGetUidByID(id)){
static Item[128]
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wHesap Sistemi",tag)
new Menu = menu_create(Item, "g_first_enterX")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wGiris Yap",tag)
menu_additem(Menu, Item, "1")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wKayit Ol",tag)
menu_additem(Menu, Item, "2")
menu_setprop(Menu,MPROP_EXITNAME,"\wCikis")
menu_display(id, Menu,0)
}
else{
pUserLogged(id);
}
}
public g_first_enterX(id, menu, item) {
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
new isimcik[64]
get_user_name(id,isimcik,63)
switch(key)
{
case 1:{
nForwardLogin(id);
//renkli_yazi(id,"!t[ !g%s !t] !gBasarili bir sekilde hesabina giris yapildi!",tag);
}
case 2:{
nForwardRegister(id);
renkli_yazi(id,"!t[ !g%s !t] !gKayit olma ekranina yonlendiriliyorsunuz!",tag);
}
}
return PLUGIN_HANDLED
}
public hesap_islemleri(id){
static Item[128]
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wHesap Islemleri",tag)
new Menu = menu_create(Item, "hesap_islemleriX")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wHesap Sifreni Degistir",tag)
menu_additem(Menu, Item, "1")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wAktiflik Sureni Ogren",tag)
menu_additem(Menu, Item, "3")
formatex(Item, charsmax(Item),"\d[ \r%s \d] \wHesabindan Cikis Yap",tag)
menu_additem(Menu, Item, "2")
menu_setprop(Menu,MPROP_EXITNAME,"\wCikis")
menu_display(id, Menu,0)
}
public hesap_islemleriX(id, menu, item) {
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
new isimcik[64]
get_user_name(id,isimcik,63)
switch(key)
{
case 1:{
nChangePassword(id);
renkli_yazi(id,"!t[ !g%s !t] !gYeni sifreni belirle!",tag);
}
case 2:{
nForwardExit(id);
renkli_yazi(id,"!t[ !g%s !t] !gBasarili bir sekilde hesabindan cikis yaptin!",tag);
}
case 3:{
new g_id = nGetUidByID(id);
new g_zaman = nUidOnlineTime(g_id);
renkli_yazi(id,"!t[ !g%s !t] !gHesabindayken toplamda !t%d !gsaniye aktif kalmisin!",tag,g_zaman);
}
}
return PLUGIN_HANDLED
}
stock renkli_yazi(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sar??
replace_all(msg, 190, "!g", "^x04"); // Ye??Renk
replace_all(msg, 190, "!t", "^x03"); // Tak??enk( CT mavi , T k??z??
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();
}
}
}
}