aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/state.cpp
AgeCommit message (Collapse)Author
2018-01-23SUPERNOVA: Remove outdated comment and warningThierry Crozat
2018-01-23SUPERNOVA: Silence warning about unhandled switch casesThierry Crozat
2018-01-23SUPERNOVA: Small cleanupsStrangerke
2018-01-23SUPERNOVA; Move some strings to game text file,Strangerke
2018-01-23SUPERNOVA: Implement telomat, increase savegame versionStrangerke
2018-01-23SUPERNOVA: Consume click event when hiding messageThierry Crozat
2018-01-23SUPERNOVA: Implement searchStartEvent, fix bug in corridor initializationStrangerke
2018-01-23SUPERNOVA: Implement guardWalkEventStrangerke
2018-01-23SUPERNOVA: Fix timing of search eventsThierry Crozat
2018-01-23SUPERNOVA: Make sure to exit bathroom to the same room from which it was enteredThierry Crozat
2018-01-23SUPERNOVA: Fix handling of room brightnessThierry Crozat
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-23SUPERNOVA: Move 2 strings to the DAT fileStrangerke
2018-01-23SUPERNOVA: Load images on demandThierry Crozat
2018-01-23SUPERNOVA: Fix several issues with savegamesThierry Crozat
2018-01-23SUPERNOVA: Implement autosave used for dream sequenceThierry Crozat
2018-01-23SUPERNOVA: Implement guardNoticed()Strangerke
2018-01-23SUPERNOVA: Use setCurrentImage instead of passing the image to renderImageThierry Crozat
This is more similar to what the original code does and allows to retire the renderImage variant that takes an image.
2018-01-23SUPERNOVA: Fix logic in rendering codeThierry Crozat
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-23SUPERNOVA: Implement shipstart cutsceneThierry Crozat
2018-01-23SUPERNOVA: Fix initialization of timer when starting or loading gameThierry Crozat
2018-01-23SUPERNOVA: Implement AxacussExit interaction logicStrangerke
2018-01-23SUPERNOVA: Add interaction logic for AxacussIntersectionStrangerke
2018-01-23SUPERNOVA: Implement text speed dialogThierry Crozat
The text speed is also saved in the scummvm.ini file so that it persists between runs.
2018-01-23SUPERNOVA: Check shouldQuit to break from input loopThierry Crozat
2018-01-23SUPERNOVA: Properly handle timer stop/startThierry Crozat
2018-01-23SUPERNOVA: Display stubs, remove useless function declarationStrangerke
2018-01-23SUPERNOVA: Fix warningStrangerke
2018-01-23SUPERNOVA: Fix room brightnessThierry Crozat
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-23SUPERNOVA: Remove variables and stub functions related to overlayThierry Crozat
2018-01-23SUPERNOVA: Implement event callback mechanism and Supernova eventThierry Crozat
2018-01-23SUPERNOVA: Fix combining ObjectType enum valuesThierry Crozat
It was storing the result of bitwise operation on the ObjectType enum values in a ObjectType variable. But that was incorrect as the result was not a value from the enum. Also removing a property was actually adding the property if it was not present in the value initially.
2018-01-23SUPERNOVA: Fix usage of uninitialized variablesThierry Crozat
2018-01-23SUPERNOVA: Fix graphics glitchesThierry Crozat
2018-01-23SUPERNOVA: Handle events during dialogsThierry Crozat
2018-01-23SUPERNOVA: Cleanup dialog codeThierry Crozat
The main change consists in using a separate byte array for the sentence removal flags, move some functions from the GameManager to the Room class, and add a few additional functions to manipulate this new array. This allows to clarify some code related to dialogs. This change also allows to switch the _shown array back to a bool array.
2018-01-23SUPERNOVA: Implement most dialog related functionsThierry Crozat
2018-01-23SUPERNOVA: Fix screen shakeThierry Crozat
OSystem::setShakePos(int) can only take positive offset (as documented). Passing a negative offset caused memory issues in the drawing code and some random crashes.
2018-01-23SUPERNOVA: Finish the string extraction in state.cppStrangerke
2018-01-23SUPERNOVA: Extract some strings from state.cppStrangerke
2018-01-23SUPERNOVA: Change the signature of dialog(), fix calls, extract some more ↵Strangerke
strings
2018-01-23SUPERNOVA: Extract ArsanoRoger textsStrangerke
2018-01-23SUPERNOVA: Extract more dialog textsStrangerke
2018-01-23SUPERNOVA: Extract strings for ShibCabinL3 & R3 and for ShipAirlockStrangerke
2018-01-23SUPERNOVA: Improve interactivity of title screen and intro cutsceneThierry Crozat
We can now press the mouse button to leave the title screen instead of having to press a key. Since the mouse cursor was visible, not being able to press the mouse button was strange. Especially as it was possible to use the mouse button earlier in the title screen. Also we can now use the mouse button or any key other than escape during the cutscene to move to the next sentence. And the code is more reactive to pressing the Escape key (we don't need to wait for the current annimation to finish) to exit the cutscene.
2018-01-23SUPERNOVA: Move object name and description strings to engine data fileThierry Crozat
2018-01-23SUPERNOVA: Start using strings from the engine data fileThierry Crozat
This means that now all that remains to be done to play in English is to move all the strings to the engine data file and to translate them.
2018-01-23SUPERNOVA: Clean indentationsThierry Crozat
2018-01-23SUPERNOVA: Fix compilation using MSVC9, silent some CppCheck warningsStrangerke
2018-01-23SUPERNOVA: Fix GCC Signed vs. Unsigned Comparison Warnings.D G Turner
2018-01-23SUPERNOVA: Fix GCC Unused Variable Warnings.D G Turner