Vector:WithinAABox
Description
Arguments
Returns
Example
Checks if player is within a certain area on the map.
-- Position to test, we get the position of first player on the server
local testPos = Entity( 1 ):GetPos()
-- Positions to test, in this case we test if the player is in spawn area of gm_construct
local pos1 = Vector( 1119, 895, 63 )
local pos2 = Vector( 656, -896, -144 )
-- This will return true if the player is within the tested area
print( testPos:WithinAABox( pos1, pos2 ) )
Example
Implement a function to check if world position is inside an entity by converting it to local coordinates that are always axis aligned. Do not check when entity is invalid.
local function IsInside( pos, ent )
if ( not IsValid( ent ) ) then return false end
local vmin = ent:OBBMins()
local vmax = ent:OBBMaxs()
local vpos = ent:WorldToLocal( pos )
return vpos:WithinAABox( vmax, vmin )
end
print( IsInside( trace.HitPos, trace.Entity ) ) -- Trace hit position a part of the entity