brean/python-pathfinding

Add elevators/ladders, steps and portals

Opened this issue · 2 comments

brean commented

Implement and describe ways to go from one grid to another, e.g. for different level of a building:

  • elevators or ladders are going from one node on one grid to another node in another grid on the same position,
  • steps are similar to ladders but can be connected to other nodes on the second grid
  • portals are the same as steps or elevators but without a cost.

Also add a markdown-page with a description describing the problem and how to use it.

For the implementation you need to extend the Node to have a list of connecting nodes in other grids. Then you need to inherit the Grid class and extend the check_neighbors function to look for those connections after all other neighbors are checked. Because for the algorithm the path isn't stored as a grid but as a graph where all neighboring cells are seen as edges so you just need another edge in the other grid.

brean commented

First iteration here: 1278ff8, we maybe also want to add a way to create new portals from a grid-like data structure

brean commented

...also add more examples, also visual ones (multiple level in https://github.com/brean/svelte-pyscript-pathfinding )