SetElementParent: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Fix oop syntax)
 
(15 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{Server client function}}
__NOTOC__  
__NOTOC__  
This function is used for setting an element as the parent of another element.
This function is used for setting an element as the parent of another element.
 
{{Important Note|The client-side version of this function can only be used on client-created elements. It cannot be used to modify the parent of server side elements.}}
{{Note|This function does not change when an element will be destroyed - Elements are always destroyed when the resource that created them is stopped.}}
{{Note|When an element is destroyed, its parent becomes the new parent of its children.}}
{{Note|setElementParent only works if new parent is the root element, map root, or ancestor of map root}}
{{Tip|This function does not affect the child elements position. To attach elements use the function [[attachElements]].}}
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool setElementParent ( element theElement, element parent )   
bool setElementParent ( element theElement, element parent )   
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[element]]:setParent|parent|getElementParent}}


===Required Arguments===  
===Required Arguments===  
Line 12: Line 18:


===Returns===
===Returns===
Returns ''true'' if both [[elements]] are valid, ''false'' otherwise.
Returns ''true'' if both [[element]]s are valid, ''false'' otherwise.


==Example==  
==Example==  
<section name="Server" class="server" show="true">
This example sets the parent of each spawnpoint to a dummy element:
This example sets the parent of each spawnpoint to a dummy element:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
dummyElem = createElement ( "spawngroup", "Group of spawn points" ) -- create a dummy element
dummyElem = createElement ( "spawngroup", "Group of spawn points" ) -- create a dummy element
local spawnpoints = getElementsByType ( "spawnpoint" ) -- get a table of spawn point elements
local spawnpoints = getElementsByType ( "spawnpoint" ) -- get a table of spawn point elements
for k,v in spawnpoints do -- loop through the table of spawn points
for k,v in ipairs (spawnpoints) do -- loop through the table of spawn points
   setElementParent ( v, dummyElem ) -- set the dummy element as the parent of the spawn point
   setElementParent ( v, dummyElem ) -- set the dummy element as the parent of the spawn point
end
end
Line 26: Line 33:


This is the equivalent of:
This is the equivalent of:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="xml">
<spawngroup id="Group of spawn points">
<spawngroup id="Group of spawn points">
   <spawnpoint id="spawnpoint_0" posX="2507.8715820313" posY="2772.6071777344" posZ="10.8203125" rot="270" skin="285"/>
   <spawnpoint id="spawnpoint_0" posX="2507.8715820313" posY="2772.6071777344" posZ="10.8203125" rot="270" skin="285"/>
Line 33: Line 40:
   <spawnpoint id="spawnpoint_3" posX="2510.6899414063" posY="2778.3745117188" posZ="10.8203125" rot="270" skin="285"/>
   <spawnpoint id="spawnpoint_3" posX="2510.6899414063" posY="2778.3745117188" posZ="10.8203125" rot="270" skin="285"/>
</spawngroup></syntaxhighlight>
</spawngroup></syntaxhighlight>
</section>


==See Also==
==See Also==
{{element functions}}
{{element functions}}

Latest revision as of 13:51, 6 August 2016

This function is used for setting an element as the parent of another element.

[[{{{image}}}|link=|]] Important Note: The client-side version of this function can only be used on client-created elements. It cannot be used to modify the parent of server side elements.
[[{{{image}}}|link=|]] Note: This function does not change when an element will be destroyed - Elements are always destroyed when the resource that created them is stopped.
[[{{{image}}}|link=|]] Note: When an element is destroyed, its parent becomes the new parent of its children.
[[{{{image}}}|link=|]] Note: setElementParent only works if new parent is the root element, map root, or ancestor of map root
[[{{{image}}}|link=|]] Tip: This function does not affect the child elements position. To attach elements use the function attachElements.

Syntax

bool setElementParent ( element theElement, element parent )  

OOP Syntax Help! I don't understand this!

Method: element:setParent(...)
Variable: .parent
Counterpart: getElementParent


Required Arguments

  • theElement: The element that you wish to set the parent of.
  • parent: The element you wish to be the parent of theElement.

Returns

Returns true if both elements are valid, false otherwise.

Example

Click to collapse [-]
Server

This example sets the parent of each spawnpoint to a dummy element:

dummyElem = createElement ( "spawngroup", "Group of spawn points" ) -- create a dummy element
local spawnpoints = getElementsByType ( "spawnpoint" ) -- get a table of spawn point elements
for k,v in ipairs (spawnpoints) do -- loop through the table of spawn points
   setElementParent ( v, dummyElem ) -- set the dummy element as the parent of the spawn point
end
-- all of the spawn points are now children of 'dummyElem'

This is the equivalent of:

<spawngroup id="Group of spawn points">
   <spawnpoint id="spawnpoint_0" posX="2507.8715820313" posY="2772.6071777344" posZ="10.8203125" rot="270" skin="285"/>
   <spawnpoint id="spawnpoint_1" posX="2508.060546875" posY="2780.3647460938" posZ="10.8203125" rot="270" skin="285"/>
   <spawnpoint id="spawnpoint_2" posX="2508.0053710938" posY="2776.2897949219" posZ="10.8203125" rot="270" skin="285"/>
   <spawnpoint id="spawnpoint_3" posX="2510.6899414063" posY="2778.3745117188" posZ="10.8203125" rot="270" skin="285"/>
</spawngroup>

See Also