Jump to content

How can get player count from Dimension ?


papam77

Recommended Posts

Posted

Possible. Loop through all players, check their dimension and if they are in the given dimension count them.

Owner of [HUN]Magyar Play Szerver 1.4, IP: 31.220.43.153:22003

Posted

I made this a while ago for a server:

function getAllPlayerInDimension ( dimension ) 
    local rValue = { }; 
    for i, v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getElementDimension ( v ) == dimension ) then 
            table.insert ( rValue, v ); 
        else return; end; 
    end 
    return rValue; 
end 

Posted
I made this a while ago for a server:
function getAllPlayerInDimension ( dimension ) 
    local rValue = { }; 
    for i, v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getElementDimension ( v ) == dimension ) then 
            table.insert ( rValue, v ); 
        end 
    end 
    return rValue; 
end 

fixed

Posted
I made this a while ago for a server:
function getAllPlayerInDimension ( dimension ) 
    local rValue = { }; 
    for i, v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getElementDimension ( v ) == dimension ) then 
            table.insert ( rValue, v ); 
        end 
    end 
    return rValue; 
end 

fixed

What was wrong with mine?

  • 4 years later...
Posted

Okay, but how to use this ? 

--Where is the error? 
function getAllPlayerInDimension ( dimension ) 
    local rValue = { }; 
    for i, v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getElementDimension ( v ) == dimension ) then 
            table.insert ( rValue, v ); 
        end 
    end 
    return rValue; 
end 

function SetDimensionLobby()
getAllPlayerInDimension (0)
outputChatBox ("all players in Dimension 0"..table.concat(rValue))
end 
addCommandHandler ("s",SetDimensionLobby,false)

--I want to check if Dimension 0 has a player, if true, then check Dimension 1, if true, then the next dimension, until Dimension (n) == 0 players, if dimension (n) == 0 players then setElementDimension (source , Dimension (n)), how to do this? (Sorry, I'm brasilian and my English is low level). 

 

4x4jap1xp028mryzg.jpg

  • Moderators
Posted
iprint(getAllPlayerInDimension (0))

First debug. :ph34r:

After executing the function, it returns a table which contains all players from that dimension.

Just run the code and check your debug-console.

 

Do you want to improve your Lua programming skills and make less mistakes?   Start with Lua Language Server!   🙀

 

  Useful functions  3x 

  Tutorials  4x 

 

Posted

Why is my mod setting the dimension for all players?


function joinHandler()
	fadeCamera(source, true) 
	setCameraTarget(source)
	spawnPlayer(source, 0, 0, 5)
end
addEventHandler("onPlayerLogin", getRootElement(), joinHandler)

function playerToLobby()
triggerClientEvent ( "PlayerOnLobby", root )
end 
addEventHandler ("onPlayerSpawn",getRootElement(),playerToLobby)

function getAllPlayerInDimension ( dimension ) 
    rValue = { }; 
    for i, v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getElementDimension ( v ) == dimension ) then 
            table.insert ( rValue, v ); 
        end 
    end 
    return rValue; 
end 

function SetDimensionLobby(thePlayer)
g_NPlayers = true
g_NState = 0   
	while g_NPlayers do 
    getAllPlayerInDimension (g_NState)
        if (#rValue>0) then 
		g_NState = g_NState + 1;
		outputChatBox ("O valor é maior que 0")
	    else 
	        g_NPlayers = false
			outputChatBox ("A dimension setada é: "..g_NState)
        end
	end
local s_PlayerDimension = g_NState
setElementDimension (source,s_PlayerDimension)
end
addEvent ("onCommand", true)
addEventHandler ("onCommand",getRootElement(),SetDimensionLobby)

 

4x4jap1xp028mryzg.jpg

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...