GetThisResource: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (→‎Example: Fixed)
No edit summary
Line 1: Line 1:
{{Server client function}}
{{Server client function}}
{{Needs_Checking|Example lacks this function?}}
{{Needs_Checking|Example lacks this function? (Fixed by Qais)}}
__NOTOC__
__NOTOC__
This function retrieves the resource from which the function call was made.
This function retrieves the resource from which the function call was made.
Line 22: Line 22:
--"resource" as explained in the note above.  
--"resource" as explained in the note above.  


-- create a function to handle the onResourceStart event
-- create a function to handle the command
function onCurrentResourceStart(theResource)
function onResourceCommand(theResource)
  local thisResource = getThisResource()
   local resourceName = getResourceName(theResource)
   local resourceName = getResourceName(theResource)
   outputChatBox("Hello and welcome to " .. resourceName .. "!")
   outputChatBox("You are in the " .. resourceName .. " resource!")
end
end


-- add the event handler
-- add the event handler
addEventHandler("onResourceStart", resourceRoot, onCurrentResourceStart)
addCommandHandler("what", resourceRoot, onResourceCommand)
</syntaxhighlight>
</syntaxhighlight>


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

Revision as of 06:22, 30 July 2011

Dialog-information.png This article needs checking.

Reason(s): Example lacks this function? (Fixed by Qais)

This function retrieves the resource from which the function call was made.

Note: every resource has a predefined global variable called resource that contains the resource pointer for that resource, in other words, the value that this function returns.

Syntax

resource getThisResource ( )

Returns

Returns the resource in which the current script is.

Example

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(getThisResource()) 
--getThisResource() is the same thing as MTA's secret global variable 
--"resource" as explained in the note above. 

-- create a function to handle the command
function onResourceCommand(theResource)
   local thisResource = getThisResource()
   local resourceName = getResourceName(theResource)
   outputChatBox("You are in the " .. resourceName .. " resource!")
end

-- add the event handler
addCommandHandler("what", resourceRoot, onResourceCommand)

See Also