<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?action=history&amp;feed=atom&amp;title=UI_%28functions%29</id>
	<title>UI (functions) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?action=history&amp;feed=atom&amp;title=UI_%28functions%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;action=history"/>
	<updated>2026-08-01T08:28:50Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=6460&amp;oldid=prev</id>
		<title>Imbion: Replaced content with &quot;{{Hat Note|More functions: Script Reference&#039;&#039;}}  The UI functions control UI elements, such as textboxes. Each UI function is run by using &lt;code&gt;UI:[function]&lt;/code&gt;  == Textbox == {{subpage|UI (functions)/Textbox}} {{:UI (functions)/Textbox/Table}}  === Textbox Settings === {{subpage|UI (functions)/Textbox Settings}} {{:UI (functions)/Textbox Settings/Table}}  == Background == {{subpage|UI (functions)/Background}} {{:UI (functions)/Background/Table}}  == Speaker...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=6460&amp;oldid=prev"/>
		<updated>2026-01-18T03:52:15Z</updated>

		<summary type="html">&lt;p&gt;Replaced content with &amp;quot;{{Hat Note|More functions: &lt;a href=&quot;/Script_Reference&quot; class=&quot;mw-redirect&quot; title=&quot;Script Reference&quot;&gt;Script Reference&lt;/a&gt;&amp;#039;&amp;#039;}}  The UI functions control UI elements, such as textboxes. Each UI function is run by using &amp;lt;code&amp;gt;UI:[function]&amp;lt;/code&amp;gt;  == Textbox == {{subpage|UI (functions)/Textbox}} {{:UI (functions)/Textbox/Table}}  === Textbox Settings === {{subpage|UI (functions)/Textbox Settings}} {{:UI (functions)/Textbox Settings/Table}}  == Background == {{subpage|UI (functions)/Background}} {{:UI (functions)/Background/Table}}  == Speaker...&amp;quot;&lt;/p&gt;
&lt;a href=&quot;https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;amp;diff=6460&amp;amp;oldid=6354&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=6354&amp;oldid=prev</id>
		<title>Imbion at 20:12, 17 January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=6354&amp;oldid=prev"/>
		<updated>2026-01-17T20:12:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:12, 17 January 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Hat Note|More functions: [[Script Reference]]&#039;&#039;}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The UI functions control UI elements, such as textboxes. Each UI function is run by using &amp;lt;code&amp;gt;UI:[function]&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The UI functions control UI elements, such as textboxes. Each UI function is run by using &amp;lt;code&amp;gt;UI:[function]&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=5351&amp;oldid=prev</id>
		<title>Imbion: Some cleanup progress</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=5351&amp;oldid=prev"/>
		<updated>2025-12-08T02:42:00Z</updated>

		<summary type="html">&lt;p&gt;Some cleanup progress&lt;/p&gt;
&lt;a href=&quot;https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;amp;diff=5351&amp;amp;oldid=5332&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=5332&amp;oldid=prev</id>
		<title>Imbion: Created page with &quot;{{Cleanup}} == UI:WaitInput ==   Waits for the player to press a button before continuing.   == UI:WaitShowDialogue ==   Displays a dialogue box with text, waiting until the player completes it. Takes a string as an argument.   === Arguments ===  * &lt;code&gt;text&lt;/code&gt;: The text to display. * &lt;code&gt;callbacks&lt;/code&gt;: The Lua table of callbacks for the textbox to call.  === Example ===  &lt;pre&gt;  UI:WaitShowDialogue(&quot;Hello World!&quot;)  &lt;/pre&gt;  == UI:WaitShowTimedDialogue ==   Displ...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=UI_(functions)&amp;diff=5332&amp;oldid=prev"/>
		<updated>2025-11-26T19:17:28Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Cleanup}} == UI:WaitInput ==   Waits for the player to press a button before continuing.   == UI:WaitShowDialogue ==   Displays a dialogue box with text, waiting until the player completes it. Takes a string as an argument.   === Arguments ===  * &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display. * &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.  === Example ===  &amp;lt;pre&amp;gt;  UI:WaitShowDialogue(&amp;quot;Hello World!&amp;quot;)  &amp;lt;/pre&amp;gt;  == UI:WaitShowTimedDialogue ==   Displ...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Cleanup}}&lt;br /&gt;
