Raised This Month: $ Target: $400
 0% 

[ES]Ayuda con menu de compra


  
 
 
Thread Tools Display Modes
Author Message
Anti
Senior Member
Join Date: Jul 2012
Location: sky
Old 10-03-2012 , 21:55   [ES]Ayuda con menu de compra
#1

Hola, como dice el titulo necesito ayuda con un menu de compra que cree, me compila perfecto con tres warnings:

Warning: Loose indentation on line 115
Warning: Loose indentation on line 196
Warning: Loose indentation on line 273

Lo hice pensando mas que nada para el HNS Mod. Los problemas son:

Al momento de elegir algo para comprar no me lo compra y me pone el "else"(el mensage que puse para que mande).

Se me mezclan los menus. Al momento de poner el submenu de vida me pone el de armas, y lo mismo en el caso de granadas. T_T

Despues hay varios buggs que los voy a ir arreglando con el tiempo.

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <engine>

#define PLUGIN "MenuHNS"
#define VERSION "1.0"
#define AUTHOR "Anti"



public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd"nightvision" "showMenu" );
    
}


public 
showMenu(id)
{
    new 
menu menu_create"\yMenuBuy By Anti""menuhandler")
    
menu_additem(menu"\wArmas""1"0);
    
menu_additem(menu"\wVida""2"0);
    
menu_additem(menu"\wGranadas""3"0);
    
menu_additem(menu"\wRespawn \r- 16000""4"0);
    
    
menu_setprop(menuMPROP_EXITNAME"Salir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
menuhandler(iditemmenu)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    
    new 
key str_to_num(data);
    
    
    switch(
key)
    {
        case 
1:
        {
            
Armas(id);
        }
        case 
2:
        {
            
Vida(id);
        }
        case 
3:
        {
            
Granadas(id);
        }
        case 
4:
        {
            new 
money cs_get_user_money(id);
            
            if(
money == 16000)
            {
                
cs_set_user_money(idmoney 16000)
                
ExecuteHamBHam_CS_RoundRespawnid);
            }
            else
            {
                
client_print(idprint_center"Te falta dinero para el respawn :P");
            }
        }
    }
    
menu_destroy(menu);
    return 
PLUGIN_HANDLED;    
}
Armas(id)
{
new 
menu menu_create("\yMenu de Armas""Armashand")
menu_additem(menu"\wDeagle \r- 10000""1"0);
menu_additem(menu"\wScout \r- 12500""2"0);
menu_additem(menu"\wAwp \r- 15000""3"0);


menu_setprop(menuMPROP_EXITNAME"Salir");
menu_setprop(menuMPROP_EXITMEXIT_ALL);
menu_display(idmenu0);

}

