Raised This Month: $ Target: $400
 0% 

Menu System


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
RuRuRu612754
Senior Member
Join Date: Sep 2011
Old 02-04-2012 , 08:43   Menu System
Reply With Quote #1

We review how to create a menu.
However, fail to compile.
Is there a mistake where?

PHP Code:
#include <amxmodx>

public plugin_init()
{
    
register_plugin("Choose Menu""1.0.0""AMX Mod X")


    
register_clcmd"choose_menu""create_choose_menu")

    
register_dictionary("choose_menu.txt")
}

public 
create_choose_menu(id)
{
    new 
menu menu_create("%L""CHOOSE_MENU_NAME""show_choose_menu")

    
menu_additem(menu"%L""CHOOSE_MENU_ITEM_1""1"0)
    
menu_additem(menu"%L""CHOOSE_MENU_ITEM_2""2"0)
    
menu_additem(menu"%L""CHOOSE_MENU_ITEM_3""3"0)

    
menu_addblank(menu)

    
menu_addtext(menu"%L""CHOOSE_MENU_TEXT")

    
menu_display(idmenu0)
}

public 
show_choose_menu(idmenuitem)
{
    new 
data[6], szName[64]
    new 
accesscallback

    menu_item_getinfo
(menuitemaccessdata,charsmax(data), szName,charsmax(szName), callback)

    new 
key str_to_num(data)

    switch(
key)
    {
        case 
1:
        {
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_1")
        }
        case 
2:
        {
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_2")
        }
        case 
3:
        {
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_3")
        }
    }
    
menu_destroy(menu)

    return 
PLUGIN_HANDLED

RuRuRu612754 is offline
ConnorMcLeod
Veteran Member
Join Date: Jul 2006
Location: France (95)
Old 02-04-2012 , 08:45   Re: Menu System
Reply With Quote #2

Learn first how to use ML system.
And then, format menu strings in an array and use this array in menu_additem.
__________________
- tired and retired -

- my plugins -
ConnorMcLeod is offline
RuRuRu612754
Senior Member
Join Date: Sep 2011
Old 02-04-2012 , 20:14   Re: Menu System
Reply With Quote #3

@ConnorMcLeod

Thanks!!
omg. need format?
i cannot format
RuRuRu612754 is offline
Zer0Cool
Member
Join Date: Sep 2011
Location: Belgium
Old 02-05-2012 , 05:04   Re: Menu System
Reply With Quote #4

Hello.
This should work
PHP Code:
#include <amxmodx> 
public plugin_init() 

    
register_plugin("Choose Menu""1.0.0""AMX Mod X"

    
register_clcmd"choose_menu""create_choose_menu"
    
register_dictionary("choose_menu.txt"
}
public 
create_choose_menu(id

    new 
szText555 char ];
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_NAME" );
    new 
menu menu_createszText"shop_handler" );
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_1" );
    
menu_additemmenuszText"1"); 
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_2" );
    
menu_additemmenuszText"2");
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_3" );
    
menu_additemmenuszText"3");
    
