Commit Graph

83860 Commits

Author SHA1 Message Date
Thierry Crozat
75e3568f06 SUPERNOVA: Implement dialogs with variable text
This was partially implemented but not finished. However I reverted
the changes already done to support that in order to use a different
approach.
2018-01-23 02:15:42 +00:00
Strangerke
ef90759e92 SUPERNOVA: Some cleanup, simplify some code 2018-01-23 02:15:42 +00:00
Thierry Crozat
1b2e4f926c SUPERNOVA: Implement alarm 2018-01-23 02:15:42 +00:00
Thierry Crozat
0c5f02959f SUPERNOVA: Remove outdated comment and warning 2018-01-23 02:15:42 +00:00
Thierry Crozat
5f0709d66f SUPERNOVA: Silence warning about unhandled switch cases 2018-01-23 02:15:42 +00:00
Thierry Crozat
b207fdf54d SUPERNOVA: Complete implementation of walking through the Jungle 2018-01-23 02:15:42 +00:00
Thierry Crozat
967efacae1 SUPERNOVA: Remove leftover function declaration 2018-01-23 02:15:42 +00:00
Strangerke
2e95c690d0 SUPERNOVA: Add 2 missing translation strings, handle variable dialogs in AxacussCorridor5 2018-01-23 02:15:42 +00:00
Strangerke
b4d7a83c75 SUPERNOVA: Small cleanups 2018-01-23 02:15:42 +00:00
Thierry Crozat
8efc3a15c1 SUPERNOVA: Replace non-ASCII characters with actal values 2018-01-23 02:15:42 +00:00
Strangerke
13319458dc SUPERNOVA; Move some strings to game text file, 2018-01-23 02:15:42 +00:00
Strangerke
4810d514fe SUPERNOVA: Implement telomat, increase savegame version 2018-01-23 02:15:41 +00:00
Thierry Crozat
626e93e6f8 SUPERNOVA: Consume click event when hiding message 2018-01-23 02:15:41 +00:00
Strangerke
37706ade78 SUPERNOVA: Implement searchStartEvent, fix bug in corridor initialization 2018-01-23 02:15:41 +00:00
Strangerke
e2b85ab741 SUPERNOVA: Update savegame version 2018-01-23 02:15:41 +00:00
Strangerke
cccdcf9c26 SUPERNOVA: Implement guardWalkEvent 2018-01-23 02:15:41 +00:00
Thierry Crozat
4014f4efae SUPERNOVA: Fix timing of search events 2018-01-23 02:15:41 +00:00
Thierry Crozat
312f33af3a SUPERNOVA: Fix missing message when waking up from dream 2018-01-23 02:15:41 +00:00
Thierry Crozat
deb6168ed1 SUPERNOVA: Make sure to exit bathroom to the same room from which it was entered 2018-01-23 02:15:41 +00:00
Thierry Crozat
55fc09571f SUPERNOVA: Fix handling of room brightness
There were several issues with the brighness due to the different
implementation between the original and the code in scummvm. The
code has now been modified to be much closer to the original, which
fixed those issues and allowed to remove workarounds that had been
added in various places to deal with those issues (but those
workarounds had their own issues such as fade in happening too
soon before switching to the new room).
2018-01-23 02:15:41 +00:00
Strangerke
1ff953b815 SUPERNOVA: Move 2 strings to the DAT file 2018-01-23 02:15:41 +00:00
Thierry Crozat
177539ba2e SUPERNOVA: Load images on demand 2018-01-23 02:15:41 +00:00
Strangerke
cbfa0a0640 SUPERNOVA: Fix some TODOs 2018-01-23 02:15:41 +00:00
Thierry Crozat
87ab33a8aa SUPERNOVA: Fix several issues with savegames 2018-01-23 02:15:41 +00:00
Thierry Crozat
34658bc7d4 SUPERNOVA: Fix a german string 2018-01-23 02:15:40 +00:00
Thierry Crozat
96afb54cc6 SUPERNOVA: Fix listing saves
The code was only looking at the last two digits of the file name, and
as a result the game autosaved in slot 999 was listed in slot 99.
2018-01-23 02:15:40 +00:00
Strangerke
7d72ae0d0d SUPERNOVA: Implement errorTempSave() 2018-01-23 02:15:40 +00:00
Thierry Crozat
1759d1ffdd SUPERNOVA: Implement autosave used for dream sequence 2018-01-23 02:15:40 +00:00
Strangerke
ca1acaf5ea SUPERNOVA: Implement guardNoticed() 2018-01-23 02:15:40 +00:00
Thierry Crozat
888930660a SUPERNOVA: Use setCurrentImage instead of passing the image to renderImage
This is more similar to what the original code does and allows to retire
the renderImage variant that takes an image.
2018-01-23 02:15:40 +00:00
Thierry Crozat
624425077b SUPERNOVA: Add warning when trying to use out of bound file number
This is likely happening, and a comment has also been added to
indicate this. The warning was added to help detect those issue
and so that we don't forgert about it.
2018-01-23 02:15:40 +00:00
Thierry Crozat
b11772d904 SUPERNOVA: Fix logic in rendering code
There were several issues fixed by this commit. The main ones are:
 - It was in many places only drawing the first section even for
   images that have multiple sections.
 - It was in some places using the wrong image.

