GetElementChild: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
 
m (|)
 
(14 intermediate revisions by 7 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
This fake function is for use with blah & blah and does blahblahblabhalbhl
{{Server client function}}
 
This function returns one of the child elements of a given parent element. The child element is selected by its index (0 for the first child, 1 for the second and so on).
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element getElementChild ( element parent, int index )  
element getElementChild ( element parent, int index )  
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[element]]:getChild||}}


===Required Arguments===  
===Required Arguments===  
*'''argumentName:''' description
*'''parent:''' the element above the one to be returned in the hierarchy.
 
*'''index:''' the element's index (0 for the first element, 1 for the second, etc).
===Optional Arguments===
{{OptionalArg}}
*'''argumentName2:''' descriptiona
*'''argumentName3:''' description


===Returns===
===Returns===
Returns ''true'' if blah, ''false'' otherwise.
Returns the requested element if it exists, or ''false'' if it doesn't.


==Example==  
==Example==
This example does...
If the .map file contains:
<syntaxhighlight lang="xml">
<team1 id="red">
<base name="Mountain Top" />
<base name="Docks" />
<base name="Airport" />
</team1>
</syntaxhighlight>
This outputs the name of the specified base. For example: 'teamBase 0' for the first base.  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--This line does...
function showTeamBase(thePlayer, command, index)
blabhalbalhb --abababa
local theTeam = getElementByID("red")                  -- get the team element
--This line does this...
local base = getElementChild(theTeam, tonumber(index))  -- get the Child of the element, based on the 'index' the player specified.
mooo
if (base ~= false) then                                -- if the base exists
outputChatBox("Team base " .. index .. ": " .. getElementData(base, "name"), thePlayer)  -- output it to the player
else
outputChatBox("Base not found.", thePlayer)
end
end
addCommandHandler("teamBase", showTeamBase)
</syntaxhighlight>
 
Note that if there are other child elements, you'd have to check whether the element is a base with the [[getElementType]] function. For example: 'teamBase 3' would output 'Team Base 3: Factory' with the .map file below, even though it's no base.
 
<syntaxhighlight lang="xml">
<team1 id="red">
<base name="Mountain Top" />
<base name="Docks" />
<base name="Airport" />
<target name="Factory" />
</team1>
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
{{FunctionArea_Functions}}
{{Element_functions}}

Latest revision as of 03:29, 1 January 2015

This function returns one of the child elements of a given parent element. The child element is selected by its index (0 for the first child, 1 for the second and so on).

Syntax

element getElementChild ( element parent, int index ) 

OOP Syntax Help! I don't understand this!

Method: element:getChild(...)


Required Arguments

  • parent: the element above the one to be returned in the hierarchy.
  • index: the element's index (0 for the first element, 1 for the second, etc).

Returns

Returns the requested element if it exists, or false if it doesn't.

Example

If the .map file contains:

<team1 id="red">
	<base name="Mountain Top" />
	<base name="Docks" />
	<base name="Airport" />
</team1>

This outputs the name of the specified base. For example: 'teamBase 0' for the first base.

function showTeamBase(thePlayer, command, index)
	local theTeam = getElementByID("red")                   -- get the team element
	local base = getElementChild(theTeam, tonumber(index))  -- get the Child of the element, based on the 'index' the player specified.
	if (base ~= false) then                                 -- if the base exists
		outputChatBox("Team base " .. index .. ": " .. getElementData(base, "name"), thePlayer)  -- output it to the player
	else
		outputChatBox("Base not found.", thePlayer)
	end
end
addCommandHandler("teamBase", showTeamBase)

Note that if there are other child elements, you'd have to check whether the element is a base with the getElementType function. For example: 'teamBase 3' would output 'Team Base 3: Factory' with the .map file below, even though it's no base.

<team1 id="red">
	<base name="Mountain Top" />
	<base name="Docks" />
	<base name="Airport" />
	<target name="Factory" />
</team1>

See Also