aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/rooms.h
AgeCommit message (Collapse)Author
2018-04-15SUPERNOVA: Implements render functionsJoseph-Eugene Winzer
Although SupernovaEngine forwards render calls to screen, it also exposed members publicly like _brightness. Therefore, a few changes were necessary in rooms and state.
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: Appends NULL terminator to stringsJoseph-Eugene Winzer
The NULL terminator is needed during parsing.
2018-01-23SUPERNOVA: Corrects header guard nameJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Replaces TICKETS with MONEYJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implement dialogs with variable textThierry Crozat
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-23SUPERNOVA: Add 2 missing translation strings, handle variable dialogs in ↵Strangerke
AxacussCorridor5
2018-01-23SUPERNOVA: Implement telomat, increase savegame versionStrangerke
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: Implement shipstart cutsceneThierry Crozat
2018-01-23SUPERNOVA: enable general dialogs in AxacussIntersection and AxacussExitStrangerke
2018-01-23SUPERNOVA: Fix bug in AxacussExitStrangerke
2018-01-23SUPERNOVA: Fix bug in GUARD room definitionStrangerke
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: Remove AxacussCorridor5::interact in order to get rid of several ↵Strangerke
GOTOs
2018-01-23SUPERNOVA: Change the signature of dialog(), fix calls, extract some more ↵Strangerke
strings
2018-01-23SUPERNOVA: Extract more dialog textsStrangerke
2018-01-23SUPERNOVA: Remove useless 2nd initialization of _shown to falseStrangerke
2018-01-23SUPERNOVA: Change _shown to an array of bytes in order to handle extra ↵Strangerke
values used by dialogs, fix ArsanoMeetup2::onEntrance by using a shown variable
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 intro cutscene strings to engine data fileThierry Crozat
2018-01-23SUPERNOVA: Move object name and description strings to engine data fileThierry Crozat
2018-01-23SUPERNOVA: Adds Outro initializationJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Assigns room id of ShipOuterSpaceJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds Intro before starting roomJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements de-/serializationJoseph-Eugene Winzer
WIP. It is currently broken.
2018-01-23SUPERNOVA: Adds room id to objectsJoseph-Eugene Winzer
This commit helps especially during serialization of the inventory to determine which room the object belongs to.
2018-01-23SUPERNOVA: Adds RoomID to RoomsJoseph-Eugene Winzer
GameManager::airless() determined if the space suit could be taken off by comparing the current room pointer to the allocated room objects. This led to indeterministic behavior as sometimes airless() would falsely return true as the dynamic allocation of the Room objects cannot be expected to be in a certain order. Implementing the corresponing RoomID to a Room objects solves this problem.
2018-01-23SUPERNOVA: Fixes umlaut in object descriptionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Substitutes static variables with privatesJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Removes redundant codeJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Renames ObjectID 'SLOT'Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Converts special charactersJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes terminal in sleeping chamberJoseph-Eugene Winzer
Instead of manipulating C-Strings edit() now takes a Common::String as a parameter and the terminal input gets redrawn after every keystroke what simplifies the function greatly.
2018-01-23SUPERNOVA: Corrects variables according to naming conventionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements the remaining room definitionsJoseph-Eugene Winzer
While it compiles, it is still WIP. Also there has been some confusion about the numbering of the AxacussCorridor classes among other things that need to be done.
2018-01-23SUPERNOVA: Adds and corrects constantsJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes object indices in room definitionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes visibility of room constructorsJoseph-Eugene Winzer
Signed-off-by: Joseph-Eugene Winzer <m999@openmailbox.org>
2018-01-23SUPERNOVA: Corrects exit direction of sleeping cabinJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds definitions for remaining roomsJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes typo in room definitionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Corrects OPEN to more descriptive OPENABLEJoseph-Eugene Winzer
2018-01-22SUPERNOVA: Fixes typo in definition of objectsJoseph-Eugene Winzer
2018-01-22SUPERNOVA: Fixes bathroom location on minimapJoseph-Eugene Winzer
2018-01-22SUPERNOVA: Implements GUI routines and refactors codeJoseph-Eugene Winzer
Of course the short description does not adequately describe the changes made with this commit and I assume this won't be the last big restructuring unfortunately. Focus of this commit was to implement/fix the code so the main user interface can be rendered. Bugs in the core routines for rendering Messages and Images were fixed as well.
2018-01-22SUPERNOVA: ReformattingJoseph-Eugene Winzer
Substitute size_t with ScummVM defined uint type
2018-01-22SUPERNOVA: Adds missing copyright notesJoseph-Eugene Winzer
2018-01-22SUPERNOVA: Extends Rooms for setting section visibilityJoseph-Eugene Winzer