Hi! Is someone know how could I check the player group in Javascript? I tried many option but none of them worked

First try:

async function main() {
    const Player = GetPlayerServerId();
    const group  = GetPlayerGroup(Player);

    console.log(group + ' group');

    await Delay(1000)
    main()
}

Its keep spamming 1 group

script:xyz > 1 group
script:xyz > 1 group

Second try:

emitNet('xyz', (UserGroup) => LastUserGroup = UserGroup, console.log(LastUserGroup))

Server.lua:

ESX.RegisterServerCallback('xyz', function(source, cb, UserGroup)
    local xPlayer = ESX.GetPlayerFromId(source)
    UserGroup = xPlayer.getGroup()

    cb(UserGroup)
end)

Its spamming undefined

Please is someone knows what i did wrong then tell me or help me check this bcs i hate javascript. Thanks! :smiley:

What are you expecting a ‘player group’ to do? The native you’re calling is not related to your ‘ESX’ groups at all.

I already wrote my solution. If someone don’t know here it is:

server.lua


TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)

ESX.RegisterServerCallback('xyz:getGroup', function(source, cb , UserGroup)
    local xPlayer = ESX.GetPlayerFromId(source)
    UserGroup = xPlayer.getGroup()

    cb(UserGroup)
end)

client.js

let ESX = null
emit("esx:getSharedObject", (obj) => ESX = obj)
let groupName

setTick(() => {
        if (IsDisabledControlJustPressed(0, xyz) && GetLastInputMethod(0) === 1) {
            ESX.TriggerServerCallback('xyz:GetGroup', (UserGroup) => {           
                groupName = UserGroup
                
            xyz
            })
        }
});

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.