Remove unused ThirdMap.
Temporarily disable some sound and visual effects for testing purposes.
Modify GameMap interface to take a Rectangle representing the current
visible area (assuming an orthographic projection). This can be used for
culling and other visual effects within the map. Modify SecondMap to
only render the arena area when it comes into view, and to only render
enough of the shaft background to fill the currently-visible area of the
map (as opposed to the entire shaft from top to bottom). Shift the
texture coordinates with the visible area to mimic the appearance of a
single large background. Add a parallaxing factor for the shaft
background. In SeeteufelScreen, use the knowledge of which flight of
stairs is currently being targeted by SeeteufelFront to reduce the size
of the obstacle list used the by player and other entities. As stairs
come into view, add them to the obstacle list, and as they go below the
active area, destroy them. This greatly reduces the number of collision
checks that must be done. Reinstate the max shot count for GeminiShots,
and modify GeminiBuster to only produce a firing sound when a
non-Destroyed shot is produced. Modify projectiles and entities to cache
their hit area lists to avoid having to allocate a new array on every
call to getHitArea. Miscellaneous cleanup.