How can I build this menu only via cash? I haven't been able to do it so far?
PHP Code:
public select_periodo( id ){
if( !is_user_connected( id )){
return PLUGIN_HANDLED;
}
new szTempw[ 228 ];
new iCash = GetUserCash( id );
new iNameItem[ 32 ];
ArrayGetString( xArrayItemName, xNextShopItem[ id ], iNameItem, charsmax( iNameItem ));
new iCostItem = GetArrayInfo( xNextShopItem[ id ], INFO_COST );
new iMoedaItem = GetArrayInfo( xNextShopItem[ id ], INFO_MOEDA );
#if defined LOJA_JAILBREAK
static JBPack;
JBPack = get_user_jbpack( id );
formatex( szTempw, 511, "\d %s Quantos dias voce quer? ^n%s^n\r» \yJB-Pack:\d %i ^n\r» \yCash:\d %i^n^n\w Item Selecionado:\y %s", xPrefix, xMenuLine, JBPack, iCash, iNameItem );
#endif
#if defined LOJA_ZOMBIEXP
static iAmmoPack;
iAmmoPack = zp_get_user_ammo_packs( id );
formatex( szTempw, 511, "\d %s Quantos dias voce quer? ^n%s^n\r» \yAmmoPack:\d %i ^n\r» \yCash:\d %i^n^n\w Item Selecionado:\y %s", xPrefix, xMenuLine, iAmmoPack, iCash, iNameItem );
#endif
#if defined LOJA_ALLSTARS
static iGold;
iGold = zp_get_user_golds( id );
formatex( szTempw, 511, "\d %s Quantos dias voce quer? ^n%s^n\r» \yGold:\d %i ^n\r» \yCash:\d %i^n^n\w Item Selecionado:\y %s", xPrefix, xMenuLine, iGold, iCash, iNameItem );
#endif
new iMenu = menu_create( szTempw, "select_periodo_handler" );
new iCalCashPercent = CalculaCash( iCostItem, get_pcvar_num( cvar_cash_divide ));
new iCheckCost1Day[ 128 ], iCheckCost7Day[ 128 ], iCheckCost30Day[ 128 ], iCheckCost90Day[ 128 ];
new iCheckCost1Day2[ 128 ], iCheckCost7Day2[ 128 ], iCheckCost30Day2[ 128 ], iCheckCost90Day2[ 128 ];
if( xNextShopMoeda[ id ] == CASH ){
iCheckCost1Day = GetUserCash( id ) < iCalCashPercent ? "d" : "w";
iCheckCost7Day = GetUserCash( id ) < CalculaDia( iCalCashPercent, 7 ) ? "d" : "w";
iCheckCost30Day = GetUserCash( id ) < CalculaDia( iCalCashPercent, 30 ) ? "d" : "w";
iCheckCost90Day = GetUserCash( id ) < CalculaDia( iCalCashPercent, 90 ) ? "d" : "w";
iCheckCost1Day2 = GetUserCash( id ) < iCalCashPercent ? "d" : "r";
iCheckCost7Day2 = GetUserCash( id ) < CalculaDia( iCalCashPercent, 7 ) ? "d" : "r";
iCheckCost30Day2 = GetUserCash( id ) < CalculaDia( iCalCashPercent, 30 ) ? "d" : "r";
iCheckCost90Day2 = GetUserCash( id ) < CalculaDia( iCalCashPercent, 90 ) ? "d" : "r";
}
#if defined LOJA_JAILBREAK
else if( xNextShopMoeda[ id ] == JBPACK ){
iCheckCost1Day = get_user_jbpack( id ) < iCostItem ? "d" : "w";
iCheckCost7Day = get_user_jbpack( id ) < CalculaDia( iCostItem, 7 ) ? "d" : "w";
iCheckCost30Day = get_user_jbpack( id ) < CalculaDia( iCostItem, 30 ) ? "d" : "w";
iCheckCost90Day = get_user_jbpack( id ) < CalculaDia( iCostItem, 90 ) ? "d" : "w";
iCheckCost1Day2 = get_user_jbpack( id ) < iCostItem ? "d" : "r";
iCheckCost7Day2 = get_user_jbpack( id ) < CalculaDia( iCostItem, 7 ) ? "d" : "r";
iCheckCost30Day2 = get_user_jbpack( id ) < CalculaDia( iCostItem, 30 ) ? "d" : "r";
iCheckCost90Day2 = get_user_jbpack( id ) < CalculaDia( iCostItem, 90 ) ? "d" : "r";
}
if( iMoedaItem == JBPACK_CASH ){
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", xNextShopMoeda[ id ] == JBPACK ? iCostItem : iCalCashPercent );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", xNextShopMoeda[ id ] == JBPACK ? CalculaDia( iCostItem, 7 ) : CalculaDia( iCalCashPercent, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", xNextShopMoeda[ id ] == JBPACK ? CalculaDia( iCostItem, 30 ) : CalculaDia( iCalCashPercent, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", xNextShopMoeda[ id ] == JBPACK ? CalculaDia( iCostItem, 90 ) : CalculaDia( iCalCashPercent, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
else {
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", iCostItem );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", CalculaDia( iCostItem, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", CalculaDia( iCostItem, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == JBPACK ? "JB-Pack" : "Cash", CalculaDia( iCostItem, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
#endif
#if defined LOJA_ZOMBIEXP
else if( xNextShopMoeda[ id ] == AMMOPACK ){
iCheckCost1Day = iAmmoPack < iCostItem ? "d" : "w";
iCheckCost7Day = iAmmoPack < CalculaDia( iCostItem, 7 ) ? "d" : "w";
iCheckCost30Day = iAmmoPack < CalculaDia( iCostItem, 30 ) ? "d" : "w";
iCheckCost90Day = iAmmoPack < CalculaDia( iCostItem, 90 ) ? "d" : "w";
iCheckCost1Day2 = iAmmoPack < iCostItem ? "d" : "r";
iCheckCost7Day2 = iAmmoPack < CalculaDia( iCostItem, 7 ) ? "d" : "r";
iCheckCost30Day2 = iAmmoPack < CalculaDia( iCostItem, 30 ) ? "d" : "r";
iCheckCost90Day2 = iAmmoPack < CalculaDia( iCostItem, 90 ) ? "d" : "r";
}
if( iMoedaItem == AMMOPACK_CASH ){
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", xNextShopMoeda[ id ] == AMMOPACK ? iCostItem : iCalCashPercent );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", xNextShopMoeda[ id ] == AMMOPACK ? CalculaDia( iCostItem, 7 ) : CalculaDia( iCalCashPercent, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", xNextShopMoeda[ id ] == AMMOPACK ? CalculaDia( iCostItem, 30 ) : CalculaDia( iCalCashPercent, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", xNextShopMoeda[ id ] == AMMOPACK ? CalculaDia( iCostItem, 90 ) : CalculaDia( iCalCashPercent, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
else {
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == AMMOPACK? "Ammopack" : "Cash", iCostItem );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", CalculaDia( iCostItem, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", CalculaDia( iCostItem, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == AMMOPACK ? "Ammopack" : "Cash", CalculaDia( iCostItem, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
#endif
#if defined LOJA_ALLSTARS
else if( xNextShopMoeda[ id ] == GOLD ){
iCheckCost1Day = iGold < iCostItem ? "d" : "w";
iCheckCost7Day = iGold < CalculaDia( iCostItem, 7 ) ? "d" : "w";
iCheckCost30Day = iGold < CalculaDia( iCostItem, 30 ) ? "d" : "w";
iCheckCost90Day = iGold < CalculaDia( iCostItem, 90 ) ? "d" : "w";
iCheckCost1Day2 = iGold < iCostItem ? "d" : "r";
iCheckCost7Day2 = iGold < CalculaDia( iCostItem, 7 ) ? "d" : "r";
iCheckCost30Day2 = iGold < CalculaDia( iCostItem, 30 ) ? "d" : "r";
iCheckCost90Day2 = iGold < CalculaDia( iCostItem, 90 ) ? "d" : "r";
}
if( iMoedaItem == GOLD_CASH ){
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", xNextShopMoeda[ id ] == GOLD ? iCostItem : iCalCashPercent );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", xNextShopMoeda[ id ] == GOLD ? CalculaDia( iCostItem, 7 ) : CalculaDia( iCalCashPercent, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", xNextShopMoeda[ id ] == GOLD ? CalculaDia( iCostItem, 30 ) : CalculaDia( iCalCashPercent, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", xNextShopMoeda[ id ] == GOLD ? CalculaDia( iCostItem, 90 ) : CalculaDia( iCalCashPercent, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
else {
formatex( szTempw, 511, "\%s 1 Dia\%s [ %s: %i ]", iCheckCost1Day, iCheckCost1Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", iCostItem );
menu_additem( iMenu, szTempw, "1", 0 );
formatex( szTempw, 511, "\%s 7 Dias\%s [ %s: %i ]", iCheckCost7Day, iCheckCost7Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", CalculaDia( iCostItem, 7 ));
menu_additem( iMenu, szTempw, "2", 0 );
formatex( szTempw, 511, "\%s 30 Dias\%s [ %s: %i ]", iCheckCost30Day, iCheckCost30Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", CalculaDia( iCostItem, 30 ));
menu_additem( iMenu, szTempw, "3", 0 );
formatex( szTempw, 511, "\%s 90 Dias\%s [ %s: %i ]", iCheckCost90Day, iCheckCost90Day2, xNextShopMoeda[ id ] == GOLD ? "Gold" : "Cash", CalculaDia( iCostItem, 90 ));
menu_additem( iMenu, szTempw, "4", 0 );
}
#endif
menu_setprop( iMenu, MPROP_EXITNAME, "\d Cancelar Compra" );
menu_setprop( iMenu, MPROP_NUMBER_COLOR, "\y" );
menu_display( id, iMenu, 0 );
return PLUGIN_HANDLED;
}
public select_periodo_handler( id, menu, item ){
if( item == MENU_EXIT ){
xNextShopItem[ id ] = 0;
xNextShopMoeda[ id ] = 0;
xNextShopDays[ id ] = 0;
xNextShopBody[ id ] = 0;
menu_destroy( menu );
return PLUGIN_HANDLED;
}
static iData[ 6 ], iName[ 64 ], iAccess, iCallback;
menu_item_getinfo( menu, item, iAccess, iData, charsmax( iData ), iName, charsmax( iName ), iCallback );
new iKey = str_to_num( iData );
new iNameItem[ 32 ];
ArrayGetString( xArrayItemName, xNextShopItem[ id ], iNameItem, charsmax( iNameItem ));
new iTipoItem = GetArrayInfo( xNextShopItem[ id ], INFO_TIPO );
new iCostItem = GetArrayInfo( xNextShopItem[ id ], INFO_COST );
new iIndexItem = GetArrayInfo( xNextShopItem[ id ], INFO_ID );
new iMoedaItem = GetArrayInfo( xNextShopItem[ id ], INFO_MOEDA );
new iNamePlayer[ 32 ];
get_user_name( id, iNamePlayer, charsmax( iNamePlayer ));
switch( iKey ){
case 1: xNextShopDays[ id ] = 1;
case 2: xNextShopDays[ id ] = 7;
case 3: xNextShopDays[ id ] = 30;
case 4: xNextShopDays[ id ] = 90;
}
new iCalCashPercent = CalculaCash( iCostItem, get_pcvar_num( cvar_cash_divide ));
switch( xNextShopMoeda[ id ]){
#if defined LOJA_JAILBREAK
case JBPACK: {
if( get_user_jbpack( id ) < CalculaDia( iCostItem, xNextShopDays[ id ])){
select_periodo( id );
ColorChat( id, RED, "^x01 Voce nao tem^x03 JB_Packs^x01 Suficiente!");
return PLUGIN_HANDLED;
}
set_user_jbpack( id, get_user_jbpack( id ) - CalculaDia( iCostItem, xNextShopDays[ id ]));
SetLog( LOG_LOJA, "O PLAYER %s COMPROU %s POR %i DIAS E PAGOU %i JBPACKS!", iNamePlayer, iNameItem, xNextShopDays[ id ], CalculaDia( iCostItem, xNextShopDays[ id ]));
update_banco_jbpack( id );
}
#endif
#if defined LOJA_ZOMBIEXP
case AMMOPACK: {
if( zp_get_user_ammo_packs( id ) < CalculaDia( iCostItem, xNextShopDays[ id ])){
select_periodo( id );
ColorChat( id, RED, "^x01 Voce nao tem^x03 AmmoPacks^x01 Suficiente!");
return PLUGIN_HANDLED;
}
zp_set_user_ammo_packs( id, zp_get_user_ammo_packs( id ) - CalculaDia( iCostItem, xNextShopDays[ id ]));
SetLog( LOG_LOJA, "O PLAYER %s COMPROU %s POR %i DIAS E PAGOU %i AMMOPACKS!", iNamePlayer, iNameItem, xNextShopDays[ id ], CalculaDia( iCostItem, xNextShopDays[ id ]));
update_banco_ammopacks( id );
}
#endif
#if defined LOJA_ALLSTARS
case GOLD: {
if( zp_get_user_golds( id ) < CalculaDia( iCostItem, xNextShopDays[ id ])){
select_periodo( id );
ColorChat( id, RED, "^x01 Voce nao tem^x03 Golds^x01 Suficiente!");
return PLUGIN_HANDLED;
}
zp_set_user_golds( id, zp_get_user_golds( id ) - CalculaDia( iCostItem, xNextShopDays[ id ]));
SetLog( LOG_LOJA, "O PLAYER %s COMPROU %s POR %i DIAS E PAGOU %i GOLDS!", iNamePlayer, iNameItem, xNextShopDays[ id ], CalculaDia( iCostItem, xNextShopDays[ id ]));
//update_banco_golds( id );
}
#endif
case CASH: {
#if defined LOJA_JAILBREAK
if( iMoedaItem == JBPACK_CASH ){
#endif
#if defined LOJA_ZOMBIEXP
if( iMoedaItem == AMMOPACK_CASH ){
#endif
#if defined LOJA_ALLSTARS
if( iMoedaItem == GOLD_CASH ){
#endif
if( GetUserCash( id ) < CalculaDia( iCalCashPercent, xNextShopDays[ id ])){
select_periodo( id );
ColorChat( id, RED, "^x01 Voce nao tem^x03 CASH^x01 Suficiente!");
return PLUGIN_HANDLED;
}
SetUserCash( id, GetUserCash( id ) - CalculaDia( iCalCashPercent, xNextShopDays[ id ]));
SetLog( LOG_LOJA, "O PLAYER %s COMPROU %s POR %i DIAS E PAGOU %i CASH!", iNamePlayer, iNameItem, xNextShopDays[ id ], CalculaDia( iCalCashPercent, xNextShopDays[ id ]));
}
else {
if( GetUserCash( id ) < CalculaDia( iCostItem, xNextShopDays[ id ])){
select_periodo( id );
ColorChat( id, RED, "^x01 Voce nao tem^x03 CASH^x01 Suficiente!");
return PLUGIN_HANDLED;
}
SetUserCash( id, GetUserCash( id ) - CalculaDia( iCostItem, xNextShopDays[ id ]));
SetLog( LOG_LOJA, "O PLAYER %s COMPROU %s POR %i DIAS E PAGOU %i CASH!", iNamePlayer, iNameItem, xNextShopDays[ id ], CalculaDia( iCostItem, xNextShopDays[ id ]));
}
UpdateBancoCash( id );
}
}
SetInventoryItem( id, iIndexItem, iTipoItem, TEMPORARIO, xNextShopDays[ id ]);
set_task( 2.0, "recarregar_inventario", id+TASK_LOAD_INVENTARIO );
ColorChat( id, RED, "^x01 Voce Adquiriu %s^x03 %s^x01 por^x03 %d dia%s, verifique seu Inventario!", tipo_item[ iTipoItem ], iNameItem, xNextShopDays[ id ], xNextShopDays[ id ] == 1 ? "" : "s" );
MenuLojaOficial( id );
// zeramos as variaveis no final da compra
xNextShopMoeda[ id ] = 0;
xNextShopItem[ id ] = 0;
xNextShopDays[ id ] = 0;
xNextShopBody[ id ] = 0;
menu_destroy( menu );
return PLUGIN_HANDLED;
}