menu_display(idmenu0
}
public 
show_choose_menu(idmenuitem

    new 
data[6], szName[64
    new 
accesscallback 
    menu_item_getinfo
(menuitemaccessdata,charsmax(data), szName,charsmax(szName), callback
    new 
key str_to_num(data
    switch(
key
    { 
        case 
1
        { 
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_1"
        } 
        case 
2
        { 
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_2"
        } 
        case 
3
        { 
            
client_print(idprint_chat"%L""CHOOSE_MENU_MESSAGE_3"
        } 
    } 
    
menu_destroy(menu
    return 
PLUGIN_HANDLED 

__________________
- Ol' Dirty Bastard - Brooklyn Zoo -

This style, I'm mastered in
Niggas catchin' headaches, what, what? You need Aspirin?
This type of pain, you couldn't even kill with Midol
Fuck around, get sprayed with Lysol
in your face like a can of mace, baby
Is it burnin'? Well, fuck it, now you're learnin'

Zer0Cool is offline
RuRuRu612754
Senior Member
Join Date: Sep 2011
Old 02-05-2012 , 09:22   Re: Menu System
Reply With Quote #5

@Zer0Cool

Hello.
Character has been displayed properly.
This "show_amxx_menu" but will not be executed.
I modified your code a little
Do you have a problem where?

amxx_menu.sma
PHP Code:
#include <amxmodx>

public plugin_init()
{
    
register_plugin("amxx_menu""1.0.0""AMX Mod X")

    
register_clcmd("amxx_menu""create_amxx_menu")

    
register_dictionary("amxx_menu.txt")
}

public 
create_amxx_menu(id)
{
    new 
szText[555 char]

    
formatex(szTextcharsmax(szText), "%L"id"AMXX_MENU_NAME")
    new 
menu menu_create(szText"show_amxx_menu")

    
formatex(szTextcharsmax(szText), "%L"id"AMXX_MENU_ITEM_1")
    
menu_additem(menuszText"1"0)
    
formatex(szTextcharsmax(szText), "%L"id"AMXX_MENU_ITEM_2")
    
menu_additem(menuszText"2"0)
    
formatex(szTextcharsmax(szText), "%L"id"AMXX_MENU_ITEM_3")
    
menu_additem(menuszText"3"0)

    
menu_addblank(menu)

    
formatex(szTextcharsmax(szText), "%L"id"AMXX_MENU_TEXT")
    
menu_addtext(menuszText)

    
menu_display(idmenu0)
}
public 
show_amxx_menu(idmenuitem)
{
    new 
data[6], szName[64]
    new 
accesscallback

    menu_item_getinfo
(menuitemaccessdata,charsmax(data), szName,charsmax(szName), callback)

    new 
key str_to_num(data)

    switch(
key)
    { 
        case 
1:
        { 
            
client_print(idprint_chat"%L""AMXX_MENU_MESSAGE_1")
        }
        case 
2:
        {
            
client_print(idprint_chat"%L""AMXX_MENU_MESSAGE_2")
        }
        case 
3:
        {
            
client_print(idprint_chat"%L""AMXX_MENU_MESSAGE_3")
        }
    }
    
menu_destroy(menu)

    return 
PLUGIN_HANDLED

amxx_menu.txt
PHP Code:
[en]
AMXX_MENU_NAME = \gAMXX Menu :
AMXX_MENU_ITEM_1 = \wAMXX Item 1
AMXX_MENU_ITEM_2 
= \wAMXX Item 2
AMXX_MENU_ITEM_3 
= \wAMXX Item 3
AMXX_MENU_TEXT 
AMXX Menu 1.0.0 by AMX Mod X
AMXX_MENU_MESSAGE_1 
You serect AMXX Item 1
AMXX_MENU_MESSAGE_2 
You serect AMXX Item 2
AMXX_MENU_MESSAGE_3 
You serect AMXX Item 3 
RuRuRu612754 is offline
ConnorMcLeod
Veteran Member
Join Date: Jul 2006
Location: France (95)
Old 02-05-2012 , 10:07   Re: Menu System
Reply With Quote #6

PHP Code:
#include <amxmodx>

public plugin_init() 

    
register_plugin("Choose Menu""1.0.0""AMX Mod X"

    
register_clcmd"choose_menu""create_choose_menu"
    
register_dictionary("amxx_menu.txt"
}

public 
create_choose_menu(id

    new 
szText[128]
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_NAME" )
    new 
menu menu_createszText"choose_menu_handled" )
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_1" )
    
menu_additemmenuszText)
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_2" )
    
menu_additemmenuszText)
    
formatexszTextcharsmaxszText ), "%L"id"CHOOSE_MENU_ITEM_3" )
    
menu_additemmenuszText)
    
menu_display(idmenu
}

public 
choose_menu_handled(idmenuitem
{
    switch(
item
    { 
        case 
0
        { 
            
client_print(idprint_chat"%L"id"CHOOSE_MENU_MESSAGE_1"
        } 
        case 
1
        { 
            
client_print(idprint_chat"%L"id"CHOOSE_MENU_MESSAGE_2"
        } 
        case 
2
        { 
            
client_print(idprint_chat"%L"id"CHOOSE_MENU_MESSAGE_3"
        } 
    } 
    
menu_destroy(menu
    return 
PLUGIN_HANDLED 

__________________
- tired and retired -

- my plugins -

Last edited by ConnorMcLeod; 02-05-2012 at 10:08.
ConnorMcLeod is offline
RuRuRu612754
Senior Member
Join Date: Sep 2011
Old 02-06-2012 , 03:23   Re: Menu System
Reply With Quote #7

@ConnorMcLeod

Thnaks!!
Was operating normally.
Where is the problem?
RuRuRu612754 is offline
ConnorMcLeod
Veteran Member
Join Date: Jul 2006
Location: France (95)
Old 02-06-2012 , 11:36   Re: Menu System
Reply With Quote #8

handlers/callbacks names were not matching.
ML was not used correctly in menu handler.
__________________
- tired and retired -

- my plugins -

Last edited by ConnorMcLeod; 02-06-2012 at 11:37.
ConnorMcLeod is offline
Reply



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 12:35.


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