<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.rage.mp/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sander</id>
	<title>RAGE Multiplayer Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rage.mp/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sander"/>
	<link rel="alternate" type="text/html" href="https://wiki.rage.mp/wiki/Special:Contributions/Sander"/>
	<updated>2026-06-04T03:20:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Keys::isDown&amp;diff=27451</id>
		<title>Keys::isDown</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Keys::isDown&amp;diff=27451"/>
		<updated>2025-01-15T12:56:18Z</updated>

		<summary type="html">&lt;p&gt;Sander: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Function to check if specific key is pressed down.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;mp.keys.isDown(keyCode);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Argument===&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
&lt;br /&gt;
===Return Value===&lt;br /&gt;
* {{RageType|Boolean}} - &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the key specified is pressed, Otherwise &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
An interval that runs every 100ms and outputs the state of the key bound. (F2)&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
setInterval(() =&amp;gt; {&lt;br /&gt;
	mp.keys.isUp(0x71)&lt;br /&gt;
		? mp.gui.chat.push(&amp;quot;true&amp;quot;)&lt;br /&gt;
		: mp.gui.chat.push(&amp;quot;false&amp;quot;);&lt;br /&gt;
}, 100);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Control]]&lt;br /&gt;
[[Category:Client-side Function]]&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Keys::isUp&amp;diff=27450</id>
		<title>Keys::isUp</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Keys::isUp&amp;diff=27450"/>
		<updated>2025-01-15T12:55:05Z</updated>

		<summary type="html">&lt;p&gt;Sander: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Function to check if specific key is released. &lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;mp.keys.isUp(keyCode);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Argument===&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
&lt;br /&gt;
===Return Value===&lt;br /&gt;
* {{RageType|Boolean}} - &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the key specified is released, otherwise &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
An interval that runs every 100ms and outputs the state of the key bound. (F2)&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
setInterval(() =&amp;gt; {&lt;br /&gt;
	mp.keys.isUp(0x71)&lt;br /&gt;
		? mp.gui.chat.push(&amp;quot;false&amp;quot;)&lt;br /&gt;
		: mp.gui.chat.push(&amp;quot;true&amp;quot;);&lt;br /&gt;
}, 100);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Control]]&lt;br /&gt;
[[Category:Client-side Function]]&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=27449</id>
		<title>Key::bind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=27449"/>
		<updated>2025-01-15T12:48:22Z</updated>

		<summary type="html">&lt;p&gt;Sander: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ClientsideJsFunction}}&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
