GetElementBoneRotation: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 32: | Line 32: | ||
addCommandHandler ("getbonerotation", getBoneRotation) | addCommandHandler ("getbonerotation", getBoneRotation) | ||
local settings = { | |||
copyDiscord = false; -- true = "sim / yes" // false = "não / no" - Copiar para colar a tabela no discord / | |||
Copy to paste table in discord. | |||
tableName = "bonesPos"; -- Nome da tabela que será copiado / | |||
Table name to be copied. | |||
} | |||
local boneIDs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 21, 22, 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, 41, 42, 43, 44, 51, 52, 53, 54, 201, 301, 302} | |||
addCommandHandler ("getbonerotation", function () | |||
local bonesPositions = { } | |||
local bonesConverted = "" | |||
for _, v in ipairs (boneIDs) do | |||
local x, y, z = getElementBoneRotation (localPlayer, v) | |||
table.insert (bonesPositions, "["..v.."] = {"..x..", "..y..", "..z.."};") | |||
end | |||
for i, v in ipairs (bonesPositions) do | |||
bonesConverted = " "..bonesConverted.."\n".." "..v | |||
end | |||
setClipboard ((settings["copyDiscord"] and "```lua\nlocal "..string.gsub(settings["tableName"], " ", "_").." = {"..bonesConverted.."\n}\n```" or "local "..string.gsub(settings["tableName"], " ", "_").." = {"..bonesConverted.."\n}")) | |||
outputChatBox (settings["messageSend"]) | |||
end) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 18:25, 11 December 2021
Returns the orientation of a specific bone relative to the element. Currently the Player and Ped element types are accepted.
Tip: If you want to attach an element to a bone, see attachElementToBone. |
Syntax
float, float, float getElementBoneRotation ( element theElement, int boneId )
Required Arguments
- theElement: the element to get the bone rotation on.
- boneId: the ID of the bone to get the rotation of. See Bone IDs.
Returns
Returns 3 floats, representing the yaw, pitch, roll rotation values.
Example
This example outputs the yaw, pitch and roll orientation of a specific bone relative to the local player bone specified through a command:
function getBoneRotation (commandName, boneId) if not tonumber (boneId) then outputChatBox ("You didn't insert an bone ID!", 255, 0, 0) return false end local x, y, z = getElementBoneRotation (localPlayer, boneId) outputChatBox ("The bone rotation is: "..x..", "..y..", "..z) end addCommandHandler ("getbonerotation", getBoneRotation) local settings = { copyDiscord = false; -- true = "sim / yes" // false = "não / no" - Copiar para colar a tabela no discord / Copy to paste table in discord. tableName = "bonesPos"; -- Nome da tabela que será copiado / Table name to be copied. } local boneIDs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 21, 22, 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, 41, 42, 43, 44, 51, 52, 53, 54, 201, 301, 302} addCommandHandler ("getbonerotation", function () local bonesPositions = { } local bonesConverted = "" for _, v in ipairs (boneIDs) do local x, y, z = getElementBoneRotation (localPlayer, v) table.insert (bonesPositions, "["..v.."] = {"..x..", "..y..", "..z.."};") end for i, v in ipairs (bonesPositions) do bonesConverted = " "..bonesConverted.."\n".." "..v end setClipboard ((settings["copyDiscord"] and "```lua\nlocal "..string.gsub(settings["tableName"], " ", "_").." = {"..bonesConverted.."\n}\n```" or "local "..string.gsub(settings["tableName"], " ", "_").." = {"..bonesConverted.."\n}")) outputChatBox (settings["messageSend"]) end)
Requirements
This template will be deleted.
See Also
- getElementBoneMatrix
- getElementBonePosition
- getElementBoneRotation
- getElementBoundingBox
- getElementDistanceFromCentreOfMassToBaseOfModel
- getElementLighting
- getElementRadius
- isElementCollidableWith
- isElementLocal
- isElementOnScreen
- isElementStreamable
- isElementStreamedIn
- isElementSyncer
- isElementWaitingForGroundToLoad
- setElementBoneMatrix
- setElementBonePosition
- setElementBoneRotation
- setElementCollidableWith
- setElementStreamable
- updateElementRpHAnim
- Shared
- 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