M MY Multiplayer: Wiki
Lado
Tipo

calculatePathRoute

Cliente

Calcula a rota mais curta pelos nós de caminho entre dois pontos, partindo do nó mais perto de cada um. Para carros, respeita as ruas de mão única.

table, float|false calculatePathRoute(float fromX, fromY, fromZ, float toX, toY, toZ [, string type = car, bool water = false])

Parâmetros

NomeTipoDescrição
fromX, fromY, fromZfloatDe onde a rota sai.
toX, toY, toZfloatAonde a rota chega.
typestringcar para as ruas, ped para as calçadas e caminhos de pedestres.padrão car
waterbooltrue procura só nos caminhos de barco na água; false, só em terra.padrão false

Retorno

A lista de ids de nó do início ao fim e o comprimento da rota em metros. false se não há rota.

Quando os dois pontos têm o mesmo nó mais perto, a lista vem vazia e o comprimento é 0.

Exemplo

local position = getElementPosition(localPlayer)
local route, length = calculatePathRoute(position.x, position.y, position.z, 1481.0, -1740.0, 13.5)
if route then
    outputDebugString(("%d nodes, %.0f m"):format(#route, length))
end
AtençãoA busca só passa por áreas carregadas. Para uma rota longa, peça a área com requestPathNodesInArea antes.

Veja também