The first issue has been fixed by removing the GameManager::drawImage
function, and moving its logic to SupernovaEngine::renderImage which
was initially only drawing one section, but was nevertheless called
directly from many place.

The second image required more changes to the rendering code to allow
setting the current image file when it is different from the room file.
This fixes some memory issues and random crashes in places where it was
for example trying to use the image -1. This also fixes the rendering
of the flying cutscene.
2018-01-23 02:15:40 +00:00
Thierry Crozat
ee905b762a SUPERNOVA: Implement shipstart cutscene 2018-01-23 02:15:40 +00:00
Thierry Crozat
58cfbb532b SUPERNOVA: Fix room rendering
It could initially access the wrong image to check the number
of section. The code was working fine as long as it had one
section, so there was probably no bad side effect to using
the wrong image (except if it was NULL).
2018-01-23 02:15:40 +00:00
Thierry Crozat
b39beb43fd SUPERNOVA: Fix initialization of timer when starting or loading game 2018-01-23 02:15:40 +00:00
Strangerke
45595b9683 SUPERNOVA: enable general dialogs in AxacussIntersection and AxacussExit 2018-01-23 02:15:40 +00:00
Strangerke
d8e221e206 SUPERNOVA: Fix bug in AxacussExit 2018-01-23 02:15:39 +00:00
Strangerke
d189820ce3 SUPERNOVA: Implement AxacussExit interaction logic 2018-01-23 02:15:39 +00:00
Strangerke
d1d1d988b0 SUPERNOVA: Add interaction logic for AxacussIntersection 2018-01-23 02:15:39 +00:00
Strangerke
eed616a4aa SUPERNOVA: Fix bug in GUARD room definition 2018-01-23 02:15:39 +00:00
Thierry Crozat
7eb5924f65 SUPERNOVA: Implement text speed dialog
The text speed is also saved in the scummvm.ini file so that
it persists between runs.
2018-01-23 02:15:39 +00:00
Thierry Crozat
1566b6cadc SUPERNOVA: Add string for text speed dialog 2018-01-23 02:15:39 +00:00
Thierry Crozat
965b4ca3de SUPERNOVA: Check shouldQuit to break from input loop 2018-01-23 02:15:39 +00:00
Thierry Crozat
529a9c9811 SUPERNOVA: Properly handle timer stop/start 2018-01-23 02:15:39 +00:00
Strangerke
897a1e93a1 SUPERNOVA: Display stubs, remove useless function declaration 2018-01-23 02:15:39 +00:00
Strangerke
d3eb662fe2 SUPERNOVA: Fix warning 2018-01-23 02:15:39 +00:00
Thierry Crozat
b527b54c6f SUPERNOVA: Disable loading and saving during execution of event callbacks 2018-01-23 02:15:39 +00:00
Thierry Crozat
f40a534737 SUPERNOVA: Fix room brightness
The incorrect implementation meant than for example when leaving
the cave the room could stay black.

Note that the implementation is still approximative for the HOLD
and LANDINGMODULE rooms.
2018-01-23 02:15:39 +00:00
Thierry Crozat
70e8f36a55 SUPERNOVA: Remove variables and stub functions related to overlay 2018-01-23 02:15:38 +00:00
Thierry Crozat
575aef711b SUPERNOVA: Fix updating the palette brightness when the current image has no palette 2018-01-23 02:15:38 +00:00