Commit 75f74edd

wait for the path to clear for 200 ticks before giving up navigation

Since we are only looking for static objects when plotting a path, dynamic objects may end up blocking the way. Those dynamic (as in “moving”) objects might also move away again, to account for this, wait 200 ticks and try again before giving up.

In the above video you can see how the first chair first blocks the way, so the second one waits before it tries again after 200 ticks.

Commit faa2b0c0

– do not always recalculate positions and rotations even if nothing changes
– introduce the concept of object dimensions, orientation (WiP) and isStatic

This introduces the concept of logical object dimensions. This had to be done as objects that do not happen to be chairs may have dimensions other than 1 by 1 tiles.
This also means that depending on that size they have to have some sort of offset calculated when positioning them on a field of tiles.
It also adds the notion of “static” objects which do, well, nothing except just existing and minding their own business. In other words, that means they will quit the tick function right after entering it.