aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-01-23SUPERNOVA: Removes getDOSTicks()Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Corrects GameState variable namesJoseph-Eugene Winzer
According to the naming convention class member variables need to be prefixed with an underscore. Unfortunately, I already started converting time constants when making this change so ticksToMsec() and constant changes are sprinkled over this commit.
2018-01-23SUPERNOVA: Adds ticks to msec conversion macroJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes render error on death screen fadeoutJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements turnOn()Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds ticks to msec conversion constantJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Removes TODOsJoseph-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: Adds Alt-X as exit shortcutJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Corrects variables according to naming conventionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes rerendering of the roomJoseph-Eugene Winzer
One sprite can consist of many sections that are concatenated in a linked list.
2018-01-23SUPERNOVA: Adds Audio info for rocksJoseph-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 code for remaining game logicJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds textJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adds resetProperty() for ObjectsJoseph-Eugene Winzer
resetProperty() optionally takes an ObjectType as parameter that the object gets set to. Otherwise it will be set as NULLTYPE.
2018-01-23SUPERNOVA: Adds and corrects constantsJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes codeJoseph-Eugene Winzer
kMaxSection - 1 was used in the original code to indicate if the GUI is currently shown. In this engine an explicit variable _guiEnabled is used.
2018-01-23SUPERNOVA: Replaces longjmp to 'dead'Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Substitues umlauts with their cp437 octal equivalentJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes SleepCabin::animation()Joseph-Eugene Winzer
Some of the code didn't belong into the function.
2018-01-23SUPERNOVA: Implements shock() and removes longjmps to 'dead'Joseph-Eugene Winzer
2018-01-23SUPERNOVA: cleanupJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements edit()Joseph-Eugene Winzer
As the TODO says, there are still problems with the function that can be observed when using the terminal in the sleeping chamber.
2018-01-23SUPERNOVA: Fixes parameter name for getKeyInput()Joseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements death screenJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Refactors init and destruction of GameManagerJoseph-Eugene Winzer
During the gameplay room state is overwritten and needs to be restored on restart/load. Currently the original room state is not preserved and thus needs to be destroyed and reinitialized to obtain the original state.
2018-01-23SUPERNOVA: Adds clear() to Inventory ClassJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Input handlingJoseph-Eugene Winzer
GetKeyInput/MouseInput/Input() block until the expected input happens. GetKeyInput() takes a parameter that checks if the key input is a 'printable' character, backspace, delete, return or escape. Also, the key state is now stored instead of just the ascii value of the pressed key.
2018-01-23SUPERNOVA: Adds indicator for key pressesJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Extends text renderingJoseph-Eugene Winzer
textWidth() and renderText() are overloaded for handling single uint16 characters (useful when rendering key strokes directly)
2018-01-23SUPERNOVA: Fixes object indices in room definitionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Corrects typoJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Updates NOTESJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements 'wait for input'Joseph-Eugene Winzer
Currrently the only implemented scene that uses this function is looking at the monitor in the cockpit. Depending on use cases in other scenes the function needs to be extended.
2018-01-23SUPERNOVA: Converts char game state variables to byteJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Adjusts game loop delayJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Removes shadowing of variablesJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Gets input before drawing calls;Joseph-Eugene Winzer
Before the status line would show invalid input for a frame what was especially annoying during animations, as they currently tend to block the game loop for their duration.
2018-01-23SUPERNOVA: Implements animationJoseph-Eugene Winzer
The original game's time was stored in 55ms ticks but we just run on milliseconds. setAnimationTimer() sets the ticks the currrent room's animation() function will not be called.
2018-01-23SUERNOVA: Initializes missing rooms on startupJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Rewrites animation for Cockpit and SleepCabinJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Implements showing cockpit monitorJoseph-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: Implements delay for animationsJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Refactors event loopJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Fixes typo in room definitionJoseph-Eugene Winzer
2018-01-23SUPERNOVA: Initializes clickField.next with 0Joseph-Eugene Winzer
It seems it is possible that some objects or subsequent click fields 'pointed' to by next are outside of the initialized range and are expected to be zeroed. This would explain the non-deterministic freezes I experienced.