aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova
AgeCommit message (Collapse)Author
2018-04-07ALL: Load savegame thumbnail only when necessaryAdrian Frühwirth
This commit introduces the following changes: 1. Graphics::loadThumbnail() Now returns a boolean and takes a new argument skipThumbnail which defaults to false. In case of true, loadThumbnail() reads past the thumbnail data in the input stream instead of actually loading the thumbnail. This simplifies savegame handling where, up until now, many engines always read the whole savegame metadata (including the thumbnail) and then threw away the thumbnail when not needed (which is in almost all cases, the most common exception being MetaEngine::querySaveMetaInfos() which is responsible for loading savegame metadata for displaying it in the GUI launcher. 2. readSavegameHeader() Engines which already implement such a method (name varies) now take a new argument skipThumbnail (default: true) which is passed through to loadThumbnail(). This means that the default case for readSavegameHeader() is now _not_ loading the thumbnail from a savegame and just reading past it. In those cases, e.g. querySaveMetaInfos(), where we actually are interested in loading the thumbnail readSavegameHeader() needs to explicitely be called with skipThumbnail == false. Engines whose readSavegameHeader() (name varies) already takes an argument loadThumbnail have been adapted to have a similar prototype and semantics. I.e. readSaveHeader(in, loadThumbnail, header) now is readSaveHeader(in, header, skipThumbnail). 3. Error handling Engines which previously did not check the return value of readSavegameHeader() (name varies) now do so ensuring that possibly broken savegames (be it a broken thumbnail or something else) don't make it into the GUI launcher list in the first place.
2018-03-23JANITORIAL: Silence GCC 7 fallthrough warningAdrian Frühwirth
Confirmed intentional by Joefish.
2018-03-11SUPERNOVA: Fixes formattingJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Removes TODO for quitGameDialog()Joseph-Eugene Winzer
2018-03-11SUPERNOVA: Recenters animated text on loopJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Removes unused functionJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Substitues constant stringsJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Encapsulates GuiElementJoseph-Eugene Winzer
It simplifies the overloaded functions for renderBox/Text and saveScreen
2018-03-11SUPERNOVA: Implements original quit promptJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Fixes formattingJoseph-Eugene Winzer
Because of confusion when indentation level is raised and thus tabs or spaces should be used when aligning code, this commit switches to tabs to avoid any further confusion.
2018-03-11SUPERNOVA: Removes Console commandsJoseph-Eugene Winzer
Most of them were for debugging only anyway and commands like `giveall` actually broke parts of the game (and didn't even give you all items).
2018-03-11SUPERNOVA: Implements animated text during in/outroJoseph-Eugene Winzer
2018-03-11SUPERNOVA: Appends NULL terminator to stringsJoseph-Eugene Winzer
The NULL terminator is needed during parsing.
2018-03-11SUPERNOVA: Removes unused variableJoseph-Eugene Winzer
2018-02-23SUPERNOVA: Add strings for quit game promptThierry Crozat
2018-01-31SUPERNOVA: Mark intentional fallthrough in switchThierry Crozat
2018-01-31SUPERNOVA: Fix incorrect sanity check for debug commandThierry Crozat
This was reported by coverity (CID 1385537).
2018-01-31SUPERNOVA: Improve command button size for translationsThierry Crozat
2018-01-30SUPERNOVA: Ensure the GuiElement _text field is null terminatedThierry Crozat
This was reported by coverity (CID 1385566), and althought this was unlikely to happen, it was not impossible (due to the translations).
2018-01-30SUPERNOVA: Fix out of bound access when exiting the engine while in a dialogThierry Crozat
This was reported by coverity (CID 1385572).
2018-01-23SUPERNOVA: Fixes destruction of SoundSample bufferJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds ModeListJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Improve waiting until a sound has finished playingThierry Crozat
2018-01-23SUPERNOVA: Make _event a local variableThierry Crozat
2018-01-23SUPERNOVA: Handle RTL and Quit while editing textThierry Crozat
2018-01-23SUPERNOVA: Remove declaration for unimplemented and unused functionThierry Crozat
2018-01-23SUPERNOVA: Fix cursor not shown if escaping during the intro snoring sequenceThierry Crozat
2018-01-23SUPERNOVA: Fix missing reset of object CARRIED flag when clearing inventoryThierry Crozat
2018-01-23SUPERNOVA: Initializes RandomSource on stackJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Renames INT32_MAX to kMaxTimerValueJoseph-Eugene Winzer
Prevents collision with stdint.h INT32_MAX
2018-01-23SUPERNOVA: Corrects header guard nameJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes AudioStream leakJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Changes array to seperate variablesJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes segfault if dat file not foundJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Changes message orderJoseph-Eugene Winzer
When taking off your helmet or life support in a room without oxygen, it showed the death screen before the 'taking off helmet/life support' message.
2018-01-23SUPERNOVA: Removes global constructor callJoseph-Eugene Winzer
Object() is redundant anyway as it instantiates an Object object and copies it to nullObject, which was already default constructed.
2018-01-23SUPERNOVA: Moves strings to GameManager classJoseph-Eugene Winzer
2018-01-23SUPERONVA: Sets uninitialized values to 0Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Removes commentJoseph-Eugene Winzer
renderRoom() and later in the game loop executeRoom() does everything that is explicitly called in the original.
2018-01-23SUPERNOVA: Prevents paletteFadeIn() to be triggeredJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Reverts brightness changeJoseph-Eugene Winzer
If the brightness is 0, it is faded in at the end of the game loop. In some instances, especially cutscenes, it makes the code harder to understand as in somecases the code expects the brightness to be faded in after having it faded out, set manually to 0 or when you leave a dark room, set by roomBrightness(). Removing it now, would just lead to more confusion during the port of Supernova part 2.
2018-01-23SUPERNOVA: Hides cursor during snoring sequenceJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Aborts intro if game should be closedJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes object state updateJoseph-Eugene Winzer
In order to trigger a mouseField change in processInput(), we move the cursor to 0,0 first before restoring its original position.
2018-01-23SUPERNOVA: Pushes a mousemove to update object stateJoseph-Eugene Winzer
If you click on an exit on the map and there is again an exit on the same spot, it won't be recognized until the next mouse move/click. This change fakes a mouse move and thus updates the object state.
2018-01-23SUPERNOVA: Fixes fading in introJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Returns to launcher after outroJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Updates palette when changing room brightnessJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Renames audio constantsJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Renames audio constantsJoseph-Eugene Winzer