Jump to content

Brodcast Error


Mr3b

Recommended Posts

i am trying to create a voice mode on teams but i get this error but i don't know why can anyone help please?, thanks.

Bad 'broadcastTo' pointer @ 'setPlayerVoiceBroadcastTo'(2)

here is my code ( only server )

function getTeamPlayers(target)
    local teamTable = {}

    if not (Team.isInTeam(target)) then return false end
    for i, player in ipairs(getElementsByType("player")) do
        
        if (Team.inSameTeam(target, player)) then
            if (player ~= target) then
                if (getElementData(target, "radio")) then
                    table.insert(teamTable, player)
                end
            end
        end
    end

    return teamTable
end

setTimer(function()
    for i, player in ipairs(getElementsByType("player")) do
        setPlayerVoiceBroadcastTo(player, getTeamPlayers(player))
    end
end, 1150, 0)

function radioON(thePlayer)
    setElementData(thePlayer, "radio", true)
end

function radioOFF(thePlayer)
    setElementData(thePlayer, "radio", false)
end

function bindKeyJoin()
    bindKey(source, "/", "down", radioON)
    bindKey(source, "/", "up", radioOFF)
end
addEventHandler('onPlayerJoin', root, bindKeyJoin)

function bindKeyOnStart()
    for i, player in pairs(getElementsByType("player")) do
        bindKey(player, "/", "down", radioON)
        bindKey(player, "/", "up", radioOFF)
    end
end
addEventHandler('onResourceStart', getResourceRootElement(getThisResource()), bindKeyOnStart)
Edited by Major . Mr3b
Added The Code
Link to comment

Likely caused by the line

if not (Team.isInTeam(target)) then return false end

The two options you have is to either return an empty table, or to verify the return value of getTeamPlayers when putting it as an argument to setPlayerVoiceBroadcastTo, ensuring it is indeed a table before passing it.

Link to comment
On 16/09/2022 at 01:20, Major . Mr3b said:

i am trying to create a voice mode on teams but i get this error but i don't know why can anyone help please?, thanks.

Bad 'broadcastTo' pointer @ 'setPlayerVoiceBroadcastTo'(2)

here is my code ( only server )

function getTeamPlayers(target)
    local teamTable = {}

    if not (Team.isInTeam(target)) then return false end
    for i, player in ipairs(getElementsByType("player")) do
        
        if (Team.inSameTeam(target, player)) then
            if (player ~= target) then
                if (getElementData(target, "radio")) then
                    table.insert(teamTable, player)
                end
            end
        end
    end

    return teamTable
end

setTimer(function()
    for i, player in ipairs(getElementsByType("player")) do
        setPlayerVoiceBroadcastTo(player, getTeamPlayers(player))
    end
end, 1150, 0)

function radioON(thePlayer)
    setElementData(thePlayer, "radio", true)
end

function radioOFF(thePlayer)
    setElementData(thePlayer, "radio", false)
end

function bindKeyJoin()
    bindKey(source, "/", "down", radioON)
    bindKey(source, "/", "up", radioOFF)
end
addEventHandler('onPlayerJoin', root, bindKeyJoin)

function bindKeyOnStart()
    for i, player in pairs(getElementsByType("player")) do
        bindKey(player, "/", "down", radioON)
        bindKey(player, "/", "up", radioOFF)
    end
end
addEventHandler('onResourceStart', getResourceRootElement(getThisResource()), bindKeyOnStart)
setTimer(function()
    for i, player in ipairs(getElementsByType("player")) do
		if getPlayerTeam (player) then
       		 setPlayerVoiceBroadcastTo(player, getTeamPlayers(player))
        end
    end
end, 1150, 0)

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...