agregar submenu para afirmar si comprar el item o no
#1
me pueden ayudar a agregar un submenu que diga que si quieren comprar el arma especial o no el submenu se tiene que abrir después de seleccionar el arma

Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <cstrike>
#include <jctf>
//#include <TiendaNatives>

#define SetPlayerBit(%1,%2) (%1 |= (1 << (%2 & 31)))
#define ClearPlayerBit(%1,%2) (%1 &= ~(1 << (%2 &31)))
#define GetPlayerBit(%1,%2) (%1 & (1 << (%2 & 31)))

#define IsValidConnected(%1) (1 <= %1 <= g_iMaxPlayers && is_user_connected(%1))

new g_szPluginName[] = "Shop with Natives"
new g_szPluginAuthor[] = "Chema"

new g_szSayPrefix[] = "^4[SG]^1"

new const g_szSelectItemSound[] = "Ui/buttonclickrelease.wav"

enum _:eItems
{
    
ITEM_BALROGII,
    
ITEM_CARTBLUE,
    
ITEM_PLASMAGUN,
    
ITEM_THANATHOS7,
    
ITEM_BALROGIII,
    
ITEM_GATLING,
    
ITEM_GOLDENAK,
    
ITEM_ROCKGUITAR,
    
ITEM_THUNDERBOLT,
    
ITEM_COILGUN,
    
ITEM_SQUEAKGRENADE
}

enum _:eShop_Items
{
    
Item_Name[19],
    
Item_Money,
    
Item_Adrenaline,
    
Item_AdminFlag
}

new const 
g_szShopItems[][_:eShop_Items] =
{
    {
"Balrog II"250015ADMIN_LEVEL_B},
    {
"Cartblue"300010, -1},
    {
"Plasma Gun"450020, -1},
    {
"Thanathos 7"500025ADMIN_LEVEL_B},
    {
"Balrog III"250040, -1},
    {
"Gatling"500070, -1},
    {
"Golden-AK"150030ADMIN_LEVEL_B},
    {
"Rock Guitar"350060, -1},
    {
"Thunderbolt"500045, -1},
    {
"Coil Gun"3000100, -1},
    {
"Squeak Grenade"150015, -1}
}

new 
g_iConnected
new g_iAlive
new g_iMaxPlayers
new g_iShopCallBack

public plugin_init()
{
    
register_plugin(g_szPluginNameAMXX_VERSION_STRg_szPluginAuthor)
    
    
register_cvar("swn_author"g_szPluginAuthorFCVAR_SPONLY)

    
register_clcmd("radio1""m_ShopMenu")
    
register_concmd("get_adrenaline""ClientCommand_GetAdrenaline")

    
RegisterHam(Ham_Spawn"player""ham_PlayerSpawn_Post"true)
    
RegisterHam(Ham_Killed"player""ham_PlayerKilled_Post"true)

    
g_iMaxPlayers get_maxplayers()

    
g_iShopCallBack menu_makecallback("c_ShopMenu")
}

public 
plugin_precache()
{
    
precache_sound(g_szSelectItemSound)
}

public 
client_putinserver(iID)
{
    
ClearPlayerBit(g_iAliveiID);
    
SetPlayerBit(g_iConnectediID);
}

public 
client_disconnected(iID)
{
    
ClearPlayerBit(g_iConnectediID);
    
ClearPlayerBit(g_iAliveiID);
}

public 
ClientCommand_GetAdrenaline(const iID)
{
    if(
get_user_flags(iID) & ADMIN_RCON)
    {
        
jctf_add_adrenaline(iID100)
    }
    return 
PLUGIN_HANDLED
}

public 
ham_PlayerSpawn_Post(const iID)
{
    if( !
is_user_alive(iID))
    {
        return 
HAM_IGNORED
    
}
    
SetPlayerBit(g_iAliveiID)
    return 
HAM_IGNORED
}

public 
ham_PlayerKilled_Post(const iVictim, const iAttacker, const iShouldGib)
{
    new 
iCheckiCheck = (iVictim == iAttacker || !IsValidConnected(iAttacker)) ? 0;

    if(
iCheck)
    {
        return 
HAM_IGNORED
    
}
    
ClearPlayerBit(g_iAliveiVictim)
    return 
HAM_IGNORED
}

