AttachElementToElement
Jump to navigation
Jump to search
This article needs checking. | |
Reason(s): What kinds of elements can be attached together? --jbeta |
This function attaches one element to another, so that the first one follows the second whenever it moves.
This is not compatible with all elements. The following elements are compatible:
Syntax
bool attachElementToElement ( element theElement, element theAttachToElement, [ float xPosOffset, float yPosOffset, float zPosOffset, float xRotOffset, float yRotOffset, float zRotOffset ] )
Required Arguments
- theElement: The element to be attached.
- theAttachToElement: The element to attach the first to.
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.
- xPosOffset: The x offset, if you want the elements to be a certain distance from one another (default 0).
- yPosOffset: The y offset (default 0).
- zPosOffset: The z offset (default 0).
- xRotOffset: The x offset (default 0).
- yRotOffset: The y offset (default 0).
- zRotOffset: The z offset (default 0).
Rotations are in radians.
Returns
Returns true if the attaching process was successful, false otherwise.
Example
Click to collapse [-]
ServerExample 1: This example attaches a marker to the player who steals the Mr. Whoopee:
-- create the vehicle local vehicleMrWhoopee = createVehicle ( 423, 237.472 -54.225 1.518, 0, 354.488, 0 ) function onMrWhoopeeEnter ( thePlayer, seat, jackedPlayer ) outputChatBox ( getClientName ( thePlayer ) .. " stole the Whoopee!", getRootElement (), 255, 0, 0 ) -- create the marker to attach local arrowMarker = createMarker ( 0, 0, 0, "arrow", .75, 255, 0, 0, 170 ) -- attach the marker to the player with a vertical offset of 2 units attachElementToElement ( arrowMarker, thePlayer, 0, 0, 2 ) end -- attach it to an event addEventHandler ( "onVehicleEnter", vehicleMrWhoopee, onMrWhoopeeEnter )
Example 2: This function adds a tank on top of a player (for extra defense):
function tankHat( source, commandName ) local x, y, z = getElementPosition( source ) --Get the players position local tank = createVehicle( 432, x, y, z + 5 ) --Create a tank attachElementToElement( tank, source, 0, 0, 5 ) --Attach the tank to the player. end addCommandHandler( "hat", tankHat )
Click to expand [+]
ClientSee 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