This function binds the key.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
* &#039;&#039;&#039;keydown/keyup&#039;&#039;&#039; - true trigges on keydown, false triggers on keyup (bool)&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - function-handler.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example calling server event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
/** binds F2 to this inline arrow function */&lt;br /&gt;
mp.keys.bind(0x71, true, () =&amp;gt; {&lt;br /&gt;
	mp.gui.chat.push(&amp;quot;F2 was pressed&amp;quot;)&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Keys::unbind&amp;diff=27448</id>
		<title>Keys::unbind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Keys::unbind&amp;diff=27448"/>
		<updated>2025-01-15T12:46:03Z</updated>

		<summary type="html">&lt;p&gt;Sander: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function unbinds the key.&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - Code of key (Hexadecimal).&lt;br /&gt;
* &#039;&#039;&#039;keyhold&#039;&#039;&#039; - Unbind the binds with keyhold-value.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - Only unbind this handler.&lt;br /&gt;
&lt;br /&gt;
[https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 Keycodes can be found here]&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function handler() {&lt;br /&gt;
	mp.gui.chat.push(&amp;quot;F2 was pressed&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function toggle_keybind(state) {&lt;br /&gt;
	state&lt;br /&gt;
		? mp.keys.bind(0x71, true, handler); /** binds F2 to the handler fn */&lt;br /&gt;
		: mp.keys.unbind(0x71, true, handler);  /** unbinds the handler from F2 key */&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=RAGE.Ui.HtmlWindow&amp;diff=27446</id>
		<title>RAGE.Ui.HtmlWindow</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=RAGE.Ui.HtmlWindow&amp;diff=27446"/>
		<updated>2025-01-04T02:10:54Z</updated>

		<summary type="html">&lt;p&gt;Sander: Add link to package protocol&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Creates a new browser.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;class RAGE.Ui.HtmlWindow;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{CSharpContainer|&lt;br /&gt;
{{Example}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C#&amp;quot;&amp;gt;&lt;br /&gt;
RAGE.Ui.HtmlWindow CEF;&lt;br /&gt;
&lt;br /&gt;
public void createBrowser(bool toggle, string way)&lt;br /&gt;
{&lt;br /&gt;
    CEF = new RAGE.Ui.HtmlWindow(way); // Creating of browser ( way = &amp;quot;package://cs_packages/test.html&amp;quot; )&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public void activateBrowser(bool toggle)&lt;br /&gt;
{&lt;br /&gt;
    CEF.Active = toggle; // Activating of browser&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public void urlBrowser(string url)&lt;br /&gt;
{&lt;br /&gt;
    CEF.Url = url; // Changing url of browser&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
See [[Package Protocol]] for more info on the &amp;lt;code&amp;gt;package://&amp;lt;/code&amp;gt; url.&lt;br /&gt;
&lt;br /&gt;
[[Category:Clientside API]]&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=RAGE.Ui.HtmlWindow.Active&amp;diff=27445</id>
		<title>RAGE.Ui.HtmlWindow.Active</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=RAGE.Ui.HtmlWindow.Active&amp;diff=27445"/>
		<updated>2025-01-04T02:10:04Z</updated>

		<summary type="html">&lt;p&gt;Sander: Add link to package protocol&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;bool HtmlWindow.Active { get; set; }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{CSharpContainer|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C#&amp;quot;&amp;gt;&lt;br /&gt;
HtmlWindow CEF = new HtmlWindow(&amp;quot;http://package/index.html&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
private void openUI() {&lt;br /&gt;
    CEF.Active = true;&lt;br /&gt;
    Rage.Ui.Cursor.Visible = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private void closeUI() {&lt;br /&gt;
    CEF.Active = false;&lt;br /&gt;
    Rage.Ui.Cursor.Visible = false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
See [[Package Protocol]] for more info on the &amp;lt;code&amp;gt;package://&amp;lt;/code&amp;gt; url.&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Browser::Browser&amp;diff=27444</id>
		<title>Browser::Browser</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Browser::Browser&amp;diff=27444"/>
		<updated>2025-01-04T02:06:44Z</updated>

		<summary type="html">&lt;p&gt;Sander: Update broken package path&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Function&#039;&#039;&#039;: Creates a browser&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;URL&#039;&#039;&#039;: {{RageType|String}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.browsers.new(url);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.events.add(&#039;playerReady&#039;, () =&amp;gt; {&lt;br /&gt;
    let browser = mp.browsers.new(&amp;quot;http://package/index.html&amp;quot;);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
See [[Package Protocol]] for more info on the &amp;lt;code&amp;gt;package://&amp;lt;/code&amp;gt; url.&lt;br /&gt;
&lt;br /&gt;
U can use browser events: [[BrowserCreated]], [[BrowserLoadingFailed]], [[BrowserDomReady]]&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Browser_definition_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=SendMouseMoveEvent&amp;diff=26757</id>
		<title>SendMouseMoveEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=SendMouseMoveEvent&amp;diff=26757"/>
		<updated>2024-09-16T20:33:29Z</updated>

		<summary type="html">&lt;p&gt;Sander: /* browser.sendMouseMoveEvent(x, y) (Client-Side) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ClientsideJsFunction}}&lt;br /&gt;
{{JSContainer|&lt;br /&gt;
Simulates mouse movement at the specified coordinates within the browser.&lt;br /&gt;
&lt;br /&gt;
=== Required Params ===&lt;br /&gt;
*&#039;&#039;&#039;x:&#039;&#039;&#039; {{RageType|Number}} - X-coordinate of the mouse movement.&lt;br /&gt;
*&#039;&#039;&#039;y:&#039;&#039;&#039; {{RageType|Number}} - Y-coordinate of the mouse movement.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
*&#039;&#039;&#039;void&#039;&#039;&#039; {{RageType|void}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
browser.sendMouseMoveEvent(x, y);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// Example: Simulating mouse movement to (500, 400).&lt;br /&gt;
browser.sendMouseMoveEvent(500, 400);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[Browser Definition]]&lt;br /&gt;
[[Category:Browser API]]&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:Client-side Function]]&lt;br /&gt;
[[Category:Shared Function]]&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=SendMouseMoveEvent&amp;diff=26756</id>
		<title>SendMouseMoveEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=SendMouseMoveEvent&amp;diff=26756"/>
		<updated>2024-09-16T20:32:37Z</updated>

		<summary type="html">&lt;p&gt;Sander: Created page with &amp;quot;== browser.sendMouseMoveEvent(x, y) (Client-Side) ==  &amp;#039;&amp;#039;&amp;#039;Client-side function to simulate mouse movement within a browser.&amp;#039;&amp;#039;&amp;#039;  === Usage: ===  &amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;  // Example: Simulating mouse movement to (500, 400).  browser.sendMouseMoveEvent(500, 400);  &amp;lt;/syntaxhighlight&amp;gt;  === Description: === Simulates mouse movement at the specified coordinates within the browser.  === Parameters: === * &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: X-coordinate of the mouse movement. * &amp;lt;code&amp;gt;y&amp;lt;/c...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== browser.sendMouseMoveEvent(x, y) (Client-Side) ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client-side function to simulate mouse movement within a browser.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Usage: ===&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 // Example: Simulating mouse movement to (500, 400).&lt;br /&gt;
 browser.sendMouseMoveEvent(500, 400);&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description: ===&lt;br /&gt;
Simulates mouse movement at the specified coordinates within the browser.&lt;br /&gt;
&lt;br /&gt;
=== Parameters: ===&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;: X-coordinate of the mouse movement.&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;: Y-coordinate of the mouse movement.&lt;/div&gt;</summary>
		<author><name>Sander</name></author>
	</entry>
</feed>