GetElementsWithinColShape: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 3: Line 3:
This function is used to retrieve a list of all elements in a colshape, of the specified type.
This function is used to retrieve a list of all elements in a colshape, of the specified type.
{{Note|
{{Note|
* For legacy reasons, a colshape created on the client does not collide with elements already existing at that location until they first move
* For legacy reasons, a colshape created on the client does not collide with elements already existing at that location until they first move.
* This function doesn't verify whether elements are in the same dimension and interior, additional checks could be implemented manually if they are needed
* This function doesn't verify whether elements are in the same dimension and interior, additional checks could be implemented manually if they are needed.
}}
}}
==Syntax==  
==Syntax==  
Line 32: Line 32:
This example retrieves a [[table]] of players inside a colshape and prints their name to the chat.
This example retrieves a [[table]] of players inside a colshape and prints their name to the chat.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
local newColShape = createColSphere( 1, 2, 3, 4 )                         -- create our new colshape
local newColShape = createColSphere (1, 2, 3, 4) -- create our new colshape
local players = getElementsWithinColShape( newColShape, "player" )         -- get all the players inside the sphere
local players = getElementsWithinColShape (newColShape, "player") -- get all the players inside the sphere
for _, thePlayer in ipairs( players ) do                                   -- use a generic for loop to step through each player
 
     outputChatBox( getPlayerName( thePlayer ) .. " is in our new sphere" ) -- print their name to the chat
for _, thePlayer in ipairs (players) do -- use a generic for loop to step through each player
     outputChatBox (getPlayerName (thePlayer).." is in our new sphere") -- print their name to the chat
end
end
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 17:10, 20 September 2021

This function is used to retrieve a list of all elements in a colshape, of the specified type.

[[{{{image}}}|link=|]] Note:
  • For legacy reasons, a colshape created on the client does not collide with elements already existing at that location until they first move.
  • This function doesn't verify whether elements are in the same dimension and interior, additional checks could be implemented manually if they are needed.

Syntax

table getElementsWithinColShape ( colshape theShape [, string elemType = nil ] ) 

OOP Syntax Help! I don't understand this!

Method: colshape:getElementsWithin(...)
Variable: .elementsWithin


Required Arguments

  • theShape: The colshape you want to get the elements from.

Optional Arguments

  • elemType: The type of element you want a list of. This can be any element type, the common ones being:
    • "player": A player connected to the server
    • "ped": A ped
    • "vehicle": A vehicle
    • "object": An object
    • "pickup": A pickup
    • "marker": A marker

Returns

Returns a table containing all the elements inside the colshape, of the specified type. Returns an empty table if there are no elements inside. Returns false if the colshape is invalid.

Example

This example retrieves a table of players inside a colshape and prints their name to the chat.

local newColShape = createColSphere (1, 2, 3, 4) -- create our new colshape
local players = getElementsWithinColShape (newColShape, "player") -- get all the players inside the sphere

for _, thePlayer in ipairs (players) do -- use a generic for loop to step through each player
    outputChatBox (getPlayerName (thePlayer).." is in our new sphere") -- print their name to the chat
end

Changelog

Version Description
1.5.5-3.12286 Added elementsWithin OOP variable

See Also