Strangerke
45595b9683
SUPERNOVA: enable general dialogs in AxacussIntersection and AxacussExit
2018-01-23 02:15:40 +00:00
Strangerke
d189820ce3
SUPERNOVA: Implement AxacussExit interaction logic
2018-01-23 02:15:39 +00:00
Strangerke
d1d1d988b0
SUPERNOVA: Add interaction logic for AxacussIntersection
2018-01-23 02:15:39 +00:00
Thierry Crozat
70e8f36a55
SUPERNOVA: Remove variables and stub functions related to overlay
2018-01-23 02:15:38 +00:00
Thierry Crozat
8a8a0b9d38
SUPERNOVA: Implement event callback mechanism and Supernova event
2018-01-23 02:15:38 +00:00
Thierry Crozat
7c40e38d7c
SUPERNOVA: Fix recursive infinite loop in door closing animation in ArsanoEntrance
2018-01-23 02:15:37 +00:00
Thierry Crozat
bd6cdf4ba2
SUPERNOVA: Handle events during dialogs
2018-01-23 02:15:37 +00:00
Thierry Crozat
7bf803f6e6
SUPERNOVA: Cleanup dialog code
...
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-23 02:15:37 +00:00
Thierry Crozat
21899d8716
SUPERNOVA: Implement most dialog related functions
2018-01-23 02:15:37 +00:00
Strangerke
c4ee3e72b7
SUPERNOVA: Extract some more stings from rooms.cpp
2018-01-23 02:15:35 +00:00
Strangerke
e0dde7865b
SUPERNOVA: Remove AxacussCorridor5::interact in order to get rid of several GOTOs
2018-01-23 02:15:35 +00:00
Strangerke
f213ea8e0a
SUPERNOVA: extract strings for Axacuss Corridor 5
2018-01-23 02:15:35 +00:00
Thierry Crozat
9db84783be
SUPERNOVA: Merge two strings to help with translation
2018-01-23 02:15:35 +00:00
Strangerke
4d7d802333
SUPERNOVA: Change the signature of dialog(), fix calls, extract some more strings
2018-01-23 02:15:35 +00:00
Strangerke
7cfe38501c
SUPERNOVA: Extract ArsanoGlider, ArsanoMeetup 2 & 3 and AxacussCell strings
2018-01-23 02:15:35 +00:00
Strangerke
56f9328e90
SUPERNOVA: Extract ArsanoRoger texts
2018-01-23 02:15:35 +00:00
Strangerke
609856d36a
SUPERNOVA: Fix a remaining kStringDialogSeparator
2018-01-23 02:15:35 +00:00
Strangerke
ed9d92407e
SUPERNOVA: Extract more dialog texts
2018-01-23 02:15:35 +00:00
Strangerke
38fbda9189
SUPERNOVA: Extract strings used in ShipHold and operations related to the cable
2018-01-23 02:15:35 +00:00
Strangerke
cb12a88fc5
SUPERNOVA: Extract strings for ShibCabinL3 & R3 and for ShipAirlock
2018-01-23 02:15:35 +00:00
Thierry Crozat
a141438e60
SUPERNOVA: Fix check of dialog status in ArsanoRoger onEntrance
2018-01-23 02:15:34 +00:00
Thierry Crozat
c290e144db
SUPERNOVA: Simplify a bit the code
2018-01-23 02:15:34 +00:00
Strangerke
572f205e67
SUPERNOVA: Extract the strings from ShipCockpit
2018-01-23 02:15:34 +00:00
Strangerke
f23baf902f
SUPERNOVA: Extract strings for Ship Hall and Ship Sleep Cabin
2018-01-23 02:15:34 +00:00
Strangerke
31a0496091
SUPERNOVA: Janitorial - Fix some spacing in rooms.cpp
2018-01-23 02:15:34 +00:00
Strangerke
9bf0a656a6
SUPERNOVA: Change _shown to an array of bytes in order to handle extra values used by dialogs, fix ArsanoMeetup2::onEntrance by using a shown variable
2018-01-23 02:15:34 +00:00
Thierry Crozat
c3241c7c42
SUPERNOVA: Improve translated title display
...
The title is displayed on three lines aligned on their center,
but the code provides the left coordinate for each line so we
need to compute it based on the translated line length.
2018-01-23 02:15:34 +00:00
Thierry Crozat
69d7b91965
SUPERNOVA: Improve interactivity of title screen and intro cutscene
...
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-23 02:15:33 +00:00
Thierry Crozat
095679c4f2
SUPERNOVA: Move intro cutscene strings to engine data file
2018-01-23 02:15:33 +00:00
Thierry Crozat
7722fe99cd
SUPERNOVA: Move object name and description strings to engine data file
2018-01-23 02:15:33 +00:00
Thierry Crozat
6fc0659222
SUPERNOVA: Start using strings from the engine data file
...
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-23 02:15:33 +00:00
Thierry Crozat
d1bdfd2bde
SUPERNOVA: Clean indentations
2018-01-23 02:15:32 +00:00
Strangerke
4c9fc3cdbc
SUPERNOVA: Fix compilation using MSVC9, silent some CppCheck warnings
2018-01-23 02:15:32 +00:00
Thierry Crozat
275daa81c3
SUPERNOVA: Disable loading during intro cutscene
...
Loading during the intro is not currently working and is not
trivial to implement. So disable it for now.
2018-01-23 02:15:32 +00:00
Joseph-Eugene Winzer
945dc9f46f
SUPERNOVA: Fixes rendering and logic for cable
2018-01-23 02:15:31 +00:00
Joseph-Eugene Winzer
02290c32b6
SUPERNOVA: Allows saving by default
...
When saving is not apropriate, for example during cutscenes, explicitly
disable it.
2018-01-23 02:15:30 +00:00
Joseph-Eugene Winzer
142e1743ce
SUPERNOVA: Fixes playing vinyl in CabinL3
2018-01-23 02:15:25 +00:00
Joseph-Eugene Winzer
23f57ca83f
SUPERNOVA: Fixes de-/serialization of game state
2018-01-23 02:14:56 +00:00
Joseph-Eugene Winzer
7ed2dea5e0
SUPERNOVA: Adds Intro before starting room
2018-01-23 02:01:00 +00:00
Joseph-Eugene Winzer
82efa9dd65
SUPERNOVA: Simplifies timing code
...
Removing remnants of the original code like _timeAlarmSystem.
2018-01-23 02:00:51 +00:00
Joseph-Eugene Winzer
3f68cda2d7
SUPERNOVA: Implements de-/serialization
...
WIP. It is currently broken.
2018-01-23 01:53:31 +00:00
Joseph-Eugene Winzer
edef2792da
SUPERNOVA: Adds RoomID to Rooms
...
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-23 01:52:59 +00:00
Joseph-Eugene Winzer
b948a53f2f
SUPERNOVA: Substitutes static variables with privates
2018-01-23 01:47:02 +00:00
Joseph-Eugene Winzer
3284fbc657
SUPERNOVA: Fixes cockpit display
...
Cruising speed and distance were inaccurate.
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
ccbc1142e1
SUPERNOVA: Refactoring
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
c95efb1e3e
SUPERNOVA: Refactoring
...
Renaming variables of GameState to avoid ambiguity.
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
316aeeabd5
SUPERNOVA: Converts Object name and description to Strings
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
026bd79a6d
SUPERNOVA: Removes redundant code
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
2c0518e0ba
SUPERNOVA: Removes redundant loops around edit()
2018-01-23 01:47:01 +00:00
Joseph-Eugene Winzer
cec70a4cb4
SUPERNOVA: Renames ObjectID 'SLOT'
2018-01-23 01:46:53 +00:00