GetElementChild: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (→Syntax: OOP) |
||
Line 6: | Line 6: | ||
element getElementChild ( element parent, int index ) | element getElementChild ( element parent, int index ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP|This function is also a static function underneath the Element class.|[[element]]:getChild||}} | |||
===Required Arguments=== | ===Required Arguments=== |
Revision as of 16:10, 16 August 2014
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!
- Note: This function is also a static function underneath the Element class.
- 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
- attachElements
- createElement
- destroyElement
- detachElements
- getAttachedElements
- getElementAlpha
- getElementAttachedOffsets
- getElementAttachedTo
- getElementByIndex
- getElementByID
- getElementChild
- getElementChildren
- getElementChildrenCount
- getElementCollisionsEnabled
- getElementColShape
- getElementData
- getAllElementData
- hasElementData
- getElementDimension
- getElementHealth
- getElementID
- getElementInterior
- getElementMatrix
- getElementModel
- getElementParent
- getElementPosition
- getElementRotation
- getElementsByType
- getElementsWithinColShape
- getElementsWithinRange
- getElementType
- getElementVelocity
- getLowLODElement
- getRootElement
- isElement
- isElementAttached
- isElementCallPropagationEnabled
- isElementDoubleSided
- isElementFrozen
- isElementInWater
- isElementLowLOD
- isElementWithinColShape
- isElementWithinMarker
- setElementAlpha
- setElementAngularVelocity
- getElementAngularVelocity
- setElementAttachedOffsets
- setElementCallPropagationEnabled
- setElementCollisionsEnabled
- setElementData
- setElementDimension
- setElementDoubleSided
- setElementFrozen
- setElementHealth
- setElementID
- setElementInterior
- setElementModel
- setElementParent
- setElementPosition
- setElementRotation
- setElementVelocity
- setLowLODElement
- getPedContactElement
- getResourceDynamicElementRoot
- getResourceRootElement