I'm excited about this upgrade. In ML1, only the current level's map is available, but for my next game, I can support viewing the map for any level. It even updates remote maps on state changes (like a switch opening a gate).
Previously, the automap populated itself directly from level geometry, so to make this possible, I refactored the necessary data into a new class. Once a level's map data is initialized, the map can be loaded from memory independently of the level.

