<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://gameex.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adultery</id>
	<title>Spesoft/GameEx Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://gameex.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adultery"/>
	<link rel="alternate" type="text/html" href="https://gameex.info/wiki/Special:Contributions/Adultery"/>
	<updated>2026-06-05T05:25:54Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_MAME_List_Update_Function&amp;diff=2045</id>
		<title>PlugIn Development:GameEx MAME List Update Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_MAME_List_Update_Function&amp;diff=2045"/>
		<updated>2014-04-30T23:01:59Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx updates the MAME list.&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type [Integer]&amp;lt;/span&amp;gt;: An integer specifying the Favorites type.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMERomPath [String]&amp;lt;/span&amp;gt;: A string that represents the user set ROM path for MAME.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMEPath [String]&amp;lt;/span&amp;gt;: A string that represents the path to the MAME executable.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMEExe [String]&amp;lt;/span&amp;gt;: A string that represents the MAME executable.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type integer&amp;lt;/span&amp;gt; can be converted to &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAME_Update&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMEROMPath string&amp;lt;/span&amp;gt; contains a representation of the user set ROM path as set in the GameEx MAME settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMEExePath string&amp;lt;/span&amp;gt; contains a representation of the user set EXE path (without the actual EXE) as set in the GameEx MAME settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MAMEExe string&amp;lt;/span&amp;gt; contains a representation of the user set EXE (without the full path) as set in the GameEx MAME settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enumerations below outline the the data type converted in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MAME_Update&lt;br /&gt;
     Update_Start = 0&lt;br /&gt;
     Update_End = 1&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MAME_Update&lt;br /&gt;
{&lt;br /&gt;
     Update_Start = 0,&lt;br /&gt;
     Update_End = 1,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Event_MAMEListUpdate(ByVal Type As Integer, ByVal MAMEROMPath As String, ByVal MAMEPath As String, ByVal MAMEExe As String)&lt;br /&gt;
     Select Case Type&lt;br /&gt;
        Case MAME_Update.Update_Start&lt;br /&gt;
           &#039;Run some code when the list update starts!&lt;br /&gt;
           Exit Select&lt;br /&gt;
        Case MAME_Update.Update_End&lt;br /&gt;
           &#039;Run some code when the list update finishes!&lt;br /&gt;
           Exit Select&lt;br /&gt;
     End Select&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public void Event_MAMEListUpdate(int Type, string MAMEROMPath, string MAMEPath, string MAMEExe)&lt;br /&gt;
{&lt;br /&gt;
     switch(Type)&lt;br /&gt;
     {&lt;br /&gt;
        case MAME_Update.Update_Start:&lt;br /&gt;
           //Run some code when the list update starts!&lt;br /&gt;
           break;&lt;br /&gt;
	case MAME_Update.Update_End:&lt;br /&gt;
           //Run some code when the list update finishes!&lt;br /&gt;
	   break;&lt;br /&gt;
     }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=Category:PlugIn_Development&amp;diff=2044</id>
		<title>Category:PlugIn Development</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=Category:PlugIn_Development&amp;diff=2044"/>
		<updated>2014-04-30T22:49:36Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /*  &amp;amp;bull; Application Events &amp;amp;bull;  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New Page}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Plugins_Dir.jpg|frame|GameEx Plugins Directory]]&lt;br /&gt;
GameEx and PinballX feature a very robust PlugIn system which accepts [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#] natively, so you can control many additional aspects of your build that are normally inaccessable without use of messy batch files or complicated AHK scripts. Currently, there are several PlugIns available from the respective program&#039;s PlugIn Manager interface that come pre-installed with both GameEx and PinballX, and additional PlugIns can be downloaded from the [http://www.gameex.info/forums/files Community Download Portal]. Many new features are actively developed by members of the community, thanks to this open source template for Tom&#039;s Speak Game Name PlugIn, which are located in a zip within the GameEx and PinballX PLUGINS subfolder in the program&#039;s root directory.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Development Overview&amp;lt;/span&amp;gt; ==&lt;br /&gt;
In the following section, you will find documentation on the functions that are exposed through GameEx&#039;s and PinballX&#039;s PlugIn systems, and some code that demonstrates their useage in both [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#]. You will also find variable and enum documentation, as well as links to [http://www.gameex.info/wiki/index.php/Category:PlugIn_Development#Visual_Studio_2010_Plugin_Templates_.26_Development_Tools templates and development tools] that you can use to quickly start creating your own PlugIns.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
If you have any questions, the development team is very good about helping would-be developers get familiar with the ins and outs of the system in [http://www.gameex.info our community forums].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;The plugin system requires all DLLs be compiled for an x86 target environment and built on [http://msdn.microsoft.com/en-us/library/t357fb32(v=vs.90).aspx .NET Framework 2.0] to function properly!&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;GameEx: PlugIn Functions&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;p&amp;gt;Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:&amp;lt;/p&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; PlugIn Data Structures &amp;amp; Enumerations &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse; table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Version_Info|GameEx Info (Structure)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_PlugIn Info|PlugIn Info (Structure)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_PlugIn_Type|PlugIn Type (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MAME_Update|MAME List Update Type (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MCE_Remote_Key|MCE Remote Key (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Main Plugin Functions &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table style=&amp;quot;border-style:collapse; width:100%;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Initialize_Function|Initialize Plugin]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Configure_Function|Configure Plugin]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Input Events &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_Joystick_Function|Input Joystick]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_Keyboard_Function|Input Keyboard]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_MCE Remote_Function|Input MCE Remote]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Application Events &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_App_Exit_Function|App Exit]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_CommandLine_Function|Command Line]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MAME_List_Update_Function|MAME List Update]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_Emulator_Load_Function|Emulator Load]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_Favorites_Function|Favorites]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PinballX: PlugIn Functions&amp;lt;/span&amp;gt; ==&lt;br /&gt;
Nothing yet!&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Download Links&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/files/category/8-plugins GameEx: PlugIn Downloads]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/files/category/21-apps-config-map-files-plugins PinballX: PlugIn Downloads]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/forum/22-user-projects GameEx User Project Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Templates &amp;amp; Development Tools&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;GameEx&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/11391-plugin-development-visual-basic-2010-project-template Visual Studio 2010 VB.NET GameEx PlugIn Snap-In Template]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/11412-plugin-development-function-logger GameEx Function Logger PlugIn]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;PinballX&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/13158-plugin-development-vbnet-pinballx-snap-in-plugin-template Visual Studio 2010 VB.NET PinballX PlugIn Snap-In Template]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/13008-plugin-function-logger-pinballx-edition PinballX Function Logger PlugIn]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:GameEx]]&lt;br /&gt;
[[Category:PinballX]]&lt;br /&gt;
[[Category:Plugin_Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2043</id>
		<title>PlugIn Development:GameEx Event Favorites Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2043"/>
		<updated>2014-04-30T22:45:08Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* C# */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when a game is added to or removed from the user&#039;s favorites list.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;As of Version 1.41, this feature is listed in the internal plugin documentation as &amp;quot;Not Yet Implemented&amp;quot;.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type [Integer]&amp;lt;/span&amp;gt;: An integer specifying the Favorites type.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: A sequential array of game data.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type integer&amp;lt;/span&amp;gt; can be converted to &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Favorites_Type&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr IntPtr&amp;lt;/span&amp;gt; should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data type converted in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum Favourites_Type&lt;br /&gt;
     Add = 0&lt;br /&gt;
     Remove = 1&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum Favourites_Type : uint&lt;br /&gt;
{&lt;br /&gt;
     Add = 0,&lt;br /&gt;
     Remove = 1&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_Favourites(ByVal Type As Integer, ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     &#039;Access the Game_Info Structure:&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
     &#039;Access the Mame_Info Structure:&lt;br /&gt;
     Dim CloneOf As String = Info.MameInfo.CloneOf&lt;br /&gt;
     &#039;Access the Database Structure:&lt;br /&gt;
     Dim Dev As String = Info.GameData.Developer&lt;br /&gt;
&lt;br /&gt;
     Select Case Type&lt;br /&gt;
        Case Favourites_Type.Add&lt;br /&gt;
           Exit Select&lt;br /&gt;
        Case Favourites_Type.Remove&lt;br /&gt;
           Exit Select&lt;br /&gt;
        End Select&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Event_Favourites(Favourites_Type Type, Game_Info Info)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     //Access the Game_Info Structure:&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
     //Access the Mame_Info Structure:&lt;br /&gt;
     string CloneOf = Info.MameInfo.CloneOf;&lt;br /&gt;
     //Access the Database Structure:&lt;br /&gt;
     string Dev = Info.GameData.Developer;&lt;br /&gt;
&lt;br /&gt;
     switch(Type)&lt;br /&gt;
     {&lt;br /&gt;
        case Favourites_Type.Add:&lt;br /&gt;
           break;&lt;br /&gt;
	case Favourites_Type.Remove:&lt;br /&gt;
	   break;&lt;br /&gt;
     }&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2042</id>
		<title>PlugIn Development:GameEx Event Favorites Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2042"/>
		<updated>2014-04-30T22:44:07Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when a game is added to or removed from the user&#039;s favorites list.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;As of Version 1.41, this feature is listed in the internal plugin documentation as &amp;quot;Not Yet Implemented&amp;quot;.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type [Integer]&amp;lt;/span&amp;gt;: An integer specifying the Favorites type.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: A sequential array of game data.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type integer&amp;lt;/span&amp;gt; can be converted to &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Favorites_Type&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr IntPtr&amp;lt;/span&amp;gt; should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data type converted in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum Favourites_Type&lt;br /&gt;
     Add = 0&lt;br /&gt;
     Remove = 1&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum Favourites_Type : uint&lt;br /&gt;
{&lt;br /&gt;
     Add = 0,&lt;br /&gt;
     Remove = 1&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_Favourites(ByVal Type As Integer, ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     &#039;Access the Game_Info Structure:&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
     &#039;Access the Mame_Info Structure:&lt;br /&gt;
     Dim CloneOf As String = Info.MameInfo.CloneOf&lt;br /&gt;
     &#039;Access the Database Structure:&lt;br /&gt;
     Dim Dev As String = Info.GameData.Developer&lt;br /&gt;
&lt;br /&gt;
     Select Case Type&lt;br /&gt;
        Case Favourites_Type.Add&lt;br /&gt;
           Exit Select&lt;br /&gt;
        Case Favourites_Type.Remove&lt;br /&gt;
           Exit Select&lt;br /&gt;
        End Select&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Event_Favourites(Favourites_Type Type, Game_Info Info)&lt;br /&gt;
{&lt;br /&gt;
     switch(Type)&lt;br /&gt;
     {&lt;br /&gt;
        case Favourites_Type.Add:&lt;br /&gt;
           break;&lt;br /&gt;
	case Favourites_Type.Remove:&lt;br /&gt;
	   break;&lt;br /&gt;
     }&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2041</id>
		<title>PlugIn Development:GameEx Event Favorites Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Favorites_Function&amp;diff=2041"/>
		<updated>2014-04-30T22:39:16Z</updated>

		<summary type="html">&lt;p&gt;Adultery: Created page with &amp;quot;This function is called when a game is added to or removed from the user&amp;#039;s favorites list.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &amp;#039;&amp;#039;As of Version 1.41, th...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when a game is added to or removed from the user&#039;s favorites list.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;As of Version 1.41, this feature is listed in the internal plugin documentation as &amp;quot;Not Yet Implemented&amp;quot;.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type [Integer]&amp;lt;/span&amp;gt;: An integer specifying the Favorites type.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: A sequential array of game data.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Type integer&amp;lt;/span&amp;gt; can be converted to &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Favorites_Type&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr IntPtr&amp;lt;/span&amp;gt; should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the favorites event.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data type converted in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum Favourites_Type&lt;br /&gt;
     Add = 0&lt;br /&gt;
     Remove = 1&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum Favourites_Type : uint&lt;br /&gt;
{&lt;br /&gt;
     Add = 0,&lt;br /&gt;
     Remove = 1&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_Favourites(ByVal Type As Integer, ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Select Case Type&lt;br /&gt;
        Case Favourites_Type.Add&lt;br /&gt;
           Exit Select&lt;br /&gt;
        Case Favourites_Type.Remove&lt;br /&gt;
           Exit Select&lt;br /&gt;
        End Select&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Event_Favourites(Favourites_Type Type, Game_Info Info)&lt;br /&gt;
{&lt;br /&gt;
     switch(Type)&lt;br /&gt;
     {&lt;br /&gt;
        case Favourites_Type.Add:&lt;br /&gt;
           break;&lt;br /&gt;
	case Favourites_Type.Remove:&lt;br /&gt;
	   break;&lt;br /&gt;
     }&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=Category:PlugIn_Development&amp;diff=2040</id>
		<title>Category:PlugIn Development</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=Category:PlugIn_Development&amp;diff=2040"/>
		<updated>2014-04-30T21:49:17Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /*  &amp;amp;bull; Application Events &amp;amp;bull;  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New Page}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Plugins_Dir.jpg|frame|GameEx Plugins Directory]]&lt;br /&gt;
GameEx and PinballX feature a very robust PlugIn system which accepts [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#] natively, so you can control many additional aspects of your build that are normally inaccessable without use of messy batch files or complicated AHK scripts. Currently, there are several PlugIns available from the respective program&#039;s PlugIn Manager interface that come pre-installed with both GameEx and PinballX, and additional PlugIns can be downloaded from the [http://www.gameex.info/forums/files Community Download Portal]. Many new features are actively developed by members of the community, thanks to this open source template for Tom&#039;s Speak Game Name PlugIn, which are located in a zip within the GameEx and PinballX PLUGINS subfolder in the program&#039;s root directory.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Development Overview&amp;lt;/span&amp;gt; ==&lt;br /&gt;
In the following section, you will find documentation on the functions that are exposed through GameEx&#039;s and PinballX&#039;s PlugIn systems, and some code that demonstrates their useage in both [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#]. You will also find variable and enum documentation, as well as links to [http://www.gameex.info/wiki/index.php/Category:PlugIn_Development#Visual_Studio_2010_Plugin_Templates_.26_Development_Tools templates and development tools] that you can use to quickly start creating your own PlugIns.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
If you have any questions, the development team is very good about helping would-be developers get familiar with the ins and outs of the system in [http://www.gameex.info our community forums].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;The plugin system requires all DLLs be compiled for an x86 target environment and built on [http://msdn.microsoft.com/en-us/library/t357fb32(v=vs.90).aspx .NET Framework 2.0] to function properly!&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;GameEx: PlugIn Functions&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;p&amp;gt;Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:&amp;lt;/p&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; PlugIn Data Structures &amp;amp; Enumerations &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse; table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Version_Info|GameEx Info (Structure)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_PlugIn Info|PlugIn Info (Structure)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_PlugIn_Type|PlugIn Type (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MAME_Update|MAME List Update Type (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MCE_Remote_Key|MCE Remote Key (Enum)]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Main Plugin Functions &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table style=&amp;quot;border-style:collapse; width:100%;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Initialize_Function|Initialize Plugin]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Configure_Function|Configure Plugin]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Input Events &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_Joystick_Function|Input Joystick]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_Keyboard_Function|Input Keyboard]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Input_MCE Remote_Function|Input MCE Remote]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt; &amp;amp;bull; Application Events &amp;amp;bull; &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;plugin_contents_box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; style=&amp;quot;border-style:collapse;  table-layout: fixed;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_App_Exit_Function|App Exit]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_CommandLine_Function|Command Line]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_MAME_List_Update_Function|MAME List Update]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr align=&amp;quot;center&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;amp;bull; [[PlugIn_Development:GameEx_Event_Emulator_Load_Function|Emulator Load]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PinballX: PlugIn Functions&amp;lt;/span&amp;gt; ==&lt;br /&gt;
Nothing yet!&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Download Links&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/files/category/8-plugins GameEx: PlugIn Downloads]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/files/category/21-apps-config-map-files-plugins PinballX: PlugIn Downloads]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/forum/22-user-projects GameEx User Project Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;PlugIn Templates &amp;amp; Development Tools&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;GameEx&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/11391-plugin-development-visual-basic-2010-project-template Visual Studio 2010 VB.NET GameEx PlugIn Snap-In Template]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/11412-plugin-development-function-logger GameEx Function Logger PlugIn]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;PinballX&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/13158-plugin-development-vbnet-pinballx-snap-in-plugin-template Visual Studio 2010 VB.NET PinballX PlugIn Snap-In Template]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;amp;diams; [http://www.gameex.info/forums/topic/13008-plugin-function-logger-pinballx-edition PinballX Function Logger PlugIn]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:GameEx]]&lt;br /&gt;
[[Category:PinballX]]&lt;br /&gt;
[[Category:Plugin_Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Emulator_Load_Function&amp;diff=2039</id>
		<title>PlugIn Development:GameEx Event Emulator Load Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_Emulator_Load_Function&amp;diff=2039"/>
		<updated>2014-04-30T21:48:07Z</updated>

		<summary type="html">&lt;p&gt;Adultery: Created page with &amp;quot;This substructure is called when an emulator is selected from the GameEx UI. == &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; == &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;EmuNam...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This substructure is called when an emulator is selected from the GameEx UI.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;EmuName [String]&amp;lt;/span&amp;gt;: This parameter passes the name of the emulator: Either &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;MAME&amp;lt;/span&amp;gt;, &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;DAPHNE&amp;lt;/span&amp;gt;, &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;STEAM&amp;lt;/span&amp;gt;, &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;ARCADE&amp;lt;/span&amp;gt;, or the &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Emulator Name&amp;lt;/span&amp;gt; property as specified in the emulator&#039;s configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the Emulator Load event.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the Emulator Load event.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_EmulatorLoad(ByVal EmuName As String) As Boolean&lt;br /&gt;
     &#039;Run your code here!&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Event_EmulatorLoad(string EmuName)&lt;br /&gt;
{&lt;br /&gt;
     //Run your code here!&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2038</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2038"/>
		<updated>2014-04-30T21:22:08Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Parameter Values */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     &#039;Access the Game_Info Structure:&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
     &#039;Access the Mame_Info Structure:&lt;br /&gt;
     Dim CloneOf As String = Info.MameInfo.CloneOf&lt;br /&gt;
     &#039;Access the Database Structure:&lt;br /&gt;
     Dim Dev As String = Info.GameData.Developer&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     //Access the Game_Info Structure:&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
     //Access the Mame_Info Structure:&lt;br /&gt;
     string CloneOf = Info.MameInfo.CloneOf;&lt;br /&gt;
     //Access the Database Structure:&lt;br /&gt;
     string Dev = Info.GameData.Developer;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2037</id>
		<title>PlugIn Development:GameEx Initialize Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2037"/>
		<updated>2014-04-30T21:17:26Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx initializes.&amp;lt;br /&amp;gt;Using this function call, you can run code to do various things, like set up your log files or load your settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will initialize your plugin.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not initialize your plugin.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure GameExInfo&lt;br /&gt;
    Public GameExVersion As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct GameExInfo&lt;br /&gt;
{&lt;br /&gt;
     public string GameExVersion;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Initialize(ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As GameExInfo = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), GameExInfo))&lt;br /&gt;
     &#039;This will output the current version of GameEx:&lt;br /&gt;
     Dim GameEx_Version As String = Info.GameExVersion&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Initialize(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     GameExInfo Info = (GameExInfo) Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&lt;br /&gt;
     //This will output the current version of GameEx as a string:&lt;br /&gt;
     string GameEx_Version = Info.GameExVersion;&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2036</id>
		<title>PlugIn Development:GameEx Initialize Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2036"/>
		<updated>2014-04-30T21:16:58Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx initializes.&amp;lt;br /&amp;gt;Using this function call, you can run code to do various things, like set up your log files or load your settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will initialize your plugin.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not initialize your plugin.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure GameExInfo&lt;br /&gt;
    Public &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;GameExVersion&amp;lt;/span&amp;gt; As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct GameExInfo&lt;br /&gt;
{&lt;br /&gt;
     public string GameExVersion;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Initialize(ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As GameExInfo = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), GameExInfo))&lt;br /&gt;
     &#039;This will output the current version of GameEx:&lt;br /&gt;
     Dim GameEx_Version As String = Info.GameExVersion&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Initialize(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     GameExInfo Info = (GameExInfo) Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&lt;br /&gt;
     //This will output the current version of GameEx as a string:&lt;br /&gt;
     string GameEx_Version = Info.GameExVersion;&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2035</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2035"/>
		<updated>2014-04-30T21:15:54Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
    width:100%;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    border-color:blue;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text_noline {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:darkblue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2034</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2034"/>
		<updated>2014-04-30T21:12:31Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
    width:100%;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text_noline {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:darkblue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2033</id>
		<title>PlugIn Development:GameEx Initialize Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2033"/>
		<updated>2014-04-30T21:04:48Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Parameter Values */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx initializes.&amp;lt;br /&amp;gt;Using this function call, you can run code to do various things, like set up your log files or load your settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Info&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_noline&amp;quot;&amp;gt;= (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will initialize your plugin.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not initialize your plugin.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure GameExInfo&lt;br /&gt;
    Public GameExVersion As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct GameExInfo&lt;br /&gt;
{&lt;br /&gt;
     public string GameExVersion;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Initialize(ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As GameExInfo = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), GameExInfo))&lt;br /&gt;
     &#039;This will output the current version of GameEx:&lt;br /&gt;
     Dim GameEx_Version As String = Info.GameExVersion&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Initialize(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     GameExInfo Info = (GameExInfo) Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&lt;br /&gt;
     //This will output the current version of GameEx as a string:&lt;br /&gt;
     string GameEx_Version = Info.GameExVersion;&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2032</id>
		<title>PlugIn Development:GameEx Initialize Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Initialize_Function&amp;diff=2032"/>
		<updated>2014-04-30T20:47:24Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Parameter Values */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx initializes.&amp;lt;br /&amp;gt;Using this function call, you can run code to do various things, like set up your log files or load your settings.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameExInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_no_line&amp;quot;&amp;gt;Dim Info As GameExInfo = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text_no_line&amp;quot;&amp;gt;GameExInfo Info = (GameExInfo)Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will initialize your plugin.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not initialize your plugin.&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure GameExInfo&lt;br /&gt;
    Public GameExVersion As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct GameExInfo&lt;br /&gt;
{&lt;br /&gt;
     public string GameExVersion;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The code samples below outline the syntax needed to process the call in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file within the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Initialize(ByVal InfoPtr As IntPtr) As Boolean&lt;br /&gt;
     Dim Info As GameExInfo = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(GameExInfo)), GameExInfo))&lt;br /&gt;
     &#039;This will output the current version of GameEx:&lt;br /&gt;
     Dim GameEx_Version As String = Info.GameExVersion&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Initialize(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     GameExInfo Info = (GameExInfo) Marshal.PtrToStructure(InfoPtr, typeof(GameExInfo));&lt;br /&gt;
     //This will output the current version of GameEx as a string:&lt;br /&gt;
     string GameEx_Version = Info.GameExVersion;&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_PlugIn_Info&amp;diff=2031</id>
		<title>PlugIn Development:GameEx PlugIn Info</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_PlugIn_Info&amp;diff=2031"/>
		<updated>2014-04-30T20:19:24Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You would set your PlugIn variables here, and they will be exposed to GameEx. You can set the version number of your plugin, author name, app name, and many other variables.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;Although you can change the PluginVersion to 1.40, you will lose a few variables. The 1.40 is only for legacy, and should not be used (stick with 1.41).&amp;lt;br /&amp;gt;Also, as of version 1.41, only &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugInType.Emulator&amp;lt;/span&amp;gt; is supported by the application.&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Variables&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;p&amp;gt;Below is a reference of the variables&amp;gt; available in this structure:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;code_variables&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Variable&amp;lt;/span&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue;&amp;quot;&amp;gt;[Value]&amp;lt;/span&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Name&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The name of your plugin as it will appear in the PlugIn Manager.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Version&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The build number of your plugin as it will appear in the PlugIn Manager.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Author&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Your name as it will appear in the PlugIn Manager.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Description&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;A brief description of your plugin as it will appear in the PlugIn Manager.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;PlugInType&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[PlugInType]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The type of plugin you are creating.&amp;lt;br /&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;amp;bull;NOTE&amp;amp;bull;&amp;lt;/b&amp;gt; Only PlugInType.Emulator is supported at this time!&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;PlugInVersion&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The version of the PlugIn framework you are targeting.&amp;lt;br /&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;amp;bull;NOTE&amp;amp;bull;&amp;lt;/b&amp;gt; 1.40 is intended for legacy mode only! Use 1.41 instead!&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Structure PluginInfo&lt;br /&gt;
    Public Const Name As String = &amp;quot;My Cool Plugin&amp;quot;&lt;br /&gt;
    Public Const Version As String = &amp;quot;1.0.0&amp;quot;&lt;br /&gt;
    Public Const Author As String = &amp;quot;Adultery&amp;quot;&lt;br /&gt;
    Public Const Description As String = &amp;quot;Does some cool stuff to GameEx!&amp;quot;&lt;br /&gt;
    Public Const PluginType As Plugin_Type = Plugin_Type.Emulator&lt;br /&gt;
    Public Const PluginVersion As String = &amp;quot;1.41&amp;quot;&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public struct PluginInfo&lt;br /&gt;
{&lt;br /&gt;
     public const string Name = &amp;quot;My Cool Plugin&amp;quot;;&lt;br /&gt;
     public const string Version = &amp;quot;1.0.0&amp;quot;;&lt;br /&gt;
     public const string Author = &amp;quot;Adultery&amp;quot;;&lt;br /&gt;
     public const string Description = &amp;quot;Does some cool stuff to GameEx!&amp;quot;;&lt;br /&gt;
     public const Plugin_Type PluginType = Plugin_Type.Emulator;&lt;br /&gt;
     public const string PluginVersion = &amp;quot;1.41&amp;quot;;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Version_Info&amp;diff=2030</id>
		<title>PlugIn Development:GameEx Version Info</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Version_Info&amp;diff=2030"/>
		<updated>2014-04-30T20:18:02Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When this structure is populated, the variable returns the current running version of GameEx.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Variables&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;p&amp;gt;Below is a reference of the variables available in this structure:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;code_variables&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;Variable&amp;lt;/span&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue;&amp;quot;&amp;gt;[Value]&amp;lt;/span&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;span style=&amp;quot;color:darkred&amp;quot;&amp;gt;GameExVersion&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[string]&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;The current running version of GameEx.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure GameExInfo&lt;br /&gt;
     Public GameExVersion As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct GameExInfo&lt;br /&gt;
{&lt;br /&gt;
     public string GameExVersion;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2029</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2029"/>
		<updated>2014-04-30T20:14:48Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
    width:100%;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text_noline {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2028</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2028"/>
		<updated>2014-04-30T20:11:33Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text_noline {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2027</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2027"/>
		<updated>2014-04-30T19:52:43Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Parameter Values */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;VB.NET:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Dim Info As Game_Info = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;C#:&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     &#039;Access the Game_Info Structure:&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
     &#039;Access the Mame_Info Structure:&lt;br /&gt;
     Dim CloneOf As String = Info.MameInfo.CloneOf&lt;br /&gt;
     &#039;Access the Database Structure:&lt;br /&gt;
     Dim Dev As String = Info.GameData.Developer&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     //Access the Game_Info Structure:&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
     //Access the Mame_Info Structure:&lt;br /&gt;
     string CloneOf = Info.MameInfo.CloneOf;&lt;br /&gt;
     //Access the Database Structure:&lt;br /&gt;
     string Dev = Info.GameData.Developer;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2026</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2026"/>
		<updated>2014-04-30T19:49:27Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
VB.NET: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Dim Info As Game_Info = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
C#: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Structures&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The structures below outline the the data passed in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String&lt;br /&gt;
     Public GameName As String&lt;br /&gt;
     Public ROMPath As String&lt;br /&gt;
     Public ROMName As String&lt;br /&gt;
     Public GameData As Database&lt;br /&gt;
     Public MameInfo As Mame_Info&lt;br /&gt;
     Public RomFilter As String&lt;br /&gt;
     Public SnapPath As String&lt;br /&gt;
     Public VideoPath As String&lt;br /&gt;
     Public TitlePath As String&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Mame_Info&lt;br /&gt;
     Public Players As String&lt;br /&gt;
     Public Control As String&lt;br /&gt;
     Public CloneOf As String&lt;br /&gt;
     Public Orientation As String&lt;br /&gt;
     Public VideoWidth As Integer&lt;br /&gt;
     Public VideoHeight As Integer&lt;br /&gt;
     Public Cocktail As Boolean&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Database&lt;br /&gt;
     Public Category As String&lt;br /&gt;
     Public Year As String&lt;br /&gt;
     Public Developer As String&lt;br /&gt;
     Public Publisher As String&lt;br /&gt;
     Public Description As String&lt;br /&gt;
     Public SystemBiography As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Game Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;&lt;br /&gt;
     public string GameName;&lt;br /&gt;
     public string ROMPath;&lt;br /&gt;
     public string ROMName;&lt;br /&gt;
     public Database GameData;&lt;br /&gt;
     public Mame_Info MameInfo;&lt;br /&gt;
     public string ROMFilter;&lt;br /&gt;
     public string SnapPath;&lt;br /&gt;
     public string VideoPath;&lt;br /&gt;
     public string TitlePath;&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Mame Info Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Mame_Info&lt;br /&gt;
{&lt;br /&gt;
     public string Players;&lt;br /&gt;
     public string Control;&lt;br /&gt;
     public string CloneOf;&lt;br /&gt;
     public string Orientation;&lt;br /&gt;
     public int VideoWidth;&lt;br /&gt;
     public int VideoHeight;&lt;br /&gt;
     public bool Cocktail;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Database Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Database&lt;br /&gt;
{&lt;br /&gt;
     public string Category;&lt;br /&gt;
     public string Year;&lt;br /&gt;
     public string Developer;&lt;br /&gt;
     public string Publisher;&lt;br /&gt;
     public string Description;&lt;br /&gt;
     public string SystemBiography;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     &#039;Access the Game_Info Structure:&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
     &#039;Access the Mame_Info Structure:&lt;br /&gt;
     Dim CloneOf As String = Info.MameInfo.CloneOf&lt;br /&gt;
     &#039;Access the Database Structure:&lt;br /&gt;
     Dim Dev As String = Info.GameData.Developer&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     //Access the Game_Info Structure:&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
     //Access the Mame_Info Structure:&lt;br /&gt;
     string CloneOf = Info.MameInfo.CloneOf;&lt;br /&gt;
     //Access the Database Structure:&lt;br /&gt;
     string Dev = Info.GameData.Developer;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2025</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2025"/>
		<updated>2014-04-28T14:15:09Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* C# */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;The only info pushed down to this event is the command line since PlugIn Version 1.41. For the additional info exposed in the structure, you will need to push a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; during the GameRun or the GameSelect event.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
VB.NET: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Dim Info As Game_Info = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
C#: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String       &#039;No value is passed during this event&lt;br /&gt;
     Public GameName As String           &#039;No value is passed during this event&lt;br /&gt;
     Public ROMPath As String            &#039;No value is passed during this event&lt;br /&gt;
     Public ROMName As String            &#039;No value is passed during this event&lt;br /&gt;
     Public GameData As Database         &#039;No value is passed during this event&lt;br /&gt;
     Public MameInfo As Mame_Info        &#039;No value is passed during this event&lt;br /&gt;
     Public RomFilter As String          &#039;No value is passed during this event&lt;br /&gt;
     Public SnapPath As String           &#039;No value is passed during this event&lt;br /&gt;
     Public VideoPath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public TitlePath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;     //No value is passed during this event&lt;br /&gt;
     public string GameName;         //No value is passed during this event&lt;br /&gt;
     public string ROMPath;          //No value is passed during this event&lt;br /&gt;
     public string ROMName;          //No value is passed during this event&lt;br /&gt;
     public Database GameData;       //No value is passed during this event&lt;br /&gt;
     public Mame_Info MameInfo;      //No value is passed during this event&lt;br /&gt;
     public string ROMFilter;        //No value is passed during this event&lt;br /&gt;
     public string SnapPath;         //No value is passed during this event&lt;br /&gt;
     public string VideoPath;        //No value is passed during this event&lt;br /&gt;
     public string TitlePath;        //No value is passed during this event&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2024</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2024"/>
		<updated>2014-04-28T14:14:20Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Function */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;The only info pushed down to this event is the command line since PlugIn Version 1.41. For the additional info exposed in the structure, you will need to push a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; during the GameRun or the GameSelect event.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
VB.NET: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Dim Info As Game_Info = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
C#: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String       &#039;No value is passed during this event&lt;br /&gt;
     Public GameName As String           &#039;No value is passed during this event&lt;br /&gt;
     Public ROMPath As String            &#039;No value is passed during this event&lt;br /&gt;
     Public ROMName As String            &#039;No value is passed during this event&lt;br /&gt;
     Public GameData As Database         &#039;No value is passed during this event&lt;br /&gt;
     Public MameInfo As Mame_Info        &#039;No value is passed during this event&lt;br /&gt;
     Public RomFilter As String          &#039;No value is passed during this event&lt;br /&gt;
     Public SnapPath As String           &#039;No value is passed during this event&lt;br /&gt;
     Public VideoPath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public TitlePath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
----&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_struc&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;     //No value is passed during this event&lt;br /&gt;
     public string GameName;         //No value is passed during this event&lt;br /&gt;
     public string ROMPath;          //No value is passed during this event&lt;br /&gt;
     public string ROMName;          //No value is passed during this event&lt;br /&gt;
     public Database GameData;       //No value is passed during this event&lt;br /&gt;
     public Mame_Info MameInfo;      //No value is passed during this event&lt;br /&gt;
     public string ROMFilter;        //No value is passed during this event&lt;br /&gt;
     public string SnapPath;         //No value is passed during this event&lt;br /&gt;
     public string VideoPath;        //No value is passed during this event&lt;br /&gt;
     public string TitlePath;        //No value is passed during this event&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2023</id>
		<title>PlugIn Development:GameEx Event CommandLine Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_CommandLine_Function&amp;diff=2023"/>
		<updated>2014-04-28T14:13:43Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when GameEx populates the command line for the chosen game.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;The only info pushed down to this event is the command line since PlugIn Version 1.41. For the additional info exposed in the structure, you will need to push a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; during the GameRun or the GameSelect event.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr [IntPtr]&amp;lt;/span&amp;gt;: An array of game data, which should be pushed to the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; using a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;InfoPtr&amp;lt;/span&amp;gt; passed to this variable populates the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;GameInfo structure&amp;lt;/span&amp;gt; when passed via &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;DirectCast&amp;lt;/span&amp;gt; like so:&amp;lt;br /&amp;gt;&lt;br /&gt;
VB.NET: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Dim Info As Game_Info = DirectCast(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
C#: &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return your modified &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;CmdLine string&amp;lt;/span&amp;gt; and GameEx will use the new command line when it runs the game.&amp;lt;br /&amp;gt;&lt;br /&gt;
Alternatively, you can return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Nothing&amp;lt;/span&amp;gt; and GameEx will process the currently configured command line.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;StructLayout(LayoutKind.Sequential)&amp;gt; _&lt;br /&gt;
Public Structure Game_Info&lt;br /&gt;
     Public EmulatorNumber As Integer&lt;br /&gt;
     Public EmulatorName As String       &#039;No value is passed during this event&lt;br /&gt;
     Public GameName As String           &#039;No value is passed during this event&lt;br /&gt;
     Public ROMPath As String            &#039;No value is passed during this event&lt;br /&gt;
     Public ROMName As String            &#039;No value is passed during this event&lt;br /&gt;
     Public GameData As Database         &#039;No value is passed during this event&lt;br /&gt;
     Public MameInfo As Mame_Info        &#039;No value is passed during this event&lt;br /&gt;
     Public RomFilter As String          &#039;No value is passed during this event&lt;br /&gt;
     Public SnapPath As String           &#039;No value is passed during this event&lt;br /&gt;
     Public VideoPath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public TitlePath As String          &#039;No value is passed during this event&lt;br /&gt;
     Public CmdLine As String&lt;br /&gt;
End Structure&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Event_CommandLine(ByVal InfoPtr As IntPtr) As String&lt;br /&gt;
     Dim Info As Game_Info = CType(Marshal.PtrToStructure(InfoPtr, GetType(Game_Info)), Game_Info)&lt;br /&gt;
     Dim CmdLine As String = Info.CmdLine&lt;br /&gt;
       &#039;Run some code here!&lt;br /&gt;
     Return CmdLine&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
----&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Structure&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_struc&amp;quot;&amp;gt;&lt;br /&gt;
[ StructLayout( LayoutKind.Sequential )]&lt;br /&gt;
public struct Game_Info&lt;br /&gt;
{&lt;br /&gt;
     public int EmulatorNumber; &lt;br /&gt;
     public string EmulatorName;     //No value is passed during this event&lt;br /&gt;
     public string GameName;         //No value is passed during this event&lt;br /&gt;
     public string ROMPath;          //No value is passed during this event&lt;br /&gt;
     public string ROMName;          //No value is passed during this event&lt;br /&gt;
     public Database GameData;       //No value is passed during this event&lt;br /&gt;
     public Mame_Info MameInfo;      //No value is passed during this event&lt;br /&gt;
     public string ROMFilter;        //No value is passed during this event&lt;br /&gt;
     public string SnapPath;         //No value is passed during this event&lt;br /&gt;
     public string VideoPath;        //No value is passed during this event&lt;br /&gt;
     public string TitlePath;        //No value is passed during this event&lt;br /&gt;
     public string CMDLine;&lt;br /&gt;
};&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span style=&amp;quot;color:purple;&amp;quot;&amp;gt;Function&amp;lt;/span&amp;gt; ====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public string Event_CommandLine(IntPtr InfoPtr)&lt;br /&gt;
{&lt;br /&gt;
     Game_Info Info = (Game_Info)Marshal.PtrToStructure(InfoPtr, typeof(Game_Info));&lt;br /&gt;
     string CmdLine = Info.CMDLine;&lt;br /&gt;
       //Run some code here!&lt;br /&gt;
     return CmdLine;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2022</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2022"/>
		<updated>2014-04-28T14:11:55Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2021</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2021"/>
		<updated>2014-04-28T14:05:55Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-color:black;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2020</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2020"/>
		<updated>2014-04-28T14:00:26Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:1px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2019</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2019"/>
		<updated>2014-04-28T13:59:04Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:0px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2018</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2018"/>
		<updated>2014-04-28T13:53:51Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-bottom:none;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:1px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2017</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2017"/>
		<updated>2014-04-28T08:31:45Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:1px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:5px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2016</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2016"/>
		<updated>2014-04-28T08:30:15Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:1px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF;&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2015</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=2015"/>
		<updated>2014-04-28T08:29:18Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:1px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_App_Exit_Function&amp;diff=2014</id>
		<title>PlugIn Development:GameEx Event App Exit Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_App_Exit_Function&amp;diff=2014"/>
		<updated>2014-04-28T07:46:26Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* C# */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This substructure is called when GameEx shuts down.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This substructre has no available parameters.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Event_App_Exit()&lt;br /&gt;
     &#039;Run some code here!&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public void Event_App_Exit()&lt;br /&gt;
{&lt;br /&gt;
     //Run some code here!		&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_App_Exit_Function&amp;diff=2013</id>
		<title>PlugIn Development:GameEx Event App Exit Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Event_App_Exit_Function&amp;diff=2013"/>
		<updated>2014-04-28T07:46:16Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This substructure is called when GameEx shuts down.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This substructre has no available parameters.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Event_App_Exit()&lt;br /&gt;
     &#039;Run some code here!&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public void Event_App_Exit()&lt;br /&gt;
{&lt;br /&gt;
     //Run some code here!		&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2012</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2012"/>
		<updated>2014-04-28T07:45:35Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* C# */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2011</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2011"/>
		<updated>2014-04-28T07:45:13Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2010</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2010"/>
		<updated>2014-04-28T07:44:56Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Raw Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2009</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2009"/>
		<updated>2014-04-28T07:44:40Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Command Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2008</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2008"/>
		<updated>2014-04-28T07:44:20Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Key Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_cs&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2007</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2007"/>
		<updated>2014-04-28T07:29:18Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Raw Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2006</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2006"/>
		<updated>2014-04-28T07:29:07Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Command Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2005</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2005"/>
		<updated>2014-04-28T07:28:53Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Command Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre cclass=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2004</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2004"/>
		<updated>2014-04-28T07:28:43Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Key Enumeration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_es_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2003</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2003"/>
		<updated>2014-04-28T07:28:06Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Enumerators */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerations&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span class=&amp;quot;plugin_header_mini&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2002</id>
		<title>PlugIn Development:GameEx Input MCE Remote Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_MCE_Remote_Function&amp;diff=2002"/>
		<updated>2014-04-28T07:18:27Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the MCE remote.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key [integer]&amp;lt;/span&amp;gt;: A number representing the key code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command [integer]&amp;lt;/span&amp;gt;: A number representing the command code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw [integer]&amp;lt;/span&amp;gt;: A number representing the raw code.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Key integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Key&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Command integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Command&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;. &amp;lt;br /&amp;gt; &lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Raw integer&amp;lt;/span&amp;gt; can be converted to an &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MCE_Remote_Raw&amp;lt;/span&amp;gt; via the supplied &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;enumeration&amp;lt;/span&amp;gt;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the MCE Remote button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the MCE Remote button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Enumerators&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The enums below outline the the data converted frim integer values in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;PlugIn.dll&amp;lt;/span&amp;gt; file.&amp;lt;br /&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Key&lt;br /&gt;
     MCEButton_OK = 13&lt;br /&gt;
     MCEButton_Clear = 27&lt;br /&gt;
     MCEButton_MoveLeft = 37&lt;br /&gt;
     MCEButton_MoveUp = 38&lt;br /&gt;
     MCEButton_MoveRight = 39&lt;br /&gt;
     MCEButton_MoveDown = 40&lt;br /&gt;
     MCEButton_Number0 = 48&lt;br /&gt;
     MCEButton_Number1 = 49&lt;br /&gt;
     MCEButton_Number2 = 50&lt;br /&gt;
     MCEButton_Number3 = 51&lt;br /&gt;
     MCEButton_Number4 = 52&lt;br /&gt;
     MCEButton_Number5 = 53&lt;br /&gt;
     MCEButton_Number6 = 54&lt;br /&gt;
     MCEButton_Number7 = 55&lt;br /&gt;
     MCEButton_Number8 = 56&lt;br /&gt;
     MCEButton_Number9 = 57&lt;br /&gt;
     MCEButton_Number0_2 = 58&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Command&lt;br /&gt;
     MCEButton_Back = 65536&lt;br /&gt;
     MCEButton_Skip = 720896&lt;br /&gt;
     MCEButton_Replay = 786432&lt;br /&gt;
     MCEButton_Stop = 851968&lt;br /&gt;
     MCEButton_Play = 271450112&lt;br /&gt;
     MCEButton_Pause = 271515648&lt;br /&gt;
     MCEButton_Record = 271581184&lt;br /&gt;
     MCEButton_Forward = 271646720&lt;br /&gt;
     MCEButton_Rewind = 271712256&lt;br /&gt;
     MCEButton_ChannelUp = 271777792&lt;br /&gt;
     MCEButton_ChannelDown = 271843328&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
Public Enum MCE_Remote_Raw&lt;br /&gt;
     MCEButton_MoreInfo = 9&lt;br /&gt;
     MCEButton_DVDMenu = 36&lt;br /&gt;
     MCEButton_LiveTV = 37&lt;br /&gt;
     MCEButton_MyTV = 70&lt;br /&gt;
     MCEButton_MyMusic = 71&lt;br /&gt;
     MCEButton_RecordedTV = 72&lt;br /&gt;
     MCEButton_MyPictures = 73&lt;br /&gt;
     MCEButton_MyVideos = 74&lt;br /&gt;
     MCEButton_DVDAngle = 75&lt;br /&gt;
     MCEButton_DVDAudio = 76&lt;br /&gt;
     MCEButton_DVDSubtitle = 77&lt;br /&gt;
     MCEButton_OEM1 = 128&lt;br /&gt;
     MCEButton_OEM2 = 129&lt;br /&gt;
     MCEButton_Guide = 141&lt;br /&gt;
     MCEButton_Mute = 226&lt;br /&gt;
     MCEButton_VolumeUp = 233&lt;br /&gt;
     MCEButton_VolumeDown = 234&lt;br /&gt;
End Enum&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ====&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Key Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Key : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_OK = 13,&lt;br /&gt;
     MCEButton_Clear = 27,&lt;br /&gt;
     MCEButton_MoveLeft = 37,&lt;br /&gt;
     MCEButton_MoveUp = 38,&lt;br /&gt;
     MCEButton_MoveRight = 39,&lt;br /&gt;
     MCEButton_MoveDown = 40,&lt;br /&gt;
     MCEButton_Number0 = 48,&lt;br /&gt;
     MCEButton_Number1 = 49,&lt;br /&gt;
     MCEButton_Number2 = 50,&lt;br /&gt;
     MCEButton_Number3 = 51,&lt;br /&gt;
     MCEButton_Number4 = 52,&lt;br /&gt;
     MCEButton_Number5 = 53,&lt;br /&gt;
     MCEButton_Number6 = 54,&lt;br /&gt;
     MCEButton_Number7 = 55,&lt;br /&gt;
     MCEButton_Number8 = 56,&lt;br /&gt;
     MCEButton_Number9 = 57,&lt;br /&gt;
     MCEButton_Number0_2 = 58,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Command Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Command : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_Back = 65536,&lt;br /&gt;
     MCEButton_Skip = 720896,&lt;br /&gt;
     MCEButton_Replay = 786432,&lt;br /&gt;
     MCEButton_Stop = 851968,&lt;br /&gt;
     MCEButton_Play = 271450112,&lt;br /&gt;
     MCEButton_Pause = 271515648,&lt;br /&gt;
     MCEButton_Record = 271581184,&lt;br /&gt;
     MCEButton_Forward = 271646720,&lt;br /&gt;
     MCEButton_Rewind = 271712256,&lt;br /&gt;
     MCEButton_ChannelUp = 271777792,&lt;br /&gt;
     MCEButton_ChannelDown = 271843328,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== &amp;lt;span style=&amp;quot;color:orange;&amp;quot;&amp;gt;Raw Enumeration&amp;lt;/span&amp;gt; =====&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_enum&amp;quot;&amp;gt;&lt;br /&gt;
public enum MCE_Remote_Raw : uint&lt;br /&gt;
{&lt;br /&gt;
     MCEButton_MoreInfo = 9,&lt;br /&gt;
     MCEButton_DVDMenu = 36,&lt;br /&gt;
     MCEButton_LiveTV = 37,&lt;br /&gt;
     MCEButton_MyTV = 70,&lt;br /&gt;
     MCEButton_MyMusic = 71,&lt;br /&gt;
     MCEButton_RecordedTV = 72,&lt;br /&gt;
     MCEButton_MyPictures = 73,&lt;br /&gt;
     MCEButton_MyVideos = 74,&lt;br /&gt;
     MCEButton_DVDAngle = 75,&lt;br /&gt;
     MCEButton_DVDAudio = 76,&lt;br /&gt;
     MCEButton_DVDSubtitle = 77,&lt;br /&gt;
     MCEButton_OEM1 = 128,&lt;br /&gt;
     MCEButton_OEM2 = 129,&lt;br /&gt;
     MCEButton_Guide = 141,&lt;br /&gt;
     MCEButton_Mute = 226,&lt;br /&gt;
     MCEButton_VolumeUp = 233,&lt;br /&gt;
     MCEButton_VolumeDown = 234,&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_MCERemote(ByVal Key As Integer, ByVal Command As Integer, ByVal Raw As Integer) As Boolean&lt;br /&gt;
   Select Case Key&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_OK&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Clear&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveLeft&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveRight&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_MoveDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number3&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number4&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number5&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number6&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number7&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number8&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number9&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Key.MCEButton_Number0_2&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Command&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Back&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Skip&lt;br /&gt;
          Exit Select       &lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Replay&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Stop&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Play&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Pause&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Record&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Forward&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_Rewind&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Command.MCEButton_ChannelDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Select Case Raw&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MoreInfo&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDMenu&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_LiveTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyMusic&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_RecordedTV&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyPictures&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_MyVideos&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAngle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDAudio&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_DVDSubtitle&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM1&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_OEM2&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Guide&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_Mute&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeUp&lt;br /&gt;
          Exit Select&lt;br /&gt;
       Case MCE_Remote_Raw.MCEButton_VolumeDown&lt;br /&gt;
          Exit Select&lt;br /&gt;
   End Select&lt;br /&gt;
&lt;br /&gt;
   Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_MCERemote(uint Key, uint Command, uint Raw)&lt;br /&gt;
{&lt;br /&gt;
   switch (Key)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_OK:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Clear:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveLeft:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveRight:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_MoveDown:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number3:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number4:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number5:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number6:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number7:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number8:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number9:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Key.MCEButton_Number0_2:&lt;br /&gt;
	     break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Command)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Back:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Skip:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Replay:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Stop:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Play:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Pause:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Record:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Forward:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_Rewind:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Command.MCEButton_ChannelDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   switch(Raw)&lt;br /&gt;
   {&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MoreInfo:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDMenu:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_LiveTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyMusic:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_RecordedTV:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyPictures:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_MyVideos:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAngle:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDAudio:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_DVDSubtitle:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM1:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_OEM2:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Guide:&lt;br /&gt;
        break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_Mute:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeUp:&lt;br /&gt;
	break;&lt;br /&gt;
     case (uint) MCE_Remote_Raw.MCEButton_VolumeDown:&lt;br /&gt;
	break;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_Keyboard_Function&amp;diff=2001</id>
		<title>PlugIn Development:GameEx Input Keyboard Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_Keyboard_Function&amp;diff=2001"/>
		<updated>2014-04-28T07:15:16Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Code Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user presses a button on the keyboard.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Code [integer]&amp;lt;/span&amp;gt;: The key code of the button pressed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;UsingDirectInput [boolean]&amp;lt;/span&amp;gt;: Specifies the Direct Input method.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Code integer&amp;lt;/span&amp;gt; is a constant, based on the key codes used by Windows. You can learn more about the various vKey codes [http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx at MSDN].&amp;lt;br /&amp;gt;&lt;br /&gt;
The &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;UsingDirectInput boolean&amp;lt;/span&amp;gt; is passed as &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; if Direct Input mode has been detected.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the keyboard key.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process keyboard key.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_Keyboard(ByVal code As Integer, ByVal usingdirectinput As Boolean) As Boolean&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_Keyboard(int code, bool usingdirectinput)&lt;br /&gt;
{	&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_Joystick_Function&amp;diff=2000</id>
		<title>PlugIn Development:GameEx Input Joystick Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Input_Joystick_Function&amp;diff=2000"/>
		<updated>2014-04-28T07:11:58Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Code Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when you press a button on the joystick.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;note_block_red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;PLEASE NOTE:&amp;lt;/b&amp;gt; &#039;&#039;This function only fires when the GameEx UI is visible.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Buttons() [boolean]&amp;lt;/span&amp;gt;: An array of buttons that denote the state of the buttons on the joystick.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Parameter Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
For each item in the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;array&amp;lt;/span&amp;gt;, a parameter of &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; means that the position button is currently pressed in that instance of the &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;array&amp;lt;/span&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, if &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Array[0] = true&amp;lt;/span&amp;gt; then &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Joystick Button 0&amp;lt;/span&amp;gt; is pressed, and so on.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Returns&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This function returns a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; value.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;Return Values&amp;lt;/span&amp;gt; ===&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;true&amp;lt;/span&amp;gt; and GameEx will process the joystick button press.&amp;lt;br /&amp;gt;&lt;br /&gt;
Return &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;false&amp;lt;/span&amp;gt; and GameEx will not process the joystick button press.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Function Input_Joystick(ByVal Buttons() As Boolean) As Boolean&lt;br /&gt;
     Return True&lt;br /&gt;
End Function&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public bool Input_Joystick(bool[] Buttons)&lt;br /&gt;
{&lt;br /&gt;
     return true;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1999</id>
		<title>PlugIn Development:GameEx Configure Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1999"/>
		<updated>2014-04-28T07:09:15Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* VB.NET */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user configures the PlugIn from the PlugIn Manager interface.&amp;lt;br /&amp;gt;Typically you would launch a configuration window from this sub. If your plugin doesn&#039;t require user configuration, you can simply leave this area empty.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This substructre has no available parameters.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The following code assumes that you have a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Configuration&amp;lt;/span&amp;gt; class with a window for setting options. &amp;lt;br /&amp;gt;It&#039;s probably good practice that if you don&#039;t allow a user to configure any options, you should add a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MessageBox.Show&amp;lt;/span&amp;gt; command to let the user know there are no user-configurable options so they aren&#039;t deterred from enabling your plugin in the PlugIn Manager.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Configure()&lt;br /&gt;
     Dim config As New Configuration&lt;br /&gt;
     config.ShowDialog()&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public void Configure()&lt;br /&gt;
{&lt;br /&gt;
     using(Configuration config = new Configuration())&lt;br /&gt;
     {&lt;br /&gt;
          config.ShowDialog(null);&lt;br /&gt;
     }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1998</id>
		<title>PlugIn Development:GameEx Configure Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1998"/>
		<updated>2014-04-28T07:09:04Z</updated>

		<summary type="html">&lt;p&gt;Adultery: /* Code Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user configures the PlugIn from the PlugIn Manager interface.&amp;lt;br /&amp;gt;Typically you would launch a configuration window from this sub. If your plugin doesn&#039;t require user configuration, you can simply leave this area empty.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This substructre has no available parameters.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The following code assumes that you have a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Configuration&amp;lt;/span&amp;gt; class with a window for setting options. &amp;lt;br /&amp;gt;It&#039;s probably good practice that if you don&#039;t allow a user to configure any options, you should add a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MessageBox.Show&amp;lt;/span&amp;gt; command to let the user know there are no user-configurable options so they aren&#039;t deterred from enabling your plugin in the PlugIn Manager.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_vb&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Configure()&lt;br /&gt;
     Dim config As New Configuration&lt;br /&gt;
     config.ShowDialog()&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_cs&amp;quot;&amp;gt;&lt;br /&gt;
public void Configure()&lt;br /&gt;
{&lt;br /&gt;
     using(Configuration config = new Configuration())&lt;br /&gt;
     {&lt;br /&gt;
          config.ShowDialog(null);&lt;br /&gt;
     }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1997</id>
		<title>PlugIn Development:GameEx Configure Function</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=PlugIn_Development:GameEx_Configure_Function&amp;diff=1997"/>
		<updated>2014-04-28T07:07:55Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is called when the user configures the PlugIn from the PlugIn Manager interface.&amp;lt;br /&amp;gt;Typically you would launch a configuration window from this sub. If your plugin doesn&#039;t require user configuration, you can simply leave this area empty.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Parameters&amp;lt;/span&amp;gt; ==&lt;br /&gt;
This substructre has no available parameters.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== &amp;lt;span class=&amp;quot;plugin_headline_text&amp;quot;&amp;gt;Code Examples&amp;lt;/span&amp;gt; ==&lt;br /&gt;
The following code assumes that you have a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;Configuration&amp;lt;/span&amp;gt; class with a window for setting options. &amp;lt;br /&amp;gt;It&#039;s probably good practice that if you don&#039;t allow a user to configure any options, you should add a &amp;lt;span class=&amp;quot;plugin_return_text&amp;quot;&amp;gt;MessageBox.Show&amp;lt;/span&amp;gt; command to let the user know there are no user-configurable options so they aren&#039;t deterred from enabling your plugin in the PlugIn Manager.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;VB.NET&amp;lt;/span&amp;gt; ===&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
Public Sub Configure()&lt;br /&gt;
     Dim config As New Configuration&lt;br /&gt;
     config.ShowDialog()&lt;br /&gt;
End Sub&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plugin_text_fx&amp;quot;&amp;gt;C#&amp;lt;/span&amp;gt; ===&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code_block_func&amp;quot;&amp;gt;&lt;br /&gt;
public void Configure()&lt;br /&gt;
{&lt;br /&gt;
     using(Configuration config = new Configuration())&lt;br /&gt;
     {&lt;br /&gt;
          config.ShowDialog(null);&lt;br /&gt;
     }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:PlugIn Development]]&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
	<entry>
		<id>https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=1996</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://gameex.info/wiki/index.php?title=MediaWiki:Common.css&amp;diff=1996"/>
		<updated>2014-04-28T07:07:14Z</updated>

		<summary type="html">&lt;p&gt;Adultery: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* CSS for the Plugin Development Wikis */&lt;br /&gt;
.plugin_text_fx {&lt;br /&gt;
    border:2px solid #06F;&lt;br /&gt;
    border-radius:5px;&lt;br /&gt;
    padding:1px 4px;&lt;br /&gt;
    animation: color-change 1s infinite;&lt;br /&gt;
    -webkit-animation: color-change 1s infinite;&lt;br /&gt;
    -moz-animation: none;&lt;br /&gt;
    color: #06F;&lt;br /&gt;
}&lt;br /&gt;
.plugin_header_mini {&lt;br /&gt;
     color:#909;&lt;br /&gt;
     font-weight:bold;&lt;br /&gt;
}&lt;br /&gt;
.code_variables {&lt;br /&gt;
   font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
   border-style:solid; &lt;br /&gt;
   border-color:darkred; &lt;br /&gt;
   background-color:#FFDBDB; &lt;br /&gt;
   border-width:2px;  &lt;br /&gt;
   padding-left:5px; &lt;br /&gt;
   padding-right:5px; &lt;br /&gt;
   padding-top:5px; &lt;br /&gt;
   padding-bottom:5px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables table {&lt;br /&gt;
    border-style:seperate;&lt;br /&gt;
    border-spacing:8px;&lt;br /&gt;
    border-style:none;&lt;br /&gt;
    table-layout:auto;&lt;br /&gt;
}&lt;br /&gt;
.code_variables tr {&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
}&lt;br /&gt;
.code_variables td {&lt;br /&gt;
    text-align:left;&lt;br /&gt;
    font-weight:normal;&lt;br /&gt;
    padding-left:4px;&lt;br /&gt;
    padding-right:4px;&lt;br /&gt;
}&lt;br /&gt;
.code_variables th {&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    border:1px solid darkred;&lt;br /&gt;
    background-color:#FF9999;&lt;br /&gt;
    padding:5px;&lt;br /&gt;
}&lt;br /&gt;
.note_block_red {&lt;br /&gt;
    color:#4C0000;&lt;br /&gt;
    border-style:double;&lt;br /&gt;
    background-color:#FBEFF2; &lt;br /&gt;
    border-color:red; &lt;br /&gt;
    border-width:6px;&lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.code_block_struct {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
    border-color:#003300; &lt;br /&gt;
    background-color:#E0EEE0; &lt;br /&gt;
    border-style:dashed;&lt;br /&gt;
    border-width:1px;&lt;br /&gt;
}&lt;br /&gt;
.code_block_enum {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
    border-color:#003300; &lt;br /&gt;
    background-color:#E0EEE0; &lt;br /&gt;
    border-style:dotted;&lt;br /&gt;
    border-width:1px;&lt;br /&gt;
}&lt;br /&gt;
.code_block_func {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace; &lt;br /&gt;
    border-color:#003300; &lt;br /&gt;
    background-color:#E0EEE0; &lt;br /&gt;
    border-style:solid;&lt;br /&gt;
    border-width:1px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FFFF00; &lt;br /&gt;
    border-color:#FFFF00;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:ridge;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_es_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#FF0066; &lt;br /&gt;
    border-color:#FF0066;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:ridge;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_vb {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FF00; &lt;br /&gt;
    border-color:#00FF00;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.code_cs {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    font-weight:bold;&lt;br /&gt;
    color:#00FFFF; &lt;br /&gt;
    border-color:#00FFFF;&lt;br /&gt;
    background-image:url(&amp;quot;http://www.hfc-essentials.com/images/code_bg.gif&amp;quot;);&lt;br /&gt;
    background-color:black; &lt;br /&gt;
    border-style:inset;&lt;br /&gt;
    border-width:4px;&lt;br /&gt;
    background-size:cover;&lt;br /&gt;
    padding:10px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_contents_box {&lt;br /&gt;
    border-style:ridge; &lt;br /&gt;
    border-color:#3ADF00; &lt;br /&gt;
    background-color:#F0FFF0; &lt;br /&gt;
    border-width:5px; &lt;br /&gt;
    padding:5px 5px;&lt;br /&gt;
}&lt;br /&gt;
.plugin_headline_text {&lt;br /&gt;
    font-family:&amp;quot;Trebuchet MS&amp;quot;, Helvetica, sans-serif;&lt;br /&gt;
    font-size:115%;&lt;br /&gt;
    color:#551A8B;&lt;br /&gt;
}&lt;br /&gt;
.plugin_return_text {&lt;br /&gt;
    font-family:&amp;quot;Lucida Console&amp;quot;, Monaco, monospace;&lt;br /&gt;
    font-size:105%;&lt;br /&gt;
    border-bottom:1px dotted #003200;&lt;br /&gt;
    color:blue;&lt;br /&gt;
}&lt;br /&gt;
@keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;br /&gt;
@-webkit-keyframes color-change {&lt;br /&gt;
    0% { color: #006; border-color: #006; }&lt;br /&gt;
    20% { color: #00C; border-color: #00C; }&lt;br /&gt;
    40% { color: #03F; border-color: #03F; }&lt;br /&gt;
    50% { color: #06F; border-color: #06F; }&lt;br /&gt;
    60% { color: #03F; border-color: #03F; }&lt;br /&gt;
    80% { color: #00C; border-color: #00C; }&lt;br /&gt;
    100% { color: #006; border-color: #006; }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Adultery</name></author>
	</entry>
</feed>