Block cannot be moved sometimes if overlapping a custom entity
Created by: christopho
If a block is exactly on a 16x16 custom entity that does nothing and is not an obstacle, sometimes the hero cannot move the block. The bug does not happen all the time.
This is caused by functions like Map::test_collision_with_detectors() that do not sort the results of the quadtree. The hero is facing both entities at the same time, so the chosen one is random depending on pointer values.
To avoid any performance problem and have safer code, maybe we could keep the quadtree always sorted by providing the appropriate comparator to its sets.