MENU
From SphereWiki
Revision as of 23:19, 9 June 2009 by MrSugarCube (talk | contribs) (Created page with '__FORCETOC__ Menus are a simple way of displaying a selection dialog to clients. Menus can be shown to players in one of two styles: * Text-based * Item-based ==Text-Based Menu...')
Menus are a simple way of displaying a selection dialog to clients. Menus can be shown to players in one of two styles:
- Text-based
- Item-based
Contents
Text-Based Menu
The syntax for defining a text-based menu is as follows:
[MENU defname]
title
ON=0 text
script
ON=0 text
script
Name | Description |
defname | The menu's defname. |
title | The title of the menu. Properties and references of the object the menu was called on can be accessed. |
text | The text to display for the option. Properties and references of the object the menu was called on can be accessed. |
script | The script to run when the option is pressed. |
Item-Based Menu
The syntax for an item-based menu is as follows:
[MENU defname]
title
ON=baseid text
script
ON=baseid @hue, text
script
Name | Description |
defname | The menu's defname. |
title | The title of the menu. Properties and references of the object the menu was called on can be accessed. |
baseid | The item BASEID to display for the button. |
hue | If the @hue syntax is used, the item will be displayed in the specified colour. |
text | The text to display for the option. Properties of the ITEMDEF that baseid refers to can be accessed. |
script | The script to run when the button is pressed. |
Examples
// // Displays a menu asking if the player wants more gold, and creates it // if they select Yes. // [MENU m_goldmenu] You currently have <SRC.BANKBALANCE>gp in your account. Would you like some more gold? ON=0 Yes SERV.NEWITEM i_gold, 5000 SRC.BOUNCE <NEW.UID> RETURN ON=0 No SRC.SYSMESSAGE Ok then! RETURN
// // Displays a menu asking the player which item they would like. // [MENU m_itemmenu] Which item would you like? ON=i_sword_viking <NAME> SERV.NEWITEM i_sword_viking SRC.BOUNCE <NEW.UID> RETURN ON=i_gold 5000 <NAME> SERV.NEWITEM i_gold, 5000 SRC.BOUNCE <NEW.UID> RETURN ON=i_backpack @020, a red backpack SERV.NEWITEM i_backpack NEW.COLOR = 020 SRC.BOUNCE <NEW.UID> RETURN ON=0 Nothing SRC.SYSMESSAGE You get nothing! RETURN