287 Commits

Author SHA1 Message Date
Orgad Shaneh
3a51911db2 NANCY: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Orgad Shaneh
c1343e8051 NANCY: Use override
Using clang-tidy modernize-use-override
2021-11-14 14:34:14 +02:00
Orgad Shaneh
ee57380de7 ENGINES: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:32:04 +02:00
Orgad Shaneh
78ef6203de ENGINES: Fix getSavegameFile for almost all engines
Use kSimpleSavesNames correctly, add where needed, remove where needed.

Trac #12977
2021-11-10 21:49:48 +00:00
Eugene Sandulenko
a9267184f4
ENGINES: Drop cxx11 feature dependency. Now it is always preent 2021-10-31 11:46:26 +02:00
Cameron Cawley
2f99746d8d ENGINES: Allow implementing registerDefaultSettings in the MetaEngine class 2021-09-18 11:57:29 +02:00
Cameron Cawley
39b04a1617 NANCY: Remove dead code 2021-09-18 11:57:29 +02:00
Cameron Cawley
644e7354f5 CREDITS: Update credits 2021-08-22 22:25:33 +03:00
Paul Gilbert
baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Eugene Sandulenko
57517dbe21
NANCY: Fix MSVC warning 2021-07-01 01:35:58 +02:00
sluicebox
8e1d90f8e4 ALL: Remove clearAllDebugChannels() from Engine dtors 2021-06-14 12:42:38 -05:00
Le Philousophe
42e45f6769 NANCY: Move debug channels in detection.h to avoid pulling whole nancy.h
This one includes C++11 constructs which are not accepted by older
compilers
2021-05-22 13:42:55 +02:00
ysj1173886760
04d03fe7f0 NANCY: move debug channels to metaEngineDetection 2021-05-22 01:34:57 +02:00
Kaloyan Chehlarski
1079fac665 NANCY: Correctly read The Message in a Haunted Mansion boot summary
Nancy 3's BSUM chunk is now read correctly, although the game still
crashes at launch due to other issues.
2021-05-18 00:44:20 +03:00
Kaloyan Chehlarski
a921e495bf NANCY: Make Nancy Drew: Stay Tuned for Danger bootable
Nancy2's BSUM chunk is now read correctly and the game boots
without crashing.
2021-05-18 00:44:20 +03:00
Kaloyan Chehlarski
8760d9b54c NANCY: Better fix for broken text lines in The Vampire Diaries
The check for broken text lines has been improved and now fixes at least one more bad string in The Vampire Diaries.
2021-05-18 00:44:19 +03:00
Kaloyan Chehlarski
4d07619a3a NANCY: Add compressed nancy1 variant and improve detection
Added a compressed variant of the Russian translation of Nancy Drew:
Secrets Can Kill. Added a flag to mark compressed game variants and
only load archives when playing one. Removed the 8-bit colors flag.
2021-05-18 00:44:19 +03:00
Kaloyan Chehlarski
a82210b2db NANCY: Correctly load first scene in The Vampire Diaries
readBootSummary() now correctly extracts the first scene data and
the beginning player time from TVD's BSUM chunk.
2021-05-18 00:44:18 +03:00
Kaloyan Chehlarski
a0600328c1 NANCY: Fix some sounds not playing when changing scene
Fixed an issue where some sounds would play and immediately get
stopped when changing the scene.
2021-05-18 00:44:18 +03:00
Kaloyan Chehlarski
0bab0e8160 NANCY: Clean up sound code 2021-05-18 00:44:18 +03:00
Kaloyan Chehlarski
515000eb5e NANCY: Silence uninitialized variable warning 2021-05-18 00:44:17 +03:00
Kaloyan Chehlarski
a8103e2eb5 COMMON: Add support for multi-file InstallShield cabinets
Added support for InstallShield v6 cabinets, which can be made up of
multiple files. The interface for creating an Archive instance now takes
the base filename (e.g. the "data" in "data1.cab") for all cabinets,
including single-file ones.

Co-Authored-By: clone2727 <236052+clone2727@users.noreply.github.com>
Co-Authored-By: Walter van Niftrik <615114+waltervn@users.noreply.github.com>
2021-05-15 23:03:19 +03:00
Kaloyan Chehlarski
742edc40ec NANCY: Add detection for Russian variant of Secrets Can Kill
Added a detection entry for the Russian translation of Nancy Drew:
Secrets Can Kill.
2021-05-07 23:09:53 +03:00
Kaloyan Chehlarski
de43aa79c1 NANCY: Disable sticky cursor in The Vampire Diaries
TVD doesn't have a sticky cursor when clicking the viewport edges,
and the feature is now disabled for that game.
2021-05-07 23:09:52 +03:00
Kaloyan Chehlarski
805d7615a0 NANCY: Show correct exit cursor
In TVD the exit cursor gets replaced when holding an item, whereas
nancy1 always shows it. This commit makes both games follow their
respective correct behavior.
2021-05-07 23:09:52 +03:00
Kaloyan Chehlarski
1876fd745a NANCY: Fix disabled input after state change
Fixed an edge case where input would stay disabled after changing the
game state, rendering the game unplayable.
2021-05-07 23:09:52 +03:00
Kaloyan Chehlarski
9ede2f3c91 NANCY: Fix single frame with wrong palette in The Vampire Diaries
Fixed an issue where the screen would render with an incorrect
palette once before switching to the correct one in TVD.
2021-05-07 23:09:52 +03:00
Kaloyan Chehlarski
913f4502a6 NANCY: Implement palette change action record types
Implemented the PaletteThisScene and PaletteNextScene action record
types, which change the viewport video's palette in TVD.
2021-05-07 23:09:52 +03:00
Kaloyan Chehlarski
7ac4cb807a NANCY: Fix PlayDigiSoundAndDie action record in The Vampire Diaries
PlayDigiSoundAndDie now loads correctly in The Vampire Diaries.
2021-05-07 23:09:51 +03:00
Kaloyan Chehlarski
3013d07e81 NANCY: Implement PlaySoundPanFrameAnchorAndDie action record
Implemented the PlaySoundPanFrameAnchorAndDie action record
type and added support for panning audio to the sound manager.
2021-05-07 23:09:51 +03:00
Orgad Shaneh
a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Kaloyan Chehlarski
3dd19a47e1 NANCY: Set correct cursor when hovering a UI element
Set the correct ID for the cursor that displays when hovering a
clickable UI element.
2021-04-29 15:59:00 +03: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
Kaloyan Chehlarski
6efcbebef5 NANCY: Fix primary video in The Vampire Diaries
Primary videos in The Vampire Diaries now load and display correctly.
2021-04-29 15:58:59 +03:00
Kaloyan Chehlarski
4b48535395 NANCY: Add support for DiamondWare v1.1 sound files
Bumped up the supported version of DWD files to 1.1 so a couple of
special cases in The Vampire Diaries can play.
2021-04-29 15:58:59 +03:00
Kaloyan Chehlarski
46e7231628 NANCY: Implement non-wrapping scenes
Implemented scenes that don't wrap around when they go beyond
the first/last frame of the video.
2021-04-29 15:58:59 +03:00
Kaloyan Chehlarski
b87f98602e NANCY: Correct logo skip timing in The Vampire Diaries
Added a new logoEndAfter game constant, which controls how long
the game logo will stay on screen after booting the game, and
extracted its value for The Vampire Diaries.
2021-04-28 17:02:59 +03:00
Kaloyan Chehlarski
cf43a600f5 NANCY: Implement sound in The Vampire Diaries
Unlike all later games using the engine, TVD sounds are stored in
an obscure file format (.dwd, DiamondWare Digitized). This commit adds support for uncompressed .dwd files and thus enables audio
in the game.
2021-04-28 17:02:59 +03:00
Kaloyan Chehlarski
7819ef1c17 NANCY: Fix PlaySoundMultiHS action record in The Vampire Diaries
Action record type PlaySoundMultiHS no longer crashes the game
when playing The Vampire Diaries.
2021-04-28 17:02:58 +03:00
Kaloyan Chehlarski
090b909631 NANCY: Secondary video fixes
Fixed the logic in PlaySecondaryVideo so it properly displays TVD's
character portraits.
2021-04-28 17:02:58 +03:00
Kaloyan Chehlarski
ae1016e5c2 NANCY: Set correct maximum scroll in The Vampire Diaries
The maximum scroll in TVD is now corrected by one pixel, which
fixes some issues in single-frame scenes.
2021-04-26 19:42:18 +03:00
Kaloyan Chehlarski
2a8512925a NANCY: Fix items and inventory box in The Vampire Diaries
Items now show up in TVD's inventory box, and displaying their
cursor in the viewport no longer crashes the game.
2021-04-26 19:42:18 +03:00
Kaloyan Chehlarski
954954a85a NANCY: Flip all backgrounds in The Vampire Diaries
Both format 1 and 2 backgrounds in The Vampire Diaries are
upside-down, and the Viewport code now correctly flips all
backgrounds for that game.
2021-04-26 19:42:17 +03:00
Kaloyan Chehlarski
e8a8150f8d NANCY: Fix The Vampire Diaries viewport edges and movement
The viewport edges in TVD now have the same behavior as the
original engine, and movement is now at the correct speed.
2021-04-26 19:42:17 +03:00
fracturehill
993f708dd0 NANCY: Don't adjust rects in The Vampire Diaries
readRect() no longer adds a pixel to the right and bottom for
The Vampire Diaries, since rects in that game are non-inclusive.
2021-04-25 00:04:53 +03:00
fracturehill
c86d46fcde NANCY: Fix The Vampire Diaries's cursors
Fixed the cursors in The Vampire Diaries so they display correctly.
2021-04-24 23:59:03 +03:00
fracturehill
8b8d3b38de NANCY: Fix curtains in The Vampire Diaries
Fixed the visual artifacts in the inventory box curtains in The Vampire
Diaries. Renamed the Shades class to Curtains to reflect their name in
the original engine.
2021-04-24 23:59:03 +03:00
fracturehill
90c4f0c4dc NANCY: Move hardcoded data
Moved all hardcoded engine data that changes between games (e.g. number
of items, number of event flags) to a dedicated file and added a function for
accessing it in NancyEngine.
2021-04-24 23:59:03 +03:00
fracturehill
75d9fa1abd NANCY: Accurate viewport edge sizes
The sizes of the hotspots at the edges of the viewport are now
consistent with the original engine.
2021-04-24 23:59:03 +03:00
fracturehill
5b4b78123b NANCY: Primary video fixes
Primary video now affects the mouse the same way it does in the original game: the cursor gets moved to a set location when starting a conversation, and is blocked from moving above a certain threshold. Also removed the static pointer from PlayPrimaryVideoChan0.
2021-04-17 15:21:55 +03:00