# getElementBoneQuaternion (Client)

> Returns the orientation of a ped's or object's bone relative to its parent bone, as a quaternion.

- **Platform**: MY Multiplayer (MYMP)
- **Kind**: Lua Function
- **Side**: Client
- **Category**: Components and bones
- **URL**: https://wiki.mymp.gg/en/getElementBoneQuaternion

## Syntax

```lua
quat|false getElementBoneQuaternion(ped|object element, int|string bone)
```

## Parameters

| Name | Type | Description |
| --- | --- | --- |
| `element` | `ped\|object` | The ped, player or object. An object needs a model with a skeleton or a node tree. |
| `bone` | `int\|string` | The bone. On a ped: an MTA bone id, a rig bone's tag or its name. On an object: a node's name or a bone's tag. |

## Returns

A `quat` (`x, y, z, w`), or `false` if the element is streamed out or the bone has no pose.

## Example

```lua
local saved = getElementBoneQuaternion(localPlayer, 5)

addEventHandler("onClientPedsProcessed", root, function()
    if saved then
        setElementBoneQuaternion(localPlayer, 5, saved)
    end
end)
```

### Coming from MTA

In MTA it works on peds only and returns four numbers. Here it also takes objects and rig bones by tag or name.

### Note

Raises an error if the element has no such bone. While the element is streamed out, it returns `false`.

## See also

- [setElementBoneQuaternion (Client)](https://wiki.mymp.gg/en/setElementBoneQuaternion.md): Sets the orientation of a ped's or object's bone relative to its parent bone, as a quaternion. The change applies on this client only.
- [getElementBoneRotation (Client)](https://wiki.mymp.gg/en/getElementBoneRotation.md): Returns the rotation of a ped's or object's bone relative to its parent bone, in degrees.
