Drives a real turn per case and compares the emitted line to the label in
data/text/battle.asm. Six of the eleven checks fail against the text as it
stood.
The tail case wraps each changed line through Chrome.wrap at the box's own
width and holds it to the two rows printMessage draws. That is the check
that caught SpikesText needing a third row, which is why Spikes is not in
this change.
Five messages in the Gen 2 battle code are written by hand rather than taken
from data/text/battle.asm, and each has drifted from what the game prints:
SuperEffectiveText lost its hyphen and its line break
NotVeryEffectiveText ended on three periods, not the
ellipsis glyph the charmap carries
BattleText_TheresNoPPLeftForThisMove dropped "There's"
PlayerHitTimesText/EnemyHitTimesText printed "Hit 3 time(s)!", showing
the parenthetical on screen; Gen 1
already prints "Hit 3 times!" via
_HitXTimesText
StartPerishText printed a sentence no cart prints
The break is \n, which is what RomExtractorGen2 decodes the cart's own $4e
into, so these read as an extracted line would. Each goes through Strings
now, which is what the rest of this file already does with its messages.
SpikesText is left alone and the reason is written down beside it: its third
row is a `cont`, and engine messages set self.message directly rather than
going through showPages, so printMessage would cut the row carrying <TARGET>.
Implemented a new deinterleave function in ImageWriter to restore row-major order for PNGs. Updated RomExtractorGen2 to utilize this function for extracting Slot Machine graphics, and added new functions for padding and writing graphics sheets. Updated the ROM manifests to include necessary symbols for Slots and Card Flip assets.
Added functions to write raw graphics assets for the Slot Machine and Card Flip games, ensuring that the necessary files are generated when the corresponding symbols are present in the ROM. Updated the manifest to include required symbols for these assets, preventing fallback to labelled cells when graphics are missing.