Allied Modders en español

Versión completa: Ruleta de la suerte
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Encontre este plugin de hypnotize, pero el problema es que sin tickets puede probar su suerte, como lo restringiria si no contiene los tickets?
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <adv_vault>
#include <fun>
#include <cstrike>

#define PLUGIN    "Suerte"
#define AUTHOR    "Hypnotize"
#define VERSION    "1.0"

enum PTSMAX_FIELDS };
enum Cargar 0Guardar };
enum eTickes Texto150 ], TICKETPRECIO };
new 
g_iCamposMAX_FIELDS ], g_iVaultg_iTickets33 ], g_szPName33 ][ 32 ];

#if AMXX_VERSION_NUM > 182
    #define client_disconnect client_disconnected
    #define client_print_color client_print
    #define print_team_default print_chat 
#endif

new const cTickes[ ][ eTickes ] =
{
    { 
"\wTICKETS \y10",        10,        1000        },
    { 
"\wTICKETS \y20",     20,        2000        },
    { 
"\wTICKETS \y50",        50,        5000        },
    { 
"\wTICKETS \y100",    100,    10000        },
    { 
"\wTICKETS \y200",    200,    11000        },
    { 
"\wTICKETS \y300",    300,    16000        }
};

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
// Add your own code here
    
    
register_clcmd("say /suerte""fnMenu");
    
    
g_iVault adv_vault_open"Ruleta"false );
    
g_iCamposPTS ]    = adv_vault_register_fieldg_iVault"Tickets" );    
    
adv_vault_initg_iVault );
}

public 
client_putinserverid )
{
    
get_user_nameidg_szPNameid ], charsmaxg_szPName[ ] ) );
    
g_iTicketsid ] = 0;
    
TypeidCargar );
}
public 
client_disconnectid )   TypeidGuardar );

public 
fnMenuid )
{
    new 
menu menu_create("\rSuerte""hnMenu");
    
    
menu_additem(menu"Jugar a la ruleta");
    
menu_additem(menu"Comprar Tickets");
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
hnMenuidmenuitem )
{
    
    if( 
item == MENU_EXIT )
    {
        
menu_destroymenu );
        return 
PLUGIN_HANDLED;
    }
    if( 
item == )
    {
        
g_iTicketsid ] -= 10; new rnd random_num50200 );
        
        switch( 
random_num40 ) )
        {
            case 
5:
            {
                
set_user_healthidget_user_healthid ) + rnd );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 +i%^1 de vida"rnd );
            }
            case 
7:
            {
                
set_user_armoridget_user_armorid ) + rnd );
                
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 +%i ^1de chaleco"rnd );
            }
            case 
12:
            {
                
set_user_godmodeid);
                
set_task60.0"RemoveGod"id );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste ^4Modo dios ^1por 1 minuto" );
            }
            case 
36:
            {
                
set_user_healthid200 );
                
set_user_armorid200 );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 200 ^1de vida y^4 200 ^1de chaleco" );
            }
            default:
            {
                
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 No haz tenido suerte")
            }
        }
    }
    else
    {
        
fnTkcid );
    } 
    return 
PLUGIN_HANDLED;
}

public 
fnTkcid )
{
    new 
txt150 ], menu menu_create("Comprar \rTickets""hnTkc");
    
    for( new 
0sizeofcTickes ); ++)
    { 
        
formatextxtcharsmaxtxt ), "Tickets: [ %s ] Por $[ %i ] "cTickes][ Texto ], cTickes][ PRECIO ] );
        
menu_additem(menutxt );
    }
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}
public 
hnTkcidmenuitem )
{
    
    if( 
item == MENU_EXIT )
    {
        
menu_destroymenu );
        return 
PLUGIN_HANDLED;
    }
    if( 
cs_get_user_moneyid ) < cTickesitem ][ PRECIO ] )
        return 
PLUGIN_HANDLED;
    
    
cs_set_user_moneyidcs_get_user_moneyid ) - cTickesitem ][ PRECIO ], 1);
    
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 compraste %i tickets, por $%i"cTickesitem ][ TICKET ], cTickesitem ][ PRECIO ] );
    return 
PLUGIN_HANDLED;
}
public 
RemoveGodid 
{
    if( !
is_user_connectedid ) )  
        return;
    
    
set_user_godmodeid,);
    
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Termino tu tiempo de Modo dios" )
    
}
TypeidiTipo )
{
    if( !
is_user_connectedid ) ) 
        return;
    
    if( 
iTipo == Cargar )
    {
        if( !
adv_vault_get_prepareg_iVault_g_szPNameid ] ) )        
            return;
        
        
g_iTicketsid ] = adv_vault_get_fieldg_iVaultg_iCamposPTS ] );
    }
    if( 
iTipo == Guardar )
    {       
        
adv_vault_set_startg_iVault );
        
adv_vault_set_fieldg_iVaultg_iCamposPTS ], g_iTicketsid ] );
        
adv_vault_set_endg_iVault0g_szPNameid ] );
    }

Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <adv_vault>
#include <fun>
#include <cstrike>

#define PLUGIN    "Suerte"
#define AUTHOR    "Hypnotize"
#define VERSION    "1.0"

