GetNavigationMode

This function gets an entity's pathfinding navigation mode.

Syntax

Returns

Returns the entity navigation mode. If this is true, the entity will affect character pathfinding, otherwise the entity will be ignored when plotting paths.

Example

--Create a window
window = Window:Create()
context = Context:Create(window)
world = World:Create()

local camera = Camera:Create()
camera:SetRotation(35,0,0)
camera:Move(0,0,-5)

local light = DirectionalLight:Create()
light:SetRotation(35,35,0)

--Enable navmesh debugging
camera:SetDebugNavigationMode(true)

--Create the ground
local ground = Model:Box(10,1,10)
ground:SetPosition(0,-0.5,0)
ground:SetColor(0.0,0.25,0.0)

--Create a shape
local shape = Shape:Box(0,0,0, 0,0,0, 10,1,10)
ground:SetShape(shape)
shape:Release()

--Create a model
--This is an obstacle the player will walk around
entity = Model:Box(1,1,3)
entity:SetColor(0.0,0.0,1.0)
entity:SetPosition(0,1,0)

--Create a shape
local shape = Shape:Box(0,0,0,0,0,0,1,1,3)
entity:SetShape(shape)
shape:Release()

--Enable navigation obstacles
ground:SetNavigationMode(true)
entity:SetNavigationMode(true)

--Create a character
player = Pivot:Create()
local visiblecapsule = Model:Cylinder(16,player)
visiblecapsule:SetScale(1,2,1)
visiblecapsule:SetPosition(0,1,0)
player:SetPosition(-4,0,0)
player:SetMass(1)
player:SetPhysicsMode(Entity.CharacterPhysics)

world:BuildNavMesh()

while true do
if window:Closed() or window:KeyHit(Key.Escape) then return false end

if (player) then player:GoToPoint(4,0,0,1.4,1) end

Time:Update()
world:Update()
world:Render()

context:SetBlendMode(Blend.Alpha)
context:DrawText("NavMode: ".. tostring(entity:GetNavigationMode()),2,2)

context:Sync()
end