Difference between revisions of "Category:MenuMate"
imported>Speedo m (→Variables) |
imported>Shademe (Updated to reflect recent developments) |
||
(5 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{OBSE Plugin | {{OBSE Plugin | ||
|Version = Beta | |Version = Beta 3 | ||
|InternalVer = | |InternalVer = 3 | ||
|Name = MenuMate | |Name = MenuMate | ||
|Author = [http://www.bethsoft.com/bgsforums/index.php?showuser=233615 Speedo] | |Author = [http://www.bethsoft.com/bgsforums/index.php?showuser=233615 Speedo] | ||
Line 9: | Line 9: | ||
*#Browse to the folder Oblivion\Data\obse\plugins | *#Browse to the folder Oblivion\Data\obse\plugins | ||
*#Extract the contents of the downloaded zip into that folder | *#Extract the contents of the downloaded zip into that folder | ||
|Download = | |Download = Not Available | ||
|Source = 0 | |Source = 0 | ||
|Discussions = [http://www.bethsoft.com/bgsforums/index.php?showtopic=920401 <nowiki>[BETA]</nowiki> MenuMate] | |Discussions = [http://www.bethsoft.com/bgsforums/index.php?showtopic=920401 <nowiki>[BETA]</nowiki> MenuMate] | ||
Line 23: | Line 23: | ||
For general information about XML, see [http://en.wikipedia.org/wiki/Xml Wikipedia] | For general information about XML, see [http://en.wikipedia.org/wiki/Xml Wikipedia] | ||
Each menu created by MenuMate consists of various elements, all of which are defined within the XML file | Each menu created by MenuMate consists of various elements, all of which are defined within the XML file. | ||
===Elements=== | ===Elements=== | ||
The elements are: | The elements are: | ||
*[[Menu_(MenuMate)|Menu]] - An element which defines all of the dialogs contained within your menu. | *[[Menu_(MenuMate)|Menu]] - An element which defines all of the dialogs contained within your menu. Each file may contain only one menu. | ||
*[[Dialog_(MenuMate)|Dialog]] - A dialog is a single screen which is displayed to the player, comperable to a [[MessageBox]]. There is no limit on the number of dialogs a menu may contain. | *[[Dialog_(MenuMate)|Dialog]] - A dialog is a single screen which is displayed to the player, comperable to a [[MessageBox]]. There is no limit on the number of dialogs a menu may contain. | ||
*[[Button_(MenuMate)|Button]] - Defines a single button within a dialog. Each dialog must contain at least one button, and may contain a maximum of ten buttons. | *[[Button_(MenuMate)|Button]] - Defines a single button within a dialog. Each dialog must contain at least one button, and may contain a maximum of ten buttons. | ||
===Variables=== | ===Variables=== | ||
Several parts of MenuMate make use of variables. When using variables with MenuMate, you may do one of two things: | |||
*'''Local Variable''' - a variable which is located in the same script that calls [[mmLoadMenu]]. Simply use the name of the variable. | |||
*'''Remote Variable''' - a variable located on a different object. For these variables, use the ''ref.variablename'' syntax, however they work slightly different than in normal scripting. In order for MenuMate to read the variable, the ''ref'' must be the name of a local ref variable set to the object (a quest or persistent reference) which actually contains the desired variable. For example, to have MenuMate access a variable named "debugstatus" on a quest named "DebugInfo", the script which loads the menu would go something like: | |||
ref debugquestref | |||
... | |||
set debugquestref to DebugInfo | |||
mmLoadMenu "mymenu.xml" | |||
:Meanwhile, the XML for a togglebutton in mymenu.xml which accessed this variable would be defined as: | |||
<togglebutton targetvar="debugquestref.debugstatus"> | |||
... | |||
====Note==== | ====Note==== | ||
Line 38: | Line 50: | ||
==Miscellaneous== | ==Miscellaneous== | ||
*Magic effect scripts should generally be avoided for displaying MenuMate menus. | *Magic effect scripts should generally be avoided for displaying MenuMate menus. If you do use them, there are several limitations on your menus: | ||
**You '''may not''' use any local variables in the menu - doing so may cause crashes. Remote variables will work fine. | |||
**[[mmGetStatus]] may not return reliable information. | |||
**[[mmUpdate]] may not work reliably. | |||
*Be sure that you use [[mmGetStatus]] to check that your menu has completed successfully before using settings or information from it. | *Be sure that you use [[mmGetStatus]] to check that your menu has completed successfully before using settings or information from it. | ||
*All XML files must be located under the path " | *All XML files must be located under the path "Oblivion\DataMenuMate\", though you may specify additional sub-folders within that directory. | ||
*MenuMate saves '''no''' additional data to the hard drive, and uses little memory in game. Your menu is loaded when you request that it be displayed, and is cleared from memory when it exits. | *MenuMate saves '''no''' additional data to the hard drive, and uses little memory in game. Your menu is loaded when you request that it be displayed, and is cleared from memory when it exits. |
Latest revision as of 17:17, 26 September 2009
MenuMate | |
---|---|
Author(s) | |
Current Version | Beta 3 (GetPluginVersion returns 3) |
Description |
MenuMate significantly simplifies the create of complex in-game menus. It completely eliminates the need for complex scripts to display and process menus, instead allowing you to define your menu in an XML file and display it in game with a single command. |
Installation |
|
Download |
Not Available |
Source Code |
Not Available |
Discussions | |
OBSE Name | "MenuMate"
(for use with IsPluginInstalled/GetPluginVersion) |
Tutorial[edit | edit source]
General Information[edit | edit source]
For general information about XML, see Wikipedia
Each menu created by MenuMate consists of various elements, all of which are defined within the XML file.
Elements[edit | edit source]
The elements are:
- Menu - An element which defines all of the dialogs contained within your menu. Each file may contain only one menu.
- Dialog - A dialog is a single screen which is displayed to the player, comperable to a MessageBox. There is no limit on the number of dialogs a menu may contain.
- Button - Defines a single button within a dialog. Each dialog must contain at least one button, and may contain a maximum of ten buttons.
Variables[edit | edit source]
Several parts of MenuMate make use of variables. When using variables with MenuMate, you may do one of two things:
- Local Variable - a variable which is located in the same script that calls mmLoadMenu. Simply use the name of the variable.
- Remote Variable - a variable located on a different object. For these variables, use the ref.variablename syntax, however they work slightly different than in normal scripting. In order for MenuMate to read the variable, the ref must be the name of a local ref variable set to the object (a quest or persistent reference) which actually contains the desired variable. For example, to have MenuMate access a variable named "debugstatus" on a quest named "DebugInfo", the script which loads the menu would go something like:
ref debugquestref ... set debugquestref to DebugInfo mmLoadMenu "mymenu.xml"
- Meanwhile, the XML for a togglebutton in mymenu.xml which accessed this variable would be defined as:
<togglebutton targetvar="debugquestref.debugstatus"> ...
Note[edit | edit source]
When MenuMate loads variables, it does no checking of the types of the variables. It is 100% your responsibility to be sure that the correct variable types are used in the right place.
Miscellaneous[edit | edit source]
- Magic effect scripts should generally be avoided for displaying MenuMate menus. If you do use them, there are several limitations on your menus:
- You may not use any local variables in the menu - doing so may cause crashes. Remote variables will work fine.
- mmGetStatus may not return reliable information.
- mmUpdate may not work reliably.
- Be sure that you use mmGetStatus to check that your menu has completed successfully before using settings or information from it.
- All XML files must be located under the path "Oblivion\DataMenuMate\", though you may specify additional sub-folders within that directory.
- MenuMate saves no additional data to the hard drive, and uses little memory in game. Your menu is loaded when you request that it be displayed, and is cleared from memory when it exits.
Pages in category "MenuMate"
The following 7 pages are in this category, out of 7 total.