HU/SetElementBoneQuaternion

From Multi Theft Auto: Wiki
Jump to navigation Jump to search

ADDED/UPDATED IN VERSION 1.6.0 r22741:

Ezzel a függvénnyel meghatározhatod, hogy egy adott csont hogyan forogjon az elemhez képest.
Ebben az esetben a kvaterniók használata hatékonyabb, és nem okoz olyan problémákat, mint például a gimbal zár, amely az Euler-szögekkel kapcsolatban felmerülhet, ezért előnyösebb választás a forgatáshoz.


[[{{{image}}}|link=|]] Tip: Ha egy elemet szeretnél egy csonthoz rögzíteni, nézd meg ezt a függvényt: attachElementToBone.
[[{{{image}}}|link=|]] Note: Ha alkalmazni szeretnéd a forgatást, akkor az updateElementRpHAnim-t meg kell hívni e függvény után.

Szintaxis

bool setElementBoneQuaternion(element ped, int bone, float x, float y, float z, float w)
Cayley-gráf bemutatja a hat ciklussal való szorzást: i, j és k.

Argumentumok

  • ped: Az element (ped vagy játékos), amelyen a csont forgása be lesz állítva.
  • bone: A csont azonosítója a forgatás beállításához.
  • A csontazonosító bizonyos testrészeknek felel meg, mint például a karok, lábak, gerinc, fej stb.
  • A csontok teljes listája a Bone IDs hivatkozásban található.
  • x: Az 𝑖 komponens kvaterniójának együtthatója.
  • Az x tengely körüli elforgatást jelöli, és a kvaternió első képzeletbeli része.
  • y: A 𝑗 komponens kvaterniójának együtthatója.
  • Az y tengely körüli forgást jelenti, és a kvaternió második képzeletbeli része.
  • z: A 𝑘 komponens kvaterniójának együtthatója.
  • A z tengely körüli forgást jelenti, és a kvaternió harmadik képzeletbeli része.
  • w: A kvaternió valódi eleme.
  • A kvaternió skaláris részét jelöli, amely a forgásszöghez kapcsolódik.
  • A w érték a teljes elforgatási szögként meghatározott elforgatási szög felének koszinuszából származik.

Visszaadás

Igaz értéket ad vissza, ha a beállítás sikeres volt, ellenkező esetben hibaüzenetet ad vissza, és hamis értéket ad vissza.

Példa

Ez a példa a játékos medencecsontját 180 fokkal elforgatja egy tetszőleges tengely körül.
Emellett az updateElementRpHAnim használata itt szükséges, mivel ez alkalmazza a forgatást.

local playerBone = 1
local playerBoneX, playerBoneY, playerBoneZ = 0.577, 0.577, 0.577
local playerBoneW = 0

addEventHandler("onClientPedsProcessed", root,
    function()
        setElementBoneQuaternion(localPlayer, playerBone, playerBoneX, playerBoneY, playerBoneZ, playerBoneW)
        updateElementRpHAnim(localPlayer)
    end
)

Lásd még

ADDED/UPDATED IN VERSION 1.6.0 r22741:
ADDED/UPDATED IN VERSION 1.6.0 r22741: