16 Commits

Author SHA1 Message Date
Kaloyan Chehlarski
6f6625e3a2 NANCY: Add support for nancy5 Russian fonts
The Russian translations of nancy5 and up (except for
nancy6) switched to a Windows-1251 encoding for their
strings, and changed up the format of the FONT chunks.
2023-11-05 13:21:13 +02:00
Kaloyan Chehlarski
58e89ed1a9 NANCY: Make sure text color changes in correct positions
Fixed (hopefully) all issues with color changes in text being
in incorrect positions. The new algorithm ignores all
whitespace characters when counting how much has been
drawn on screen, as they, combined with word wrapping,
were the source of the miscounting.
2023-09-22 13:37:27 +03:00
Kaloyan Chehlarski
547cc34efe NANCY: Fix Coverity issues 2023-09-19 17:40:49 +03:00
Kaloyan Chehlarski
3bbd8e6bb5 NANCY: Improve TBOX and FONT chunk reading
Fixed some incorrect assumptions about the data found
inside TBOX and FONT boot chunks. Made relevant changes
to HypertextParser to reflect the new data.
2023-09-19 17:38:24 +03:00
Kaloyan Chehlarski
722ee8c3e9 NANCY: Correctly read nancy6 FONT chunks
Added support for nancy6's font data, which now includes
some extended ASCII characters.
2023-09-16 13:14:52 +03:00
Kaloyan Chehlarski
f25b6e42a7 NANCY: Implement original load/save menu 2023-08-28 19:53:33 +03:00
Eugene Sandulenko
f94464ecb1
NANCY: JANITORIAL: Remove trailing spaces 2023-08-07 10:47:50 +02:00
Kaloyan Chehlarski
3749b21f18 NANCY: Formatting fixes
Changed spaces to tabs, fixed some double spaces and cleaned up
trailing whitespaces.
2023-03-07 21:19:24 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Kaloyan Chehlarski
6abc61edf7 NANCY: Render text in The Vampire Diaries
Text in TVD is now rendered in the textbox, and should be
pixel-accurate to the original engine.
2021-04-29 15:59:00 +03:00
fracturehill
54d6de7b57 NANCY: Make text rendering pixel-perfect
Made changes to the Textbox and Font classes so the text rendering in nancy1 looks exactly the same as it does in the original engine.
2021-04-17 15:09:18 +03:00
fracturehill
ff078328bc NANCY: Includes cleanup
Cleaned up the engine's #includes. Also moved the NancyEngine::GameState enum to commontypes.h and renamed it to NancyState.
2021-03-26 01:17:07 +02:00
fracturehill
0d8d31ffd0 NANCY: Formatting fixes
Added spaces after the = operator in every declaration of a pure virtual or defaulted function.
2021-03-24 17:20:46 +01:00
fracturehill
e9adea4c4e NANCY: Formatting fixes
Almost every file in the engine code was using spaces instead of tabs, which is now fixed. Also added some missing spaces in a couple of files.
2021-03-24 17:20:46 +01:00
fracturehill
20f432f8d3 NANCY: Engine refactor
Made all states (Scene, Credits, Help, etc.) singletons, as well as subclasses of a common State parent with a proper state switching API. Moved the OnPause virtual function from RenderObject to ActionRecord and hooked it into the state switching code. Also got rid of the NancyEngine pointer that got passed around between most classes, and replaced it with several convenience macros. As a result of these changes action records that render to the viewport no longer disappear after opening the menu, and state changes feel snappier.
2021-03-24 17:20:46 +01:00
fracturehill
3aaf2a9bea NANCY: Major engine rewrite
Rewrote most of the engine using a much more object-oriented approach and using more of ScummVM's common classes. This design deviates quite a lot from the original engine's, but should be more maintainable and extensible in the future.
2021-03-24 17:20:46 +01:00