Revision Difference
Entity:GetBonePosition#527006
<function name="GetBonePosition" parent="Entity" type="classfunc">
<description>
Returns the position and angle of the given attachment, relative to the world.
<warning>This function can return entity's `GetPos()` instead if the entity doesn't have it's bone cache set up.</warning>⤶
<warning>This function can return entity's `GetPos()` instead if the entity doesn't have it's bone cache set up.⤶
⤶
To ensure the bone position is correct use this:⤶
```lua⤶
local pos = ent:GetBonePosition(0)⤶
if pos == ent:GetPos() then⤶
pos = ent:GetBoneMatrix(0):GetTranslation()⤶
end⤶
```⤶
</warning>⤶
<bug issue="884">This can return the server's position during server lag.</bug>
<bug issue="3285">This can return garbage serverside or <page>Global.Vector</page>(0,0,0) for v49 models.</bug>
<bug issue="3739">This can return garbage if a trace passed through the target bone during bone matrix access.</bug>
</description>
<realm>Shared</realm>
<args>
<arg name="boneIndex" type="number">The bone index of the bone to get the position of. See <page>Entity:LookupBone</page>.</arg>
</args>
<rets>
<ret name="" type="Vector">The bone's position relative to the world. It can return nothing if the requested bone is out of bounds, or the entity has no model.</ret>
<ret name="" type="Angle">The bone's angle relative to the world.</ret>
</rets>
</function>