enum PTSMAX_FIELDS };
enum Cargar 0Guardar };
enum eTickes Texto150 ], TICKETPRECIO };
new 
g_iCamposMAX_FIELDS ], g_iVaultg_iTickets33 ], g_szPName33 ][ 32 ];

#if AMXX_VERSION_NUM > 182
    #define client_disconnect client_disconnected
    #define client_print_color client_print
    #define print_team_default print_chat 
#endif

new const cTickes[ ][ eTickes ] =
{
    { 
"\wTICKETS \y10",        10,        1000        },
    { 
"\wTICKETS \y20",     20,        2000        },
    { 
"\wTICKETS \y50",        50,        5000        },
    { 
"\wTICKETS \y100",    100,    10000        },
    { 
"\wTICKETS \y200",    200,    11000        },
    { 
"\wTICKETS \y300",    300,    16000        }
};

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
// Add your own code here
    
    
register_clcmd("say /suerte""fnMenu");
    
    
g_iVault adv_vault_open"Ruleta"false );
    
g_iCamposPTS ]    = adv_vault_register_fieldg_iVault"Tickets" );    
    
adv_vault_initg_iVault );
}

public 
client_putinserverid )
{
    
get_user_nameidg_szPNameid ], charsmaxg_szPName[ ] ) );
    
g_iTicketsid ] = 0;
    
TypeidCargar );
}
public 
client_disconnectid )   TypeidGuardar );

public 
fnMenuid )
{
    new 
menu menu_create("\rSuerte""hnMenu");
    
    
menu_additem(menu"Jugar a la ruleta"__menu_makecallback("check_tickets"));
    
menu_additem(menu"Comprar Tickets");
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
check_tickets(idmenuitem)
    
// Si tiene menos de 10 tickets, deshabilitamos el elemento.    
    
return (g_iTicketsid ] < 10) ? ITEM_DISABLED ITEM_ENABLED;

public 
hnMenuidmenuitem )
{
    
    if( 
item == MENU_EXIT )
    {
        
menu_destroymenu );
        return 
PLUGIN_HANDLED;
    }
    if( 
item == )
    {
        
g_iTicketsid ] -= 10; new rnd random_num50200 );
        
        switch( 
random_num40 ) )
        {
            case 
5:
            {
                
set_user_healthidget_user_healthid ) + rnd );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 +i%^1 de vida"rnd );
            }
            case 
7:
            {
                
set_user_armoridget_user_armorid ) + rnd );
                
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 +%i ^1de chaleco"rnd );
            }
            case 
12:
            {
                
set_user_godmodeid);
                
set_task60.0"RemoveGod"id );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste ^4Modo dios ^1por 1 minuto" );
            }
            case 
36:
            {
                
set_user_healthid200 );
                
set_user_armorid200 );
                
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Ganaste^4 200 ^1de vida y^4 200 ^1de chaleco" );
            }
            default:
            {
                
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 No haz tenido suerte")
            }
        }
    }
    else
    {
        
fnTkcid );
    } 
    return 
PLUGIN_HANDLED;
}

public 
fnTkcid )
{
    new 
txt150 ], menu menu_create("Comprar \rTickets""hnTkc");
    
    for( new 
0sizeofcTickes ); ++)
    { 
        
formatextxtcharsmaxtxt ), "Tickets: [ %s ] Por $[ %i ] "cTickes][ Texto ], cTickes][ PRECIO ] );
        
menu_additem(menutxt );
    }
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}
public 
hnTkcidmenuitem )
{
    
    if( 
item == MENU_EXIT )
    {
        
menu_destroymenu );
        return 
PLUGIN_HANDLED;
    }
    if( 
cs_get_user_moneyid ) < cTickesitem ][ PRECIO ] )
        return 
PLUGIN_HANDLED;
    
    
cs_set_user_moneyidcs_get_user_moneyid ) - cTickesitem ][ PRECIO ], 1);
    
client_print_color(idprint_team_default"^4[ ^3AMXX^4 ]^1 compraste %i tickets, por $%i"cTickesitem ][ TICKET ], cTickesitem ][ PRECIO ] );
    return 
PLUGIN_HANDLED;
}
public 
RemoveGodid 
{
    if( !
is_user_connectedid ) )  
        return;
    
    
set_user_godmodeid,);
    
client_print_coloridprint_team_default"^4[ ^3AMXX^4 ]^1 Termino tu tiempo de Modo dios" )
    
}
TypeidiTipo )
{
    if( !
is_user_connectedid ) ) 
        return;
    
    if( 
iTipo == Cargar )
    {
        if( !
adv_vault_get_prepareg_iVault_g_szPNameid ] ) )        
            return;
        
        
g_iTicketsid ] = adv_vault_get_fieldg_iVaultg_iCamposPTS ] );
    }
    if( 
iTipo == Guardar )
    {       
        
adv_vault_set_startg_iVault );
        
adv_vault_set_fieldg_iVaultg_iCamposPTS ], g_iTicketsid ] );
        
adv_vault_set_endg_iVault0g_szPNameid ] );
    }