Home API Manuals About Forum
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

SetBadLocation

Marks a map tile as impassable for the pathfinding engine.

X — horizontal map coordinate.

Y — vertical map coordinate.

After calling this method, the pathfinder (MoveXY, MoveXYZ, GetPathArray, GetPathArray3D) will treat the specified tile as blocked and will route around it.

This is useful for marking tiles that are technically passable but contain obstacles the default pathfinder does not recognize (e.g., custom shard objects, NPC-blocked tiles, or trap locations).

Use ClearBadLocationList to clear all bad location entries.

Does nothing if the character is not connected or UO data is not loaded.

Помечает тайл карты как непроходимый для системы поиска пути.

X — горизонтальная координата карты.

Y — вертикальная координата карты.

После вызова этого метода система поиска пути (MoveXY, MoveXYZ, GetPathArray, GetPathArray3D) будет считать указанный тайл заблокированным и прокладывать маршрут в обход.

Полезно для пометки тайлов, которые технически проходимы, но содержат препятствия, не распознаваемые стандартным поиском пути (например, объекты кастомных шардов, тайлы с NPC или ловушки).

Используйте ClearBadLocationList для очистки всего списка заблокированных локаций.

Не выполняет действий, если персонаж не подключён или данные UO не загружены.

Pascal

procedure SetBadLocation(X: Word; Y: Word);

Python

def SetBadLocation(X: int, Y: int) -> None: ...

Pascal Example

begin
  // Mark a known trap tile
  SetBadLocation(1234, 5678);
  AddToSystemJournal('Marked tile (1234, 5678) as bad');

  // Now movement will avoid this tile
  MoveXY(1250, 5690, True, 1, True);
end.

Python Example

# Mark a known trap tile
SetBadLocation(1234, 5678)
AddToSystemJournal('Marked tile (1234, 5678) as bad')

# Now movement will avoid this tile
MoveXY(1250, 5690, True, 1, True)

See Also

ClearBadLocationList, SetBadObject, MoveXY, GetPathArray