# Utility Functions¶

`vindinium.utils.``dir_to_command`(dx, dy)[source]

Converts a direction to a command.

Parameters: dx (int) – direction in X axis, must be 1, 0 or -1. dy (int) – direction in Y axis, must be 1, 0 or -1. (string) a command.
Raise:
ValueError if direction is invalid.
`vindinium.utils.``command_to_dir`(command)[source]

Converts a command to a direction.

Parameters: the command. ((string)) – (tuple) a tuple (dx, dy) with the direction.
Raise:
ValueError if command is invalid.
`vindinium.utils.``path_to_command`(x0, y0, x1, y1)[source]

Converts an adjacent to a command.

Parameters: x0 (int) – initial position in X axis. y0 (int) – initial position in Y axis. x1 (int) – final position in X axis. y1 (int) – final position in Y axis. (string) a command.
Raise:
ValueError if direction is invalid.
`vindinium.utils.``distance_manhattan`(x0, y0, x1, y1)[source]

Computes the manhattan distance between two points.

Parameters: x0 (int) – initial position in X axis. y0 (int) – initial position in Y axis. x1 (int) – final position in X axis. y1 (int) – final position in Y axis. (int) the distance.
`vindinium.utils.``order_by_distance`(x, y, objects)[source]

Returns a list of objects ordered by distance from a given point.

You can use this to order mines or taverns by their distances from the hero.

Parameters: x (int) – position in X. y (int) – position in Y. objects (list) – list of objects. The objects must implement the x and y. (attributes) – (list) an ordered copy of `objects`.