public 
Armashand(iditemmenu)
{
if(
item == MENU_EXIT)
{
    
menu_destroy(menu);
    
    if(
is_user_connected(id) )
        
showMenu(id);    
        
        new 
data[6], iName[64];
        new 
accesscallback;
        
menu_item_getinfo(menuitemaccessdata5iName63callback);
        
        new 
key str_to_num(data);
        
        
        switch(
key)    
        {
            case 
1:
            {
                new 
money cs_get_user_money(id);
                
                if(
money >= 100 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 100)
                    
give_item(id"weapon_deagle");
                    
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_deagle"id), 1);
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
2:
            {
                new 
money cs_get_user_money(id);
                if( 
money >= 12500 && is_user_alive(id))
                {            
                    
cs_set_user_money(idmoney 12500)
                    
give_item(id"weapon_scout");
                    
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_scout"id), 1);
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
3:
            {
                new 
money cs_get_user_money(id);
                if( 
money >= 15000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 15000)
                    
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_awp"id), 1);
                    
give_item(id"weapon_awp");
                }
                
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            
        }
    }
}

Vida(id)
{
new 
menu menu_create("\yMenu de Vida""vidahand")
menu_additem(menu"\wVida 100 \r- 5000""1"0);
menu_additem(menu"\wVida 125 \r- 6500""2"0);
menu_additem(menu"\wVida 150 \r- 8000""3"0);

menu_setprop(menuMPROP_EXITNAME"Salir");
menu_setprop(menuMPROP_EXITMEXIT_ALL);
menu_display(idmenu0);
}


public 
vidahand(iditemmenu)
{
if(
item == MENU_EXIT)
{
    
menu_destroy(menu);
    
    if(
is_user_connected(id) )
        
showMenu(id);
        
        
        new 
data[6], iName[64];
        new 
accesscallback;
        
menu_item_getinfo(menuitemaccessdata5iName63callback);
        
        new 
key str_to_num(data);
        
        
        switch(
key)
        {
            case 
1:
            {
                new 
money cs_get_user_money(id);
                if(
money >= 5000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 5000)
                    
set_user_health(id100);
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
2:
            {
                new 
money cs_get_user_money(id);
                if(
money >= 6500 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 6500)
                    
set_user_health(id125);
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
3:
            {
                new 
money cs_get_user_money(id);
                
                if(
money >= 8000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 8000)
                    
set_user_health(id150);
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
        }
        
    }
}

Granadas(id)
{
    
new 
menu menu_create("\yMenu de Granadas""granadashand")
menu_additem(menu"\wFlash \r- 4000""1"0);
menu_additem(menu"\wHe \r- 5000""2"0);
menu_additem(menu"\wFrost \r- 6000""3"0);

menu_setprop(menuMPROP_EXITNAME"Salir");
menu_setprop(menuMPROP_EXITMEXIT_ALL);
menu_display(idmenu0);
}

public 
granadashand(iditemmenu)
{
if(
item == MENU_EXIT)
{
    
menu_destroy(menu);
    
    if(
is_user_connected(id) )
        
showMenu(id);
        
        
        new 
data[6], iName[64];
        new 
accesscallback;
        
menu_item_getinfo(menuitemaccessdata5iName63callback);
        
        new 
key str_to_num(data);
        
        switch(
key)
        {
            case 
1:
            {
                new 
money cs_get_user_money(id);
                if(
money >= 4000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 4000)
                    
give_item(id"weapon_flashbang");
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
2:
            {
                new 
money cs_get_user_money(id);
                if(
money >= 5000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 5000)
                    
give_item(id"weapon_hegrenade");
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
            case 
3:
            {
                new 
money cs_get_user_money(id);
                
                if(
money >= 6000 && is_user_alive(id))
                {
                    
cs_set_user_money(idmoney 6000)
                    
give_item(id"weapon_smokegrenade");
                }
                else
                {
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
                }
            }
        }
    }

PD: Ya se que es muy poco optimizado, pero es mi primer plugin y salio lo que salio. Soy medio nuevo en esto y estoy viendo de aprender de esta pag.

Muchas Gracias.
Anti is offline
Send a message via Skype™ to Anti
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 10-03-2012 , 22:22   Re: [ES]Ayuda con menu de compra
#2

nunca declaras el public de armas ni granadas
Armas(id)
---->
public Armas(id)
lo mismo el de granadas
loose identation es problema de tabulacion
EDIT: nunca devuelves valores al hacer el switch
return PLUGIN_HANDLED;
aca te doy un ejemplo de menu nuevo:
PHP Code:
public Menu_Armas_Normales(id// public
{
    new 
menu menu_create("\yArmas Personalizadas""Menu_Armas_Normales_Cases")
    
    
menu_additem(menu"Rifle Aire Comprimido""0"0)
    
menu_additem(menu"Sub-Metralleta AG-4""1"0)
    
menu_additem(menu"\dEscopeta Recortada""2"0)
    
menu_additem(menu"\dSub-Metralleta UZI""3"0)
    
    
menu_setprop(menuMPROP_BACKNAME"\yAtras");
    
menu_setprop(menuMPROP_NEXTNAME"\ySiguiente");
    
menu_setprop(menuMPROP_EXITNAME"\ySalir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED// Devolvi valor
}

public 
Menu_Armas_Normales_Cases(idmenuitem// aca los switchs de tu menu
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    new 
key str_to_num(data);
    
    switch(
key)
    {
        case 
0:
        {
            
fm_strip_user_weapons(id)
            
fm_give_item(id"weapon_scout")
            
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[CSW_SCOUT], AMMOTYPE[CSW_SCOUT], MAXBPAMMO[CSW_SCOUT])
        }
        case 
1:
        {
            
fm_strip_user_weapons(id)
            
fm_give_item(id"weapon_tmp")
            
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[CSW_TMP], AMMOTYPE[CSW_TMP], MAXBPAMMO[CSW_TMP])
        }
        case 
2:
        {
            
fm_strip_user_weapons(id)
            
fm_give_item(id"weapon_m3")
            
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[CSW_M3], AMMOTYPE[CSW_M3], MAXBPAMMO[CSW_M3])
        }
        case 
3:
        {
            
fm_strip_user_weapons(id)
            
fm_give_item(id"wweapon_mac10")
            
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[CSW_MAC10], AMMOTYPE[CSW_MAC10], MAXBPAMMO[CSW_MAC10])
        }
    }
    
    
Menu_Armas_Secundarias(id// Aqui si quieres llamar a otro menu despues de que elijas armas
    
menu_destroy(menu);
    return 
PLUGIN_HANDLED;

EDIT 2:
PHP Code:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <engine>

public plugin_init()
{
    
register_plugin("MenuHNS""1.0""Anti")
    
register_clcmd"nightvision" "showMenu" );
}

public 
showMenu(id)
{
    new 
menu menu_create"\yMenuBuy By Anti""menuhandler")
    
menu_additem(menu"\wArmas""1"0);
    
menu_additem(menu"\wVida""2"0);
    
menu_additem(menu"\wGranadas""3"0);
    
menu_additem(menu"\wRespawn \r- 16000""4"0);
    
    
menu_setprop(menuMPROP_EXITNAME"Salir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
menuhandler(iditemmenu)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    new 
money cs_get_user_money(id);
    new 
key str_to_num(data);
    
    
    switch(
key)
    {
        case 
1:
        {
            
Armas(id);
        }
        case 
2:
        {
            
Vida(id);
        }
        case 
3:
        {
            
Granadas(id);
        }
        case 
4:
        {
            if(
money == 16000)
            {
                
cs_set_user_money(idmoney 16000)
                
ExecuteHamBHam_CS_RoundRespawnid);
            }
            else
            {
                
client_print(idprint_center"Te falta dinero para el respawn :P");
            }
        }
    }
    
menu_destroy(menu);
    return 
PLUGIN_HANDLED;    
}

public 
Armas(id)
{
    new 
menu menu_create("\yMenu de Armas""Armashand")
    
menu_additem(menu"\wDeagle \r- 10000""1"0);
    
menu_additem(menu"\wScout \r- 12500""2"0);
    
menu_additem(menu"\wAwp \r- 15000""3"0);

    
menu_setprop(menuMPROP_EXITNAME"Salir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
Armashand(iditemmenu)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    if(
is_user_connected(id))
        
showMenu(id);    
        
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    new 
money cs_get_user_money(id);
    new 
key str_to_num(data);
    
    switch(
key)    
    {
        case 
1:
        {    
            if(
money >= 100 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 100)
                
give_item(id"weapon_deagle");
                
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_deagle"id), 1);
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
2:
        {
            if( 
money >= 12500 && is_user_alive(id))
            {            
                
cs_set_user_money(idmoney 12500)
                
give_item(id"weapon_scout");
                
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_scout"id), 1);
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
3:
        {
            if( 
money >= 15000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 15000)
                
cs_set_weapon_ammo(find_ent_by_owner(id"weapon_awp"id), 1);
                
give_item(id"weapon_awp");
            }
                
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
    }
    return 
PLUGIN_HANDLED;
}

public 
Vida(id)
{
    new 
menu menu_create("\yMenu de Vida""vidahand")
    
    
menu_additem(menu"\wVida 100 \r- 5000""1"0);
    
menu_additem(menu"\wVida 125 \r- 6500""2"0);
    
menu_additem(menu"\wVida 150 \r- 8000""3"0);
    
    
menu_setprop(menuMPROP_EXITNAME"Salir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
vidahand(iditemmenu)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    if(
is_user_connected(id))
        
showMenu(id);
        
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    new 
money cs_get_user_money(id);
    new 
key str_to_num(data);
        
    switch(
key)
    {
        case 
1:
        {
                
            if(
money >= 5000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 5000)
                
set_user_health(id100);
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
2:
        {
            if(
money >= 6500 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 6500)
                
set_user_health(id125);
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
3:
        {
            if(
money >= 8000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 8000)
                
set_user_health(id150);
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
    }
    return 
PLUGIN_HANDLED;
}

public 
Granadas(id)
{
    new 
menu menu_create("\yMenu de Granadas""granadashand")
    
    
menu_additem(menu"\wFlash \r- 4000""1"0);
    
menu_additem(menu"\wHe \r- 5000""2"0);
    
menu_additem(menu"\wFrost \r- 6000""3"0);
    
    
menu_setprop(menuMPROP_EXITNAME"Salir");
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}

public 
granadashand(iditemmenu)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    
    if(
is_user_connected(id))
        
showMenu(id);
        
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata5iName63callback);
    new 
money cs_get_user_money(id);
    new 
key str_to_num(data);
        
    switch(
key)
    {
        case 
1:
        {
            if(
money >= 4000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 4000)
                
give_item(id"weapon_flashbang");
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
2:
        {
            if(
money >= 5000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 5000)
                
give_item(id"weapon_hegrenade");
            }
            else
                
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
        case 
3:
        {
            if(
money >= 6000 && is_user_alive(id))
            {
                
cs_set_user_money(idmoney 6000)
                
give_item(id"weapon_smokegrenade");
            }
            else
                    
client_print(idprint_center"Tenes que estar vivo, o te falta dinero.");
        }
    }
    return 
PLUGIN_HANDLED;


Last edited by GalaxyA; 10-03-2012 at 22:47.
GalaxyA is offline
Send a message via MSN to GalaxyA
Anti
Senior Member
Join Date: Jul 2012
Location: sky
Old 10-04-2012 , 12:16   Re: [ES]Ayuda con menu de compra
#3

Me compila bien pero se siguen mezclando los menu, es decir, pongo por ejemplo la opcion Vida y sale el menu de Granadas, y al poner para comprar granadas no me sale nada, ni el client print ni la granada.

Gracias por tu ayuda GalaxyA.
Anti is offline
Send a message via Skype™ to Anti
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 10-04-2012 , 12:31   Re: [ES]Ayuda con menu de compra
#4

prueba sacando esto
if(is_user_connected(id))
showMenu(id); de tus menus
GalaxyA is offline
Send a message via MSN to GalaxyA
Anti
Senior Member
Join Date: Jul 2012
Location: sky
Old 10-04-2012 , 12:44   Re: [ES]Ayuda con menu de compra
#5

Sigue igual :S

PD: gracias por responder.
Anti is offline
Send a message via Skype™ to Anti
Neeeeeeeeeel.-
Some Guy Yellin'
Join Date: Jul 2010
Location: Argentina
Old 10-04-2012 , 13:00   Re: [ES]Ayuda con menu de compra
#6

Quote:
Originally Posted by GalaxyA View Post
nunca declaras el public de armas ni granadas
Armas(id)
---->
public Armas(id)
lo mismo el de granadas
loose identation es problema de tabulacion
EDIT: nunca devuelves valores al hacer el switch
return PLUGIN_HANDLED;
Si no lo declara, ¿Por qué compila el código?
¿Por qué hay que retornar un valor si o si?

Y los warnings son porque tenés mal organizada la indentación. No afectan al funcionamiento del plugin.
__________________
Neeeeeeeeeel.- is offline
Send a message via Skype™ to Neeeeeeeeeel.-
Manu127
Veteran Member
Join Date: Jul 2010
Location: Argentina
Old 10-04-2012 , 14:27   Re: [ES]Ayuda con menu de compra
#7

Quote:
Originally Posted by Neeeeeeeeeel.- View Post
Si no lo declara, ¿Por qué compila el código?
¿Por qué hay que retornar un valor si o si?

Y los warnings son porque tenés mal organizada la indentación. No afectan al funcionamiento del plugin.
Quote:
nunca declaras el public de armas ni granadas
Armas(id)
---->
public Armas(id)
lo mismo el de granadas
loose identation es problema de tabulacion
EDIT: nunca devuelves valores al hacer el switch
return PLUGIN_HANDLED;
aca te doy un ejemplo de menu nuevo:
Perdoname ne(*10)l pero ahi no veo que diga que hay que retonar si o si un valor... Y tampoco dijo que los loose identation afectaran al funcionamiento del plugin... nose, yo veo eso...

GalaxyA, no hace falta hacerlo public. Hay funciones publicas y privadas.
__________________
Manu127 is offline
Send a message via MSN to Manu127 Send a message via Skype™ to Manu127
Anti
Senior Member
Join Date: Jul 2012
Location: sky
Old 10-04-2012 , 19:36   Re: [ES]Ayuda con menu de compra
#8

entonces porque se me buggea?
Anti is offline
Send a message via Skype™ to Anti
rak
Veteran Member
Join Date: Oct 2011
Location: banned country
Old 10-04-2012 , 19:43   Re: [ES]Ayuda con menu de compra
#9

Quote:
Originally Posted by GalaxyA View Post
prueba sacando esto
if(is_user_connected(id))
showMenu(id); de tus menus
me das risa..

probalo
PHP Code:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>

#define PLUGIN "Menu"
#define VERSION "1.0"
#define AUTHOR "[R]ak"

enum _:MenuType {
    
MENU_WEAPON,
    
MENU_HEALT,
    
MENU_GRANADES,
    
BUY_RESPAWN
}

enum _:CustomMenuData {
    
PRICE,
    
WPNAME[32],
    
AMOUNT
}

new 
g_MainMenug_CustomMenu[MenuType-1]

new const 
g_BuyCustomItems[MenuType-1][3][CustomMenuData] = {
    {
        {
            
10000,
            
"weapon_deagle",
            
1
        
},
        {
            
12500,
            
"weapon_scout",
            
1
        
},
        {
            
15000,
            
"weapon_awp",
            
1
        
}
    },
    {
        {
            
5000,
            
"",
            
100
        
},
        {
            
6500,
            
"",
            
125
        
},
        {
            
8000,
            
"",
            
150
        
}
    },
    {
        {
            
4000,
            
"weapon_flashbang",
            
0
        
},
        {
            
5000,
            
"weapon_hegranade",
            
0
        
},
        {
            
6000,
            
"weapon_smokegrenade",
            
0
        
}
    }
}

public 
plugin_init() {
    
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd"nightvision" "cmdMainMenu" );
    
}

public 
plugin_cfg() {
    
    
// Main Menus
    
    
g_MainMenu menu_create"MenuBuy by [R]ak Acme Inc.-""MainMenu_handler")
    
    
menu_additem(g_MainMenu"Armas")
    
    
menu_additem(g_MainMenu"Vida")
    
    
menu_additem(g_MainMenu"Granadas")
    
    
menu_additem(g_MainMenu"Respawn \r- 16000")
    
    
menu_setprop(g_MainMenuMPROP_EXITNAME"Salir")
    
    
menu_setprop(g_MainMenuMPROP_EXITMEXIT_ALL)
    
    
// Weapon Menu
    
    
g_CustomMenu[MENU_WEAPON] = menu_create("Menu de Armas""BuyMenu_handler")
    
    
menu_additem(g_CustomMenu[MENU_WEAPON], "Deagle \r- 10000""0")
    
    
menu_additem(g_CustomMenu[MENU_WEAPON], "Scout \r- 12500""0")
    
    
menu_additem(g_CustomMenu[MENU_WEAPON], "Awp \r- 15000""0")
    
    
menu_setprop(g_CustomMenu[MENU_WEAPON], MPROP_EXITNAME"Salir")
    
    
menu_setprop(g_CustomMenu[MENU_WEAPON], MPROP_EXITMEXIT_ALL)
    
    
// Life Menu
    
    
g_CustomMenu[MENU_HEALT] = menu_create("Menu de Vida""BuyMenu_handler")
    
    
menu_additem(g_CustomMenu[MENU_HEALT], "Vida 100 \r- 5000""1")
    
    
menu_additem(g_CustomMenu[MENU_HEALT], "Vida 125 \r- 6500""1")
    
    
menu_additem(g_CustomMenu[MENU_HEALT], "Vida 150 \r- 8000""1")
    
    
menu_setprop(g_CustomMenu[MENU_HEALT], MPROP_EXITNAME"Salir")
    
    
menu_setprop(g_CustomMenu[MENU_HEALT], MPROP_EXITMEXIT_ALL)
    
    
// Granades Menu
    
    
g_CustomMenu[MENU_GRANADES] = menu_create("\yMenu de Granadas""BuyMenu_handler")
    
    
menu_additem(g_CustomMenu[MENU_GRANADES], "Flash \r- 4000""2")
    
    
menu_additem(g_CustomMenu[MENU_GRANADES], "He \r- 5000""2")
    
    
menu_additem(g_CustomMenu[MENU_GRANADES], "Frost \r- 6000""2")
    
    
menu_setprop(g_CustomMenu[MENU_GRANADES], MPROP_EXITNAME"Salir")
    
    
menu_setprop(g_CustomMenu[MENU_GRANADES], MPROP_EXITMEXIT_ALL)
    
}


public 
cmdMainMenu(id) {
    
    
menu_display(idg_MainMenu)
    
    return 
PLUGIN_HANDLED
}

public 
MainMenu_handler(idmenuitem) {
    
    if(
item == MENU_EXIT)    
        return
    
    if(
item == BUY_RESPAWN) {
        
        new 
Money cs_get_user_money(id)
            
        if(
Money == 16000) {
            
            
cs_set_user_money(idMoney 16000)
                
            
ExecuteHamB(Ham_CS_RoundRespawnid)
            
        }
        else
            
client_print(idprint_center"Te falta dinero para el respawn :P");
        
    }
    else
        
menu_display(idg_CustomMenu[item])
        
}

public 
BuyMenu_handler(idmenuitem) {
    
    if(
item == MENU_EXIT)    
        return
        
    else if(!
is_user_alive(id)) {
        
        
client_print(idprint_center"Tenes que estar vivo")
        
        return
        
    }        
        
    new 
Item[2], AccessCallbackkey
    
    menu_item_getinfo
(menuitemAccessItemcharsmax(Item), __Callback)
    
    
key Item[0] - 48
    
    
new Money cs_get_user_money(id)
    
    if(
Money >= g_BuyCustomItems[key][item][PRICE]) {
        
        
cs_set_user_money(idMoney g_BuyCustomItems[key][item][PRICE])
        
        if(
g_BuyCustomItems[key][item][WPNAME][0]) {
            
            new 
Ent give_item(idg_BuyCustomItems[key][item][WPNAME])
            
            if(
g_BuyCustomItems[key][item][AMOUNT])
                
cs_set_weapon_ammo(Ent1)
            
        }
        else
            
set_user_health(idg_BuyCustomItems[key][item][AMOUNT])
        
    }
    else
        
client_print(idprint_center"Te falta dinero.")
        

__________________

www.amxmodx-es.com

Steam: Luchokoldo

Last edited by rak; 10-04-2012 at 20:39.
rak is offline
Send a message via MSN to rak Send a message via Skype™ to rak
Anti
Senior Member
Join Date: Jul 2012
Location: sky
Old 10-04-2012 , 19:53   Re: [ES]Ayuda con menu de compra
#10

No se abre directamente. :S

Lo que yo quiero no es tener el plugin porque el menu shop se lo encuentra en cualquier lado, pero queria hacerlo yo, me gustaria que me expliquen porqu no me anda asi mejorar.
Gracias igualmente.
Anti is offline
Send a message via Skype™ to Anti
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 07:39.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode