aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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: Add warning when trying to use out of bound file numberThierry Crozat
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-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 room renderingThierry Crozat
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-23SUPERNOVA: Fix initialization of timer when starting or loading gameThierry Crozat
2018-01-23SUPERNOVA: enable general dialogs in AxacussIntersection and AxacussExitStrangerke
2018-01-23SUPERNOVA: Fix bug in AxacussExitStrangerke
2018-01-23SUPERNOVA: Implement AxacussExit interaction logicStrangerke
2018-01-23SUPERNOVA: Add interaction logic for AxacussIntersectionStrangerke
2018-01-23SUPERNOVA: Fix bug in GUARD room definitionStrangerke
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: Add string for text speed dialogThierry Crozat
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: Disable loading and saving during execution of event callbacksThierry Crozat
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: Fix updating the palette brightness when the current image has no ↵Thierry Crozat
palette
2018-01-23SUPERNOVA: Fix incorrect delay for message displayThierry Crozat
The delay was not set, meaning the messages were immediately removed in some cutscenes.
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: Improve English translationThierry Crozat
2018-01-23SUPERNOVA: Add strings for supernova explosion cutsceneThierry Crozat
2018-01-23SUPERNOVA: Improve English translationThierry Crozat
2018-01-23SUPERNOVA: Improve English translationThierry Crozat
2018-01-23SUPERNOVA: Fix two incorrect German stringsThierry Crozat
2018-01-23SUPERNOVA: Fix image rendering when removing imageThierry Crozat
This is mostly used in talk animations and result in bad artefacts. The issue was a regression introduced in commit e0f6da0.
2018-01-23SUPERNOVA: Fix usage of uninitialized variablesThierry Crozat
2018-01-23SUPERNOVA: Do not run animations while a text box is displayedThierry Crozat
That is also what the original is doing, and this avoid having graphical glitches.
2018-01-23SUPERNOVA: Split English translation on two linesThierry Crozat
The string is too long to be displayed on a single line (and the original German string was already on two lines).
2018-01-23SUPERNOVA: Fix crash when displaying strings larger than the screenThierry Crozat
2018-01-23SUPERNOVA: Reduce memory usage to store sections and simplify codeThierry Crozat
Each section was store dusing the full image size. Now it only uses the section size, which should reduce considerably the amout of memory used for each image. Also when a section has one or more next section, they were all drawn on the surface for this section, but then they were drawn again on their own surface. And while this should not cause any issue, this was really unnecessary (and prevented optimizing the surface size for each section). So now this is no longer the case and the surface for a section only contains this section.
2018-01-23SUPERNOVA: Replace a class variable used in a single function by a local ↵Thierry Crozat
variable
2018-01-23SUPERNOVA: Fix graphics glitchesThierry Crozat
2018-01-23SUPERNOVA: Fix incorrect German stringThierry Crozat
2018-01-23SUPERNOVA: Improve English translationThierry Crozat
2018-01-23SUPERNOVA: Fix recursive infinite loop in door closing animation in ↵Thierry Crozat
ArsanoEntrance
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: Add missing game stringThierry Crozat
2018-01-23SUPERNOVA: Fix incorrect German stringThierry 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: Fix incorrect translationThierry Crozat
2018-01-23SUPERNOVA: Fix incorrect stringThierry Crozat
2018-01-23SUPERNOVA: Fix incorrect game text stringsThierry Crozat
2018-01-23SUPERNOVA: Update English translationThierry Crozat