DetachElementFromElement

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Emblem-important.png This function is deprecated. This means that its use is discouraged and that it might not exist in future versions.

Please use detachElements instead.


This function detaches attached elements from one another.

Syntax

bool detachElementFromElement ( element theElement, [ element theAttachToElement ] )

Required Arguments

  • theElement: The element to be detached (the "child")

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.

  • theAttachToElement: The element you wish to detach from, will detach from the attached element if this isn't specified.

Returns

Returns true if the detaching was successful, false otherwise.

Example

Example 1: This example attaches a marker to a vehicle, and detaches it when it blows up:

function attachMarkerToVehicle ( theVehicle )
    -- create the marker to attach
    local arrowMarker = createMarker ( 0, 0, 0, "arrow", 1.5, 0, 0, 255, 255 )
    -- attach the marker above the vehicle
    attachElementToElement ( arrowMarker, theVehicle, 0, 0, 2 )
    -- add an event handler for when the vehicle blows up
    addEventHandler ( "onVehicleExplode", theVehicle, "onMarkedCarExplode" )
end

function onMarkedCarExplode ()
    -- get the elements attached to the vehicle
    local attachedElements = getAttachedElements ( source )
    -- loop through the table of elements
    for i,v in ipairs ( attachedElements ) do
        -- detach the element from the vehicle
        detachElementFromElement ( v, source )
    end
    -- remove the event handler
    removeEventHandler ( "onVehicleExplode", source, "onMarkedCarExplode" )
end

Example 2: This function will detach any elements that might have been attached to the passed element:

function freeElement( theElement )
      if ( isElementAttached( theElement ) ) then --If the specified element is attached to something
            detachElementFromElement( theElement ) --Detach it.
      else
            outputChatBox( "Element is not attached" ) --If not, say it wasn't attached in the first place.
      end
end

See Also