16/09/2020, 01:11 AM
Buenas! estoy intentando activar el siguiente plugin, el tema es que me da error, al compilar, ya puse el inc de chema y todo y no me deja compilar,adjunto codigo
me tira este error
y otra cosa, donde se pone el mail a donde va a llegar el pedido??
Código PHP:
/*
| INFORMACIÓN |
# Este PLUGIN ha sido creado por Chema.
*/
#include < amxmodx >
#include < amxmisc >
//#include < cstrike >
//#include < engine >
//#include < fakemeta >
//#include < hamsandwich >
//#include < fun >
//#include < xs >
//#include < sqlx >
#include < adv_vault >
const MESES_MAX = 12;
enum _:adminData {
NOMBRE[ 25 ],
COSTO
}
enum _:adminTimeData {
ACCESO,
TIEMPO
}
new const g_szAdminsData[ 3 ][ adminData ] = {
{ "VIP", 20 },
{ "ADMIN", 30 },
{ "SÚPER ADMIN", 45 }
}
new CHAT_PREFIX[ ] = "!g[ BG ]!y";
new CONSOLE_PREFIX[ ] = "[ BG ]";
new const g_szFile[ ] = "pedidos.log";
new const g_szEmails[ ][ ] = {
"@live.com",
"@gmail.com",
"@hotmail.com",
"@live.com.ar",
"@gmail.com.ar",
"@hotmail.es",
"@hotmail.com.ar",
"@yahoo.com.ar"
};
new g_szText[ 300 ],
g_iSent[ 33 ],
g_szHotmail[ 33 ][ 34 ],
g_iContador[ 33 ][ adminTimeData ];
new g_iLen;
new g_iKeys = MENU_KEY_0 | MENU_KEY_1 | MENU_KEY_2 | MENU_KEY_3 | MENU_KEY_4 | MENU_KEY_5;
/* *** GUARDADO *** */
enum {
FIELD_SENT,
MAX_FIELDS
}
new g_iFields[ MAX_FIELDS ];
new g_iVault;
new g_szPlayerName[ 33 ];
public plugin_init( ) {
register_plugin( "Pedido de ADMINS", "1.0", "Chema" );
register_clcmd( "say /pedido", "SM_Pedido" );
register_clcmd( "REGISTER_CONTACT", "register_contact" );
register_menu( "PEDIDO", g_iKeys, "HM_Pedido");
register_menu( "CONFIRMACION", g_iKeys, "HM_Confirmacion");
AdvancedVault_Init( );
}
public AdvancedVault_Init( ) {
g_iVault = adv_vault_open( "bg_admincompra", false );
g_iFields[ FIELD_SENT ] = adv_vault_register_field( g_iVault, "FIELD_SENT" );
adv_vault_init( g_iVault );
}
public client_putinserver( id ) {
g_iContador[ id ][ ACCESO ] = 0;
g_iContador[ id ][ TIEMPO ] = 0;
g_iSent[ id ] = 0;
g_szHotmail[ id ][ 0 ] = 0;
get_user_name( id, g_szPlayerName[ id ], sizeof( g_szPlayerName ) );
Load_Data( id );
}
public client_disconnect( id ) {
g_szHotmail[ id ][ 0 ] = 0;
Save_Data( id );
}
public SM_Pedido( id ) {
if( g_iSent[ id ] == 1 ) {
ColorChat( id, "Ya has enviado un pedido de compra." );
return PLUGIN_HANDLED;
}
g_iLen = 0;
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r[BG]\y COMPRAR ADMINISTRADOR^n^n" );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r1. \wTIPO: \d[ \r%s \d]^n", g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ NOMBRE ] );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r2. \wTIEMPO: \d[ \r%d MES%s \d]^n^n",( g_iContador[ id ][ TIEMPO ] + 1 ),( g_iContador[ id ][ TIEMPO ] == 0 ? "" : "ES" ) );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "COSTO: \d[ \y$%d \d]^n^n",( g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ COSTO ] * ( g_iContador[ id ][ TIEMPO ] + 1 ) ) );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r3. \wE-Mail: \d[ \y%s\d ]^n^n", g_szHotmail[ id ][ 0 ] == 0 ? "\dIngresa tú E-Mail." : g_szHotmail[ id ] );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r4. \wEnviar pedido^n^n" );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r0. \wSalir" );
show_menu( id, g_iKeys, g_szText, -1, "PEDIDO" );
return PLUGIN_HANDLED;
}
public HM_Pedido( id, keys, menu ) {
switch( keys ) {
case 0: {
if( ++g_iContador[ id ][ ACCESO ] == 3 )
g_iContador[ id ][ ACCESO ] = 0;
SM_Pedido( id );
}
case 1: {
if( ++g_iContador[ id ][ TIEMPO ] == MESES_MAX )
g_iContador[ id ][ TIEMPO ] = 0;
SM_Pedido( id );
}
case 2: {
client_cmd( id, "messagemode REGISTER_CONTACT" );
}
case 3: {
if( g_szHotmail[ id ][ 0 ] == 0 ) {
g_iContador[ id ][ ACCESO ] = 0;
g_iContador[ id ][ TIEMPO ] = 0;
client_cmd( id, "spk buttons/button2.wav" );
ColorChat( id, "Debes ingresar un E-Mail." );
SM_Pedido( id );
return PLUGIN_HANDLED;
}
SM_Confirmacion( id );
}
}
return PLUGIN_HANDLED;
}
public SM_Confirmacion( id ) {
if( g_iSent[ id ] == 1 ) {
ColorChat( id, "Ya has enviado un pedido de compra." );
return;
}
g_iLen = 0;
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r[BG]\y ¿ESTA SEGURO QUE DESEA ENVIAR EL PEDIDO?^n^n" );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\wTIPO: \d[ \r%s \d]^n", g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ NOMBRE ] );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\wTIEMPO: \d[ \r%d MES%s \d]^n^n",( g_iContador[ id ][ TIEMPO ] + 1 ),( g_iContador[ id ][ TIEMPO ] == 0 ? "" : "ES" ) );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\wCOSTO: \d[ \y$%d \d]^n^n",( g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ COSTO ] * ( g_iContador[ id ][ TIEMPO ] + 1 ) ) );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\wE-Mail: \d[ \y%s\d ]^n^n", g_szHotmail[ id ][ 0 ] == 0 ? "\dIngresa tú E-Mail." : g_szHotmail[ id ] );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r1. \wConfirmar pedido^n^n" );
g_iLen += formatex( g_szText[ g_iLen ], sizeof g_szText - 1 - g_iLen, "\r0. \wSalir" );
show_menu( id, g_iKeys, g_szText, -1, "CONFIRMACION" );
}
public HM_Confirmacion( id, keys, menu ) {
switch( keys ) {
case 0: {
ColorChat( id, "El pedido ha sido enviado con éxito." );
console_print( id, "%s El pedido ha sido enviado con éxito.", CONSOLE_PREFIX );
ColorChat( id, "TIPO: !g%s!y !t|!y TIEMPO !g%d MES%s !t|!y COSTO: !g$%d!y.", g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ NOMBRE ], ( g_iContador[ id ][ TIEMPO ] + 1 ),( g_iContador[ id ][ TIEMPO ] == 0 ? "" : "ES" ), ( g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ COSTO ] * ( g_iContador[ id ][ TIEMPO ] + 1 ) ) );
g_iSent[ id ] = 1;
get_user_name( id, g_szPlayerName[ id ], sizeof( g_szPlayerName ) );
log_to_file( g_szFile, "NOMBRE: %s | TIPO %s | TIEMPO %d MES%s | COSTO $%d | E-Mail: %s", g_szPlayerName[ id ], g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ NOMBRE ], ( g_iContador[ id ][ TIEMPO ] + 1 ),( g_iContador[ id ][ TIEMPO ] == 0 ? "" : "ES" ), ( g_szAdminsData[ g_iContador[ id ][ ACCESO ] ][ COSTO ] * ( g_iContador[ id ][ TIEMPO ] + 1 ) ), g_szHotmail[ id ] )
Save_Data( id );
}
}
return PLUGIN_HANDLED;
}
public register_contact( id ) {
read_args( g_szHotmail[ id ], charsmax( g_szHotmail[ ] ) );
remove_quotes( g_szHotmail[ id ] );
trim( g_szHotmail[ id ] );
new iArroba = contain( g_szHotmail[ id ], "@");
new bool:bValid = false
if( iArroba > 0 && strlen( g_szHotmail[ id ] ) > 7 ) {
for( new i = 0; i < sizeof ( g_szEmails ); i++) {
if( equali( g_szHotmail[ id ][ iArroba ], g_szEmails[ i ] ) ) {
SM_Pedido( id );
client_cmd( id, "spk buttons/button3.wav" );
bValid = true;
break;
}
}
}
if ( !bValid ) {
g_szHotmail[ id ][ 0 ] = 0;
SM_Pedido( id );
ColorChat ( id, "Dirección de correo electrónico inválido." );
client_cmd( id, "spk buttons/button2.wav" );
}
return PLUGIN_HANDLED;
}
public Save_Data( id ) {
if( !is_user_connected( id ) )
return;
adv_vault_set_start( g_iVault )
adv_vault_set_field( g_iVault, g_iFields[ FIELD_SENT ], g_iSent[ id ] );
adv_vault_set_end( g_iVault, 0, g_szPlayerName[ id ] );
}
public Load_Data( id ) {
if( !adv_vault_get_prepare( g_iVault, _, g_szPlayerName[ id ] ) ) {
return;
}
g_iSent[ id ] = adv_vault_get_field( g_iVault, g_iFields[ FIELD_SENT ] );
}
stock ColorChat( const id, const Text[ ], any:... ) {
new count = 1, players[ 32 ];
static msg[ 191 ], len, i;
len = formatex( msg, charsmax(msg), "%s ", CHAT_PREFIX );
vformat( msg[ len ], 190 - len, Text, 3 );
replace_all( msg, 190, "!g", "^4" );
replace_all( msg, 190, "!y", "^1" );
replace_all( msg, 190, "!t", "^3" );
static iLen = sizeof( msg );
replace_all( msg, iLen, "á", "á" );
replace_all( msg, iLen, "Á", "Ã" );
replace_all( msg, iLen, "é", "é" );
replace_all( msg, iLen, "É", "É" );
replace_all( msg, iLen, "í", "Ã*" );
replace_all( msg, iLen, "Í", "Ã" );
replace_all( msg, iLen, "ó", "ó" );
replace_all( msg, iLen, "Ó", "Ó" );
replace_all( msg, iLen, "ú", "ú" );
replace_all( msg, iLen, "Ú", "Ú" );
replace_all( msg, iLen, "ñ", "ñ" );
replace_all( msg, iLen, "Ñ", "Ñ" );
if(id)
players[ 0 ] = id;
else
get_players( players, count, "ch" );
for( i = 0; i < count; ++i) {
if( is_user_connected( players[ i ] ) )
writeMessage( players[ i ], msg );
}
}
stock writeMessage( player, message[ ] ) {
message_begin( MSG_ONE, get_user_msgid( "SayText" ), { 0, 0, 0 }, player );
write_byte( player );
write_string( message );
message_end( );
}
me tira este error
Código:
Error: Cannot read from file: "adv_vault" on line 16
y otra cosa, donde se pone el mail a donde va a llegar el pedido??
(13/05/2017, 02:11 PM)DiCHANHO escribió: off: pobre este ya quedo traumado con lo del autor y robo de plugins
(26/07/2020, 08:32 PM)Hinami escribió: & si soy un gordo cagon, virgen, con posters de anime en todas partes✅✅Aportes✅✅
✅ Datear Automáticamente CincoYA
✅ Efecto Trueno y Rayo