== UI:WaitInput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Waits for the player to press a button before continuing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:WaitShowDialogue ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays a dialogue box with text, waiting until the player completes it.&lt;br /&gt;
Takes a string as an argument.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitShowDialogue(&amp;quot;Hello World!&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:WaitShowTimedDialogue ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays a dialogue box with text, waiting until the specified time has expired.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;waitTime&amp;lt;/code&amp;gt;: The time for the textbox to remain on screen. Pass -1 to wait for layer input.&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitShowTimedDialogue(&amp;quot;Hello World!&amp;quot;, 120)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:TextDialogue(System.String,System.Int32,NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the current dialogue text to be shown.  Requires WaitDialog to actually display.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;waitTime&amp;lt;/code&amp;gt;: The time for the textbox to remain on screen. Pass -1 to wait for layer input.&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
== UI:WaitShowVoiceOver ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays a voice over, waiting until the player completes it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;expireTime&amp;lt;/code&amp;gt;: The time for the textbox to remain on screen. Pass -1 to wait for layer input.&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;: Width of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;: Height of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitShowVoiceOver(&amp;quot;Hello World!&amp;quot;, 120)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:TextVoiceOver(System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the current voice-over text to be shown.  Requires WaitDialog to actually display.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;expireTime&amp;lt;/code&amp;gt;: The time for the textbox to remain on screen. Pass -1 to wait for layer input.&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;: Width of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;: Height of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
== UI:TextPopUp(System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Boolean,System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Makes text pop up in the bottom-left corner by default. Displays concurrently with any other process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;expireTime&amp;lt;/code&amp;gt;: The time for the textbox to remain on screen.&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;: Width of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;: Height of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;centerH&amp;lt;/code&amp;gt;: Horizontal centering&lt;br /&gt;
* &amp;lt;code&amp;gt;centerV&amp;lt;/code&amp;gt;: Vertical centering&lt;br /&gt;
&lt;br /&gt;
== UI:WaitShowTitle ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fades in a title text, waiting until the fade-in is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: The time for the text to fade in.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitShowTitle(&amp;quot;Hello World!&amp;quot;, 60)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:TextShowTitle(System.String,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Shows text in the format of a title drop.  Requires WaitDialog to actually display.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt;: The text to display.&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: The time for the text to fade in.&lt;br /&gt;
&lt;br /&gt;
== UI:WaitHideTitle ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fades out the currently displayed title, waiting until the fade-out is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: The time for the text to fade in.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitHideTitle(60)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:TextFadeTitle(System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fades out the text set in a title drop.  Requires WaitDialog to actually fade.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: The time for the text to fade in.&lt;br /&gt;
&lt;br /&gt;
== UI:WaitShowBG ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fades in a chosen background image, with a chosen framerate, at a certain fade time, waiting until the fade-in is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;bg&amp;lt;/code&amp;gt;: The background to show, from the list of BG textures.&lt;br /&gt;
* &amp;lt;code&amp;gt;frameTime&amp;lt;/code&amp;gt;: Framerate of the image animation.&lt;br /&gt;
* &amp;lt;code&amp;gt;fadeInTime&amp;lt;/code&amp;gt;: Time taken to fade in the image.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitShowBG(&amp;quot;TestBG&amp;quot;, 3, 60)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:ShowBG(System.String,System.Int32,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets an image to display.  Requires WaitDialog to actually display.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;bg&amp;lt;/code&amp;gt;: The background to show, from the list of BG textures.&lt;br /&gt;
* &amp;lt;code&amp;gt;frameTime&amp;lt;/code&amp;gt;: Framerate of the image animation.&lt;br /&gt;
* &amp;lt;code&amp;gt;fadeInTime&amp;lt;/code&amp;gt;: Time taken to fade in the image.&lt;br /&gt;
&lt;br /&gt;
== UI:WaitHideBG ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fades out the current background image, waiting until the fade-out is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: Time taken to fade out the image.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitHideBG(60)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:FadeBG(System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Prepares a fade-out of the current image.  Requires WaitDialog to actually display.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;time&amp;lt;/code&amp;gt;: Time taken to fade out the image.&lt;br /&gt;
&lt;br /&gt;
== UI:ResetSpeaker(System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Clears the current speaker, so none is displayed the next time TextDialogue is called.&lt;br /&gt;
This also resets any custom dialogue box positions, portrait positions, and choice positions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;keysound&amp;lt;/code&amp;gt;: If turned on, the text from the dialogue boxes make sounds.  Default is on.&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeaker(System.String,System.Boolean,System.String,System.Int32,System.String,RogueEssence.Data.Gender) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speaker to be displayed during the following calls to the TextDialogue functions.  It resets speaker emotion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;name&amp;lt;/code&amp;gt;: Speaker name.&lt;br /&gt;
* &amp;lt;code&amp;gt;keysound&amp;lt;/code&amp;gt;: Plays sounds when text appears.&lt;br /&gt;
* &amp;lt;code&amp;gt;specie&amp;lt;/code&amp;gt;: Species of the speaker&lt;br /&gt;
* &amp;lt;code&amp;gt;form&amp;lt;/code&amp;gt;: Form of the speaker&lt;br /&gt;
* &amp;lt;code&amp;gt;skin&amp;lt;/code&amp;gt;: Skin of the speaker&lt;br /&gt;
* &amp;lt;code&amp;gt;gender&amp;lt;/code&amp;gt;: Gender of the speaker&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeaker(RogueEssence.Ground.GroundChar,System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speaker to be displayed during the following calls to the TextDialogue functions.  It resets speaker emotion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;chara&amp;lt;/code&amp;gt;: Character to set as speaker. This is a character in a ground map.&lt;br /&gt;
* &amp;lt;code&amp;gt;keysound&amp;lt;/code&amp;gt;: Plays sounds when text appears.&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeaker(RogueEssence.Dungeon.Character,System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speaker to be displayed during the following calls to the TextDialogue functions.  It resets speaker emotion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;chara&amp;lt;/code&amp;gt;: Character to set as speaker. This is a character in a dungeon map.&lt;br /&gt;
* &amp;lt;code&amp;gt;keysound&amp;lt;/code&amp;gt;: Plays sounds when text appears.&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeakerReverse(System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Reverses the speaker orientation to face left instead of right.  This depends on the boolean passed in.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;reverse&amp;lt;/code&amp;gt;: Faces right if false, left if true.&lt;br /&gt;
&lt;br /&gt;
== UI:SetChoiceLoc(System.Int32,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the position of the choices for a question dialog.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position&lt;br /&gt;
&lt;br /&gt;
== UI:ResetChoiceLoc ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the position of the choices for a question dialog back to default.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SetBounds(System.Int32,System.Int32,System.Int32,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the position and size of the dialogue box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;: Width of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;: Height of the box&lt;br /&gt;
&lt;br /&gt;
== UI:SetSe(System.String,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speaker sound effect and speak frames played in the TextDialogue functions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;newSe&amp;lt;/code&amp;gt;: The sound effect of the box&lt;br /&gt;
* &amp;lt;code&amp;gt;speakTime&amp;lt;/code&amp;gt;: The amount of frames to wait between each sound effect&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:SetSe(&amp;quot;Battle/_UNK_DUN_Water_Drop&amp;quot;, 3)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:SetSe(System.String) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speaker sound effect played in the TextDialogue functions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;newSe&amp;lt;/code&amp;gt;: The sound effect of the box&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:SetSe(&amp;quot;Menu/Unknown-3&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeakTime(System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the speak frames played in the TextDialogue functions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;speakTime&amp;lt;/code&amp;gt;: The amount of frames to wait between each sound effect&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:SetSpeakTime(10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:ResetSe ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Resets to the default speaker sound effect and speaker frames.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ResetBounds ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Resets the position and size of the dialogue box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeakerLoc(System.Int32,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the position of the speaker in a dialogue box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: The X position&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: The Y position&lt;br /&gt;
&lt;br /&gt;
== UI:ResetSpeakerLoc ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Resets the position of the speaker in a dialogue box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SetSpeakerEmotion(System.String,System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the emotion of the speaker in the dialogue box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;emo&amp;lt;/code&amp;gt;: Emotion to display&lt;br /&gt;
* &amp;lt;code&amp;gt;reverse&amp;lt;/code&amp;gt;: Faces right if false, left if true.&lt;br /&gt;
&lt;br /&gt;
== UI:SetCenter(System.Boolean,System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sets the centering of the text in the textbox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;centerH&amp;lt;/code&amp;gt;: Horizontal centering&lt;br /&gt;
* &amp;lt;code&amp;gt;centerV&amp;lt;/code&amp;gt;: Vertical centering&lt;br /&gt;
&lt;br /&gt;
== UI:SetAutoFinish(System.Boolean) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Makes the text automatically finish when it shows up.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;autoFinish&amp;lt;/code&amp;gt;: Auto-finishes text if true.&lt;br /&gt;
&lt;br /&gt;
== UI:WaitDialog ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the currently set dialogue box and waits for the player to complete it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitDialog()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:_DummyWait ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Instantly break. Used as default/invalid value when returning a yieldable value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ChoiceMenuYesNo(System.String,System.Boolean,NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ask a question answered by yes or no via character dialogue to the player.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer value indicating the result of the menu, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
The Yes/No menu returns 1 for yes, and 0 for no.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;message&amp;lt;/code&amp;gt;: Question to be asked to the user.&lt;br /&gt;
* &amp;lt;code&amp;gt;bdefaultstono&amp;lt;/code&amp;gt;: Whether the cursor starts on no by default&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
== UI:NameMenu(System.String,System.String,System.Int32,System.String) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the name input box.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the string value indicating the result of the menu, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;: The text to show above the input line.&lt;br /&gt;
* &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;: The text to show below the input line.&lt;br /&gt;
* &amp;lt;code&amp;gt;maxLength&amp;lt;/code&amp;gt;: The length of the text in pixels.&lt;br /&gt;
* &amp;lt;code&amp;gt;defaultName&amp;lt;/code&amp;gt;: Name to start the textbox with.&lt;br /&gt;
&lt;br /&gt;
== UI:AssemblyMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays a menu for replacing party members with the assembly.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the boolean value indicating whether the team composition was changed or not, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ShopMenu(NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Shop menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the table indicating the indices of items chosen, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;goods&amp;lt;/code&amp;gt;: A table of items to be sold.  The format is { Item=InvItem, Price=int } for each item.&lt;br /&gt;
&lt;br /&gt;
== UI:SellMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Sell menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the table indicating the indices of items to sell, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:StorageMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Storage menu for which to exchange items in the inventory with.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the menu is exited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:WithdrawMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Storage menu for which to withdraw from.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the menu is exited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:BankMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Bank menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the menu is exited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SpoilsMenu(NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Spoils menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the menu is exited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;appraisalMap&amp;lt;/code&amp;gt;: A table of mappings from containers to items, in the format of { Box=InvItem , Item=InvItem }&lt;br /&gt;
&lt;br /&gt;
== UI:AppraiseMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Appraisal menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the table indicating the indices of items chosen, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:TutorTeamMenu(NLua.LuaFunction) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Tutor Team menu.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer representing the chosen team member, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:RelearnMenu(RogueEssence.Dungeon.Character) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Relearn menu for a character.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer representing the chosen skill, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;chara&amp;lt;/code&amp;gt;: The character to relearn skills&lt;br /&gt;
&lt;br /&gt;
== UI:LearnMenu(RogueEssence.Dungeon.Character,System.String) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Learn menu for a character to replace an existing skill with a new one.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer representing the chosen skill, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;chara&amp;lt;/code&amp;gt;: The character to relearn skills&lt;br /&gt;
* &amp;lt;code&amp;gt;skillNum&amp;lt;/code&amp;gt;: The new skill&lt;br /&gt;
&lt;br /&gt;
== UI:ForgetMenu(RogueEssence.Dungeon.Character) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Forget menu for a character to forget a skill.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer representing the chosen skill, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;chara&amp;lt;/code&amp;gt;: The character to relearn skills&lt;br /&gt;
&lt;br /&gt;
== UI:ShowPromoteMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Promote menu to choose a team member to promote.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer representing the chosen team slot, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:CanSwapMenu(NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SwapMenu(NLua.LuaTable,NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:TributeMenu(System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ShowMusicMenu(NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the Music menu to browse music for the game.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the string representing the chosen song, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;spoilerUnlocks&amp;lt;/code&amp;gt;: A lua table of strings representing progression flags that have been completed.&lt;br /&gt;
            Any ogg file that uses this tag as a spoiler tag will display in the menu only if the flag has been passed.&lt;br /&gt;
&lt;br /&gt;
== UI:DungeonChoice(System.String,RogueEssence.Dungeon.ZoneLoc) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ask to enter a destintion via character dialogue to the player.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer value indicating the result of the menu, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
The Yes/No menu returns 1 for yes, and 0 for no.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;name&amp;lt;/code&amp;gt;: Name of the destination&lt;br /&gt;
* &amp;lt;code&amp;gt;dest&amp;lt;/code&amp;gt;: The ZoneLoc location of the destination.&lt;br /&gt;
&lt;br /&gt;
== UI:DestinationMenu(NLua.LuaTable,System.Object) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Marks the start of a choice menu for choosing destinations, showing a preview of restrictions and requirements for dungeons.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the ZoneLoc indicating the chosen destination, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;destinations&amp;lt;/code&amp;gt;: A lua table representing the list of destinations with each element in the format of { Name=string, Dest=ZoneLoc }&lt;br /&gt;
&lt;br /&gt;
== UI:ServersMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ContactsMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:SOSMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:AOKMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:PeersMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ShowConnectMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:CurrentActivityMenu ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:ChooseMonsterMenu(System.String,NLua.LuaTable,System.Boolean,System.Boolean,System.Int32) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Marks the start of a choice menu for choosing monsters, showing a preview of their appearances via portrait.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the string indicating the chosen species, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;: The title of the menu&lt;br /&gt;
* &amp;lt;code&amp;gt;choices&amp;lt;/code&amp;gt;: A lua table of choices with each element being a MonsterID.&lt;br /&gt;
* &amp;lt;code&amp;gt;canMenu&amp;lt;/code&amp;gt;: If set to true, the Menu Button exits the menu if pressed.&lt;br /&gt;
* &amp;lt;code&amp;gt;canCancel&amp;lt;/code&amp;gt;: If set to true, the Cancel Button exits the menu if pressed.&lt;br /&gt;
* &amp;lt;code&amp;gt;slotsPerPage&amp;lt;/code&amp;gt;: Slots to display per page&lt;br /&gt;
&lt;br /&gt;
== UI:SetCustomMenu(RogueEssence.Menu.InteractableMenu) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays a custom menu of the caller&amp;#039;s choice.&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the menu is exited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== UI:BeginChoiceMenu(System.String,NLua.LuaTable,System.Object,System.Object,NLua.LuaTable) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Marks the start of a multi-choice menu.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer value indicating the result of the menu, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;message&amp;lt;/code&amp;gt;: The question to ask the user.&lt;br /&gt;
* &amp;lt;code&amp;gt;choicesPairs&amp;lt;/code&amp;gt;: A table of choices.  Each choice can be either a string, or { string, bool } representing the text and enabled status.&lt;br /&gt;
* &amp;lt;code&amp;gt;defaultChoice&amp;lt;/code&amp;gt;: The cursor starts on this choice.&lt;br /&gt;
* &amp;lt;code&amp;gt;cancelChoice&amp;lt;/code&amp;gt;: This choice is chosen if the player presses the cancel button.&lt;br /&gt;
* &amp;lt;code&amp;gt;callbacks&amp;lt;/code&amp;gt;: The Lua table of callbacks for the textbox to call.&lt;br /&gt;
&lt;br /&gt;
== UI:BeginMultiPageMenu(System.Int32,System.Int32,System.Int32,System.String,NLua.LuaTable,System.Int32,System.Object,System.Object) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Marks the start of a multi-paged choice menu.&lt;br /&gt;
UI:WaitForChoice() must be called afterwards for the menu to be actually displayed,&lt;br /&gt;
and for execution to suspend until the choice is returned.&lt;br /&gt;
Then to recover the integer value indicating the result of the menu, UI:ChoiceResult() must be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: X position of the menu&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: Y position of the menu&lt;br /&gt;
* &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;: Width of the menu&lt;br /&gt;
* &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;: Height of the menu&lt;br /&gt;
* &amp;lt;code&amp;gt;choicesPairs&amp;lt;/code&amp;gt;: A table of choices.  Each choice can be either a string, or { string, bool } representing the text and enabled status.&lt;br /&gt;
* &amp;lt;code&amp;gt;linesPerPage&amp;lt;/code&amp;gt;: Number of choices per page&lt;br /&gt;
* &amp;lt;code&amp;gt;defaultChoice&amp;lt;/code&amp;gt;: The cursor starts on this choice.&lt;br /&gt;
* &amp;lt;code&amp;gt;cancelChoice&amp;lt;/code&amp;gt;: This choice is chosen if the player presses the cancel button.&lt;br /&gt;
&lt;br /&gt;
== UI:ChoiceResult ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Get the result of the last choice menu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
&lt;br /&gt;
The result of the choice&lt;br /&gt;
&lt;br /&gt;
== UI:GetChoiceAction(System.Object) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It&amp;#039;s complicated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;obj&amp;lt;/code&amp;gt;: None&lt;br /&gt;
&lt;br /&gt;
== UI:WaitForChoice ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Displays the currently set choice menu and waits for the player&amp;#039;s selection to complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
UI:WaitForChoice()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UI:__WaitForChoice ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wait for choice and then CLEAN UP m_curchoice&lt;/div&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
</feed>