Skip to content

mission_pathfinding_util

Source: base/tealdef/mission/mission_pathfinding_util.d.tl

Notes

Path finding between entities and areas on the transport network, used by mission tasks.

MissionPathfindingUtil

record global base/tealdef/mission/mission_pathfinding_util.d.tl:3

global record MissionPathfindingUtil

Load: local mission_pathfinding_util = ug_require "::/mission/mission_pathfinding_util.tl"

Notes

Path finding on the transport network for mission checks.

Functions

getNodesForEntity(entity : Engine.Entity) : {NodeId} base/tealdef/mission/mission_pathfinding_util.d.tl:4

Call as mission_pathfinding_util.getNodesForEntity

Notes

Returns the network nodes of a station (its terminal vehicle nodes) or of an entity with a transport network; for constructions the first such subconstruction is used.

Parameter Type Description
entity Engine.Entity Station, construction or network entity.

Returns {NodeId}: Node ids (empty if none apply).

findPathEntityToEntity(entity1 : Engine.Entity, entity2 : Engine.Entity, transportModes : {api.type.enum.TransportMode}) : {{EdgeId, boolean}} base/tealdef/mission/mission_pathfinding_util.d.tl:5

Call as mission_pathfinding_util.findPathEntityToEntity

Notes

Finds a path between the network nodes of two entities.

Parameter Type Description
entity1 Engine.Entity Start entity.
entity2 Engine.Entity Goal entity.
transportModes {api.type.enum.TransportMode} Allowed transport modes; nil allows all.

Returns {{EdgeId, boolean}}: Path as a list of {edge id, direction} pairs.

Used in the base game: 4 times in 4 files

base/content/mission/mission/tutorial/tutorial_story.tl:1450

local path = mission_pathfinding_util.findPathEntityToEntity(depotEntity, stationEntity, transportModes)
base/content/mission/mission/tasks/auto_builder/electrify.tl:88
local path = mission_pathfinding_util.findPathEntityToEntity(nodePair[1], nodePair[2], {api.type["enum"].TransportMode.TRAIN})
base/content/mission/mission/tasks/build_path/build_path.tl:11
local path = mission_pathfinding_util.findPathEntityToEntity(entity1, entity2, { transportMode or api.type.enum.TransportMode.TRAIN })
mods/release/urbangames_campaign_mission_02/content/mission/mission/mission_story.tl:166
local path = mission_pathfinding_util.findPathEntityToEntity(from, to, nil)

findPathEntityToCircle(entity1 : Engine.Entity, position : api.type.Vec2f, radius : number, transportModes : {api.type.enum.TransportMode}) : {{EdgeId, boolean}} base/tealdef/mission/mission_pathfinding_util.d.tl:6

Call as mission_pathfinding_util.findPathEntityToCircle

Notes

Finds a path from the network nodes of an entity to any network node inside a circle.

Parameter Type Description
entity1 Engine.Entity Start entity.
position api.type.Vec2f Centre of the goal circle.
radius number Radius in metres.
transportModes {api.type.enum.TransportMode} Allowed transport modes; nil allows all.

Returns {{EdgeId, boolean}}: Path as a list of {edge id, direction} pairs.

Used in the base game: 2 times in 1 file

mods/release/urbangames_campaign_mission_01/content/mission/mission/mission_story.tl:142

local path1 = mission_pathfinding_util.findPathEntityToCircle(params.entity_newOrleansForest, street1, params.connectStreets_1_1_zone.radius + 5, {api.type["enu