public 
m_ShopMenu(const iID)
{
    if(!
GetPlayerBit(g_iAliveiID) || is_user_bot(iID))
    {
        
client_print_color(iIDiID"%s Tienes que estar vivo para utilizar la tienda"g_szSayPrefix)
        return 
PLUGIN_HANDLED
    
}
    new 
szBuffer[151], iGetMoneyiMenu
    iGetMoney 
cs_get_user_money(iID)

    
formatex(szBuffercharsmax(szBuffer), "\y[\rTEST\y] \wTienda de Armas Especiales \dA: \r%d\d"jctf_get_adrenaline(iID))
    
iMenu menu_create(szBuffer"h_ShopMenu")

    for(new 
0sizeof(g_szShopItems); i++)
    {
        if(!( 
get_user_flags(iID) & g_szShopItems[i][Item_AdminFlag]))
        {
            
formatex(szBuffercharsmax(szBuffer), "\d%s $%i + (A: %i) \y[\rSolo ADMIN\y]"g_szShopItems[i][Item_Name], g_szShopItems[i][Item_Money], g_szShopItems[i][Item_Adrenaline])
        }
        else if(
iGetMoney g_szShopItems[i][Item_Money] || jctf_get_adrenaline(iID) < g_szShopItems[i][Item_Adrenaline])
        {
            
formatex(szBuffercharsmax(szBuffer), "\d%s \d$\r%i \d+ \y(\dA: \r%i\y)"g_szShopItems[i][Item_Name], g_szShopItems[i][Item_Money], g_szShopItems[i][Item_Adrenaline])
        }
        else
        {
            
formatex(szBuffercharsmax(szBuffer), "\w%s \y$%i \w+ \r(\wA: \y%i\r)"g_szShopItems[i][Item_Name], g_szShopItems[i][Item_Money], g_szShopItems[i][Item_Adrenaline])
        }
        
menu_additem(iMenuszBuffer__g_iShopCallBack)
    }
    
menu_setprop(iMenuMPROP_NEXTNAME"Siguiente")
    
menu_setprop(iMenuMPROP_BACKNAME"Atras")
    
menu_setprop(iMenuMPROP_EXITNAME"Cerrar")
    
menu_display(iIDiMenu0)
    return 
PLUGIN_HANDLED
}

public 
c_ShopMenu(const iID, const iMenu, const iItem)
{
    new 
iGetMoney
    iGetMoney 
cs_get_user_money(iID)

    if(
iGetMoney g_szShopItems[iItem][Item_Money]
        || 
jctf_get_adrenaline(iID) < g_szShopItems[iItem][Item_Adrenaline]
        || !( 
get_user_flags(iID) & g_szShopItems[iItem][Item_AdminFlag]))
        return 
ITEM_DISABLED

    
return ITEM_ENABLED
}

public 
h_ShopMenu(const iID, const iMenu, const iItem)
{
    if(
iItem == MENU_EXIT)
    {
        
menu_destroy(iMenu)
        return 
PLUGIN_HANDLED
    
}
    static 
iGetMoney
    iGetMoney 
cs_get_user_money(iID)
    
menu_destroy(iMenu)
        
    if(!
GetPlayerBit(g_iAliveiID))
    {
        return 
PLUGIN_HANDLED
    
}

    if(
jctf_get_adrenaline(iID) < g_szShopItems[iItem][Item_Adrenaline])
    {
        return 
PLUGIN_HANDLED
    
}

    switch(
iItem)
    {
        
//case ITEM_BALROGII: Tienda_Balrog11( iID );
        //case ITEM_CARTBLUE: Tienda_cart_blue( iID );
        //case ITEM_PLASMAGUN: Tienda_plasma( iID );
        //case ITEM_THANATHOS7: Tienda_thanatos( iID );
        //case ITEM_BALROGIII: Tienda_balrog3( iID );
        //case ITEM_GATLING: Tienda_gatling( iID );
        //case ITEM_GOLDENAK: Tienda_golden( iID );
        //case ITEM_ROCKGUITAR: Tienda_Guitar( iID );
        //case ITEM_THUNDERBOLT: Tienda_thunderbolt( iID );
        //case ITEM_COILGUN: Tienda_CoilGun( iID );
        //case ITEM_SQUEAKGRENADE: Tienda_CSqueak( iID );
    
}
    
cs_set_user_money(iIDiGetMoney g_szShopItems[iItem][Item_Money], true)
    
jctf_add_adrenaline(iID, -g_szShopItems[iItem][Item_Adrenaline])

    
client_print_color(iIDiID"%s Compraste el item^3 %s"g_szSayPrefixg_szShopItems[iItem][Item_Name])

    
client_cmd(iID"spk ^"%s^""g_szSelectItemSound)
    return 
PLUGIN_HANDLED

Aprendiendo scripting Excitedeyes || Tratare ayudar en lo que pueda Trolleyes || PD: Soy pobre Cutecry
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)