Ruleta de la suerte
#1
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 ] );
    }

Responder
#2
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 ] );
    }

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)