GetResourceRootElement: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Tag: Undo
 
(14 intermediate revisions by 10 users not shown)
Line 1: Line 1:
__NOTOC__  
{{Server client function}}
This function retrieves a resource's root element.
__NOTOC__
This function retrieves a resource's root element. The resource's root element is the element in the element tree which is the parent of all elements that belong to a particular resource (except for elements specifically created elsewhere). You can attach event handlers to this element to easily capture events that originate from your resource (and global events that originate from the root element).
 
Note: every resource has a [[Predefined_variables_list|predefined global variable]] called ''resourceRoot'' whose value is the root element of that resource.


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element getResourceRootElement ( resource theResource )  
element getResourceRootElement ( [resource theResource=getThisResource()] )
</syntaxhighlight>  
</syntaxhighlight>
 
{{OOP||[[resource]]:getRootElement|rootElement}}
===Required Arguments===  
===Optional Arguments===
*'''theResource:''' the resource whose root element we are getting.
{{OptionalArg}}
*'''theResource:''' the resource whose root element we are getting. If not specified, assumes the current resource. (the resource returned from [[getThisResource]])


===Returns===
===Returns===
Line 14: Line 18:


==Example==
==Example==
<section name="Server" class="server" show="true">
This example retrieves the current resource's root element and attaches it to an onResourceStart event handler. This causes the event handler to get called only when the ''current'' resource is started rather than when ''any'' resource is started, thereby reducing unnecessary overhead.
This example retrieves the current resource's root element and attaches it to an onResourceStart event handler. This causes the event handler to get called only when the ''current'' resource is started rather than when ''any'' resource is started, thereby reducing unnecessary overhead.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
-- get the root element of this resource (the resource that the script is a part of)
-- get the root element of this resource (the resource that the script is a part of)
resourceRoot = getResourceRootElement(getThisResource())
resourceRoot = getResourceRootElement()


-- create a function to handle the onResourceStartEvent
-- create a function to handle the onResourceStart event
function onCurrentResourceStart(theResource)
function onCurrentResourceStart(theResource)
  local resourceName = getResourceName(theResource)
    local resourceName = getResourceName(theResource)
  outputChatBox("Hello and welcome to " .. resourceName .. "!")
    outputChatBox("Hello and welcome to " .. resourceName .. "!")
end
end


Line 28: Line 33:
addEventHandler("onResourceStart", resourceRoot, onCurrentResourceStart)
addEventHandler("onResourceStart", resourceRoot, onCurrentResourceStart)
</syntaxhighlight>
</syntaxhighlight>
</section>


==See Also==
==See Also==
{{Resource_functions}}
{{Resource_functions}}

Latest revision as of 18:38, 17 December 2023

This function retrieves a resource's root element. The resource's root element is the element in the element tree which is the parent of all elements that belong to a particular resource (except for elements specifically created elsewhere). You can attach event handlers to this element to easily capture events that originate from your resource (and global events that originate from the root element).

Note: every resource has a predefined global variable called resourceRoot whose value is the root element of that resource.

Syntax

element getResourceRootElement ( [resource theResource=getThisResource()] )

OOP Syntax Help! I don't understand this!

Method: resource:getRootElement(...)
Variable: .rootElement


Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • theResource: the resource whose root element we are getting. If not specified, assumes the current resource. (the resource returned from getThisResource)

Returns

Returns an element representing the resource's root, false if the specified resource doesn't exist.

Example

Click to collapse [-]
Server

This example retrieves the current resource's root element and attaches it to an onResourceStart event handler. This causes the event handler to get called only when the current resource is started rather than when any resource is started, thereby reducing unnecessary overhead.

-- get the root element of this resource (the resource that the script is a part of)
resourceRoot = getResourceRootElement()

-- create a function to handle the onResourceStart event
function onCurrentResourceStart(theResource)
    local resourceName = getResourceName(theResource)
    outputChatBox("Hello and welcome to " .. resourceName .. "!")
end

-- add the event handler
addEventHandler("onResourceStart", resourceRoot, onCurrentResourceStart)

See Also