Skip to content

st.emoteHandler — Emote / Animation (Client) ​

Plays animations, walk styles, and facial expressions on the local player ped.

lua
---@param type string    'walks' | 'expressions' | any (defaults to emote)
---@param data table     Animation data
---@param ignoreNui boolean?  Skip NUI focus check
st.emoteHandler(type, data, ignoreNui)

Emote data structure:

lua
{
    dict = 'anim@mp_player_intcelebrationmale@waving',
    anim = 'waving',
    options = {
        loop    = true,    -- loop animation
        moving  = false,   -- allow movement
        stuck   = false,   -- freeze in place
        duration = 5000,   -- ms, -1 for infinite
        prop    = 'prop_beer_bottle',
        bone    = 57005,   -- bone index
        placement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },  -- offset + rotation
    }
}

Walk style:

lua
st.emoteHandler('walks', { name = 'move_m@drunk@verydrunk' })

Facial expression:

lua
st.emoteHandler('expressions', { name = 'mood_happy_1', dict = 'facials@gen_male@base' })