- On small screens, the top two headers (with the pack + level names)
are now removed; instead the pack and level name are shown when
starting each level, and the buttons from those headers are moved into
a pause menu.
- The options, compat, and level browser dialogs were all reworked to
fit better on narrow screens.
- The level overlay has a more consistent layout and tries harder to not
draw in the middle, where the player generally is (except that the
mobile pause menu goes there, but oh well).
- The score tally at the end of a level is now less of a small table and
more of... more numbers, I guess?
- Links to the music source and author now open in a new window to
reduce risk of accidentally clicking them and losing your progress.
- A few obituaries were shortened, and several more were added.
- The game ending screen is now accessible on a touchscreen (oops).
- The pause and rewind buttons visually indicate when you're in that
mode, suggesting you can hit them again to switch to normal play.
- Touch controls are now relative to the player and only apply within
the game viewport.
- Disabled buttons look a bit less janky.
Still some work to do on this, but it's a pretty solid start.
Eliminates a number of annoying little hacks by getting rid of
`slide_mode` and instead trusting the terrain, live, like CC2 seems to
do (and Lynx definitely does).
- Players and monsters do, in fact, block each other. The helmet only
prevents death.
- Death happens during collision check, which is the entire reason items
don't save you: you're collided with first! This allows removing
several special cases.
- Spring mining is prevented almost incidentally, by virtue of collision
being checked both at decision time and movement time. It /can/
happen to actors other than the player, but seemingly not blocks.
- Some monsters, whose movement is essentially forced anyway, skip the
decision time collision check. This includes doppelgangers, which is
why they always spring mine.