We can't distribute the original music, but adding support for it in
as a compile-time option will enable modding the game to look and
feel like the original without having to edit the source code.
There was a period of time just after the defeat of Kline that the
game wasn't responding to input, causing the OS to panic. Corrected
this, and also made it so that resizing the window adjusts the
positioning of the credits appropriately.
Should be harmless since empty strings are ignored in
radio_getRandomMessage, but it's still supposed to be in a form
that uses \n only as necessary; the trailing newline was a mistake.
This makes mines much less frequent and spreads the asteroids out
much more. The other super-easy mode nerfs don't work on Mars, so
these custom nerfs are necessary to keep the difficulty consistent.
This is something I've been thinking of doing for awhile. The
automatic leaving can be frustrating if you were trying to collect
the money dropped by the enemy and you're suddenly forced out of
the mission. This prevents that by simply waiting to do the exit
sequence until no worthwhile collectables are left in the area.
Ellesh and Mars are excluded since this won't really work in those
areas. Also excluded by Classic and Nightmare difficulties.
I reduced the chance of smoke happening a given frame from 1/5 to 1/10,
and removed the check that stopped adding the "engine" effect to the
player if low on shield, so it now shows both when damaged.
At first I just went in to fix some places that were missing gettext
translations, but on the way as I was doing that, I noticed some
places where ngettext should be used, a bug in the fallback legacy
text rendering, and some things that could be structured better in
the Autoconf / Automake setup. Fixed those.
No, really, just added the whole thing. This took literally the
entire day. I'm soooo glad it's working now!
Also includes tons of other small fixes I didn't bother to keep
track of.
The fix is simpl to make blitTextInPlace center text to the
screen rather than the text creation doing it. That way you don't
get weird behavior with screen_blitText (which already handles centering).
The old one still remains while I adapt the code to the new one.
This is simply a decoupling of the absolute position of text from
the creation of the text, to better facilitate position adaptation
to changes in screen size. Position indicated at creation remains
only for relative position (for use by e.g. credits and status lines).
This way preserves checks for Classic difficulty within (where
auto-camera-centering is implemented) so that if the edge behavior
ever changes again, it won't have unintended side-effects. The
conditional is also inverted to make it easier to read.
At some point I replaced the "Target" text with "Sid", "Phoebe", and
"Kline" for those respective characters. Classic difficulty now always
uses the word